mirror of
https://code.forgejo.org/actions/cache.git
synced 2025-05-26 00:51:14 +08:00
Update non-null state provider to also output primary/matched keys
This commit is contained in:
parent
480d890516
commit
91afe36e0a
4 changed files with 51 additions and 33 deletions
|
@ -149,7 +149,7 @@ test("restore with cache found for key", async () => {
|
|||
const infoMock = jest.spyOn(core, "info");
|
||||
const failedMock = jest.spyOn(core, "setFailed");
|
||||
const stateMock = jest.spyOn(core, "saveState");
|
||||
const setCacheHitOutputMock = jest.spyOn(core, "setOutput");
|
||||
const setOutputMock = jest.spyOn(core, "setOutput");
|
||||
const restoreCacheMock = jest
|
||||
.spyOn(cache, "restoreCache")
|
||||
.mockImplementationOnce(() => {
|
||||
|
@ -173,8 +173,10 @@ test("restore with cache found for key", async () => {
|
|||
expect(stateMock).toHaveBeenCalledWith("CACHE_RESULT", key);
|
||||
expect(stateMock).toHaveBeenCalledTimes(2);
|
||||
|
||||
expect(setCacheHitOutputMock).toHaveBeenCalledTimes(1);
|
||||
expect(setCacheHitOutputMock).toHaveBeenCalledWith("cache-hit", "true");
|
||||
expect(setOutputMock).toHaveBeenCalledTimes(3);
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-hit", "true");
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-primary-key", key);
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-matched-key", key);
|
||||
|
||||
expect(infoMock).toHaveBeenCalledWith(`Cache restored from key: ${key}`);
|
||||
expect(failedMock).toHaveBeenCalledTimes(0);
|
||||
|
@ -194,7 +196,7 @@ test("restore with cache found for restore key", async () => {
|
|||
const infoMock = jest.spyOn(core, "info");
|
||||
const failedMock = jest.spyOn(core, "setFailed");
|
||||
const stateMock = jest.spyOn(core, "saveState");
|
||||
const setCacheHitOutputMock = jest.spyOn(core, "setOutput");
|
||||
const setOutputMock = jest.spyOn(core, "setOutput");
|
||||
const restoreCacheMock = jest
|
||||
.spyOn(cache, "restoreCache")
|
||||
.mockImplementationOnce(() => {
|
||||
|
@ -218,8 +220,10 @@ test("restore with cache found for restore key", async () => {
|
|||
expect(stateMock).toHaveBeenCalledWith("CACHE_RESULT", restoreKey);
|
||||
expect(stateMock).toHaveBeenCalledTimes(2);
|
||||
|
||||
expect(setCacheHitOutputMock).toHaveBeenCalledTimes(1);
|
||||
expect(setCacheHitOutputMock).toHaveBeenCalledWith("cache-hit", "false");
|
||||
expect(setOutputMock).toHaveBeenCalledTimes(3);
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-hit", "false");
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-primary-key", key);
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-matched-key", restoreKey);
|
||||
expect(infoMock).toHaveBeenCalledWith(
|
||||
`Cache restored from key: ${restoreKey}`
|
||||
);
|
||||
|
@ -239,7 +243,7 @@ test("Fail restore when fail on cache miss is enabled and primary + restore keys
|
|||
|
||||
const failedMock = jest.spyOn(core, "setFailed");
|
||||
const stateMock = jest.spyOn(core, "saveState");
|
||||
const setCacheHitOutputMock = jest.spyOn(core, "setOutput");
|
||||
const setOutputMock = jest.spyOn(core, "setOutput");
|
||||
const restoreCacheMock = jest
|
||||
.spyOn(cache, "restoreCache")
|
||||
.mockImplementationOnce(() => {
|
||||
|
@ -260,7 +264,8 @@ test("Fail restore when fail on cache miss is enabled and primary + restore keys
|
|||
);
|
||||
|
||||
expect(stateMock).toHaveBeenCalledWith("CACHE_KEY", key);
|
||||
expect(setCacheHitOutputMock).toHaveBeenCalledTimes(0);
|
||||
expect(setOutputMock).toHaveBeenCalledTimes(1);
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-primary-key", key);
|
||||
|
||||
expect(failedMock).toHaveBeenCalledWith(
|
||||
`Failed to restore cache entry. Exiting as fail-on-cache-miss is set. Input key: ${key}`
|
||||
|
@ -282,7 +287,7 @@ test("restore when fail on cache miss is enabled and primary key doesn't match r
|
|||
const infoMock = jest.spyOn(core, "info");
|
||||
const failedMock = jest.spyOn(core, "setFailed");
|
||||
const stateMock = jest.spyOn(core, "saveState");
|
||||
const setCacheHitOutputMock = jest.spyOn(core, "setOutput");
|
||||
const setOutputMock = jest.spyOn(core, "setOutput");
|
||||
const restoreCacheMock = jest
|
||||
.spyOn(cache, "restoreCache")
|
||||
.mockImplementationOnce(() => {
|
||||
|
@ -306,8 +311,10 @@ test("restore when fail on cache miss is enabled and primary key doesn't match r
|
|||
expect(stateMock).toHaveBeenCalledWith("CACHE_RESULT", restoreKey);
|
||||
expect(stateMock).toHaveBeenCalledTimes(2);
|
||||
|
||||
expect(setCacheHitOutputMock).toHaveBeenCalledTimes(1);
|
||||
expect(setCacheHitOutputMock).toHaveBeenCalledWith("cache-hit", "false");
|
||||
expect(setOutputMock).toHaveBeenCalledTimes(3);
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-hit", "false");
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-primary-key", key);
|
||||
expect(setOutputMock).toHaveBeenCalledWith("cache-matched-key", restoreKey);
|
||||
|
||||
expect(infoMock).toHaveBeenCalledWith(
|
||||
`Cache restored from key: ${restoreKey}`
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue