Skip to content

Commit 906dd89

Browse files
committed
Run java to show computed settings
1 parent 46473e0 commit 906dd89

File tree

4 files changed

+122
-40
lines changed

4 files changed

+122
-40
lines changed

lib/start-proxy-action.js

Lines changed: 60 additions & 31 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/start-proxy-action.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ async function run(startedAt: Date) {
8282
// which may affect the operation of our proxy.
8383
if (core.isDebug() || util.isInTestMode()) {
8484
try {
85-
checkProxyEnvironment(logger, language);
85+
await checkProxyEnvironment(logger, language);
8686
} catch (err) {
8787
logger.debug(
8888
`Unable to inspect runner environment: ${util.getErrorMessage(err)}`,

src/start-proxy/environment.test.ts

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,10 @@ import * as fs from "fs";
22
import * as os from "os";
33
import path from "path";
44

5+
import * as toolrunner from "@actions/exec/lib/toolrunner";
6+
import * as io from "@actions/io";
57
import test, { ExecutionContext } from "ava";
8+
import sinon from "sinon";
69

710
import { JavaEnvVars, KnownLanguage } from "../languages";
811
import {
@@ -25,6 +28,15 @@ import {
2528

2629
setupTests(test);
2730

31+
function stubToolrunner() {
32+
sinon.stub(io, "which").throws(new Error("Java not installed"));
33+
sinon.stub(toolrunner, "ToolRunner").returns({
34+
exec: async () => {
35+
return 0;
36+
},
37+
});
38+
}
39+
2840
function assertEnvVarLogMessages(
2941
t: ExecutionContext<any>,
3042
envVars: string[],
@@ -166,30 +178,36 @@ test("checkProxyEnvVars - credentials are removed from URLs", (t) => {
166178
);
167179
});
168180

169-
test("checkProxyEnvironment - includes base checks for all known languages", (t) => {
181+
test("checkProxyEnvironment - includes base checks for all known languages", async (t) => {
182+
stubToolrunner();
183+
170184
for (const language of Object.values(KnownLanguage)) {
171185
const messages: LoggedMessage[] = [];
172186
const logger = getRecordingLogger(messages);
173187

174-
checkProxyEnvironment(logger, language);
188+
await checkProxyEnvironment(logger, language);
175189
assertEnvVarLogMessages(t, Object.keys(ProxyEnvVars), messages, false);
176190
}
177191
});
178192

179-
test("checkProxyEnvironment - includes Java checks for Java", (t) => {
193+
test("checkProxyEnvironment - includes Java checks for Java", async (t) => {
180194
const messages: LoggedMessage[] = [];
181195
const logger = getRecordingLogger(messages);
182196

183-
checkProxyEnvironment(logger, KnownLanguage.java);
197+
stubToolrunner();
198+
199+
await checkProxyEnvironment(logger, KnownLanguage.java);
184200
assertEnvVarLogMessages(t, Object.keys(ProxyEnvVars), messages, false);
185201
assertEnvVarLogMessages(t, JAVA_PROXY_ENV_VARS, messages, false);
186202
});
187203

188-
test("checkProxyEnvironment - includes language-specific checks if the language is undefined", (t) => {
204+
test("checkProxyEnvironment - includes language-specific checks if the language is undefined", async (t) => {
189205
const messages: LoggedMessage[] = [];
190206
const logger = getRecordingLogger(messages);
191207

192-
checkProxyEnvironment(logger, undefined);
208+
stubToolrunner();
209+
210+
await checkProxyEnvironment(logger, undefined);
193211
assertEnvVarLogMessages(t, Object.keys(ProxyEnvVars), messages, false);
194212
assertEnvVarLogMessages(t, JAVA_PROXY_ENV_VARS, messages, false);
195213
});

0 commit comments

Comments
 (0)