Files
claude-code-action/test/network-restrictions.test.ts
km-anthropic b938e69075 test: simplify network restrictions test
- Reduce to one allowed and one blocked domain
- Remove slow google.com test
- Fix TypeScript errors with AbortController
- Match test formatting conventions

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-14 12:31:11 -07:00

45 lines
1.3 KiB
TypeScript

import { describe, test, expect } from "bun:test";
describe("Network Restrictions", () => {
test("should block access to unauthorized domains", async () => {
const url = "https://example.com/api/data";
try {
const controller = new AbortController();
const timeoutId = setTimeout(() => controller.abort(), 5000);
const response = await fetch(url, {
signal: controller.signal,
});
clearTimeout(timeoutId);
expect(response.ok).toBe(false);
throw new Error(`Unauthorized domain ${url} was not blocked by proxy`);
} catch (error) {
expect(error).toBeDefined();
console.log(`Successfully blocked: ${url}`);
}
});
test("should allow access to whitelisted domains", async () => {
const url = "https://api.github.com/zen";
try {
const controller = new AbortController();
const timeoutId = setTimeout(() => controller.abort(), 5000);
const response = await fetch(url, {
signal: controller.signal,
});
clearTimeout(timeoutId);
expect(response.ok).toBe(true);
console.log(`Successfully allowed: ${url}`);
} catch (error: any) {
throw new Error(
`Whitelisted domain ${url} was blocked: ${error.message}`,
);
}
});
});