1
0
Fork 0
mirror of https://code.forgejo.org/actions/cache.git synced 2024-11-10 05:23:18 +01:00
This commit is contained in:
Dave Hadka 2020-09-29 10:23:21 -05:00
parent 67f61c6e6b
commit 2850cd8f45
2 changed files with 23 additions and 30 deletions

View file

@ -32,6 +32,8 @@ beforeAll(() => {
beforeEach(() => {
process.env[Events.Key] = Events.Push;
process.env[RefKey] = "refs/heads/feature-branch";
jest.spyOn(actionUtils, "isGhes").mockImplementation(() => false);
});
afterEach(() => {
@ -54,27 +56,20 @@ test("restore with invalid event outputs warning", async () => {
});
test("restore on GHES should no-op", async () => {
try {
process.env["GITHUB_SERVER_URL"] = "http://example.com";
jest.spyOn(actionUtils, "isGhes").mockImplementation(() => true);
const infoMock = jest.spyOn(core, "info");
const restoreCacheMock = jest.spyOn(cache, "restoreCache");
const setCacheHitOutputMock = jest.spyOn(
actionUtils,
"setCacheHitOutput"
);
const infoMock = jest.spyOn(core, "info");
const restoreCacheMock = jest.spyOn(cache, "restoreCache");
const setCacheHitOutputMock = jest.spyOn(actionUtils, "setCacheHitOutput");
await run();
await run();
expect(restoreCacheMock).toHaveBeenCalledTimes(0);
expect(setCacheHitOutputMock).toHaveBeenCalledTimes(1);
expect(setCacheHitOutputMock).toHaveBeenCalledWith(false);
expect(infoMock).toHaveBeenCalledWith(
"Cache action is not supported on GHES"
);
} finally {
process.env["GITHUB_SERVER_URL"] = undefined;
}
expect(restoreCacheMock).toHaveBeenCalledTimes(0);
expect(setCacheHitOutputMock).toHaveBeenCalledTimes(1);
expect(setCacheHitOutputMock).toHaveBeenCalledWith(false);
expect(infoMock).toHaveBeenCalledWith(
"Cache action is not supported on GHES"
);
});
test("restore with no path should fail", async () => {

View file

@ -44,6 +44,8 @@ beforeAll(() => {
beforeEach(() => {
process.env[Events.Key] = Events.Push;
process.env[RefKey] = "refs/heads/feature-branch";
jest.spyOn(actionUtils, "isGhes").mockImplementation(() => false);
});
afterEach(() => {
@ -92,21 +94,17 @@ test("save with no primary key in state outputs warning", async () => {
});
test("save on GHES should no-op", async () => {
try {
process.env["GITHUB_SERVER_URL"] = "http://example.com";
jest.spyOn(actionUtils, "isGhes").mockImplementation(() => true);
const infoMock = jest.spyOn(core, "info");
const saveCacheMock = jest.spyOn(cache, "saveCache");
const infoMock = jest.spyOn(core, "info");
const saveCacheMock = jest.spyOn(cache, "saveCache");
await run();
await run();
expect(saveCacheMock).toHaveBeenCalledTimes(0);
expect(infoMock).toHaveBeenCalledWith(
"Cache action is not supported on GHES"
);
} finally {
process.env["GITHUB_SERVER_URL"] = undefined;
}
expect(saveCacheMock).toHaveBeenCalledTimes(0);
expect(infoMock).toHaveBeenCalledWith(
"Cache action is not supported on GHES"
);
});
test("save with exact match returns early", async () => {