Files
create-github-app-token/tests/post-proxy-already-enabled.test.js
Parker Brown e715b04a11 feat: add proxy support via child process spawning
When proxy environment variables (https_proxy, HTTPS_PROXY, http_proxy,
HTTP_PROXY) are detected and NODE_USE_ENV_PROXY is not already set to
"1", the action spawns a child process with NODE_USE_ENV_PROXY=1 to
enable Node.js native proxy support.

- Add lib/run-with-proxy.js shared utility for both main.js and post.js
- Update main.js and post.js to use runWithProxy() wrapper
- Add tests for proxy spawning, child error handling, and already-enabled path
- 100% code coverage maintained

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-12 20:33:29 -07:00

22 lines
646 B
JavaScript

// Verify that `runWithProxy()` calls the callback directly (no child process)
// when `NODE_USE_ENV_PROXY` is already set to `"1"`, even with proxy env vars set.
// This ensures post.js would also follow the callback path.
import assert from "node:assert";
import { runWithProxy } from "../lib/run-with-proxy.js";
process.env.HTTP_PROXY = "http://proxy.example.com";
process.env.NODE_USE_ENV_PROXY = "1";
let callbackCalled = false;
await runWithProxy(async () => {
callbackCalled = true;
});
assert(callbackCalled, "callback was called directly without spawning");
delete process.env.NODE_USE_ENV_PROXY;
delete process.env.HTTP_PROXY;