From 782b0bd3df6dbb1f2a79b4db46d6f59a030cf11a Mon Sep 17 00:00:00 2001 From: Sankalp Kotewar <98868223+kotewar@users.noreply.github.com> Date: Thu, 8 Dec 2022 17:30:24 +0000 Subject: [PATCH] Fixed test cases --- __tests__/actionUtils.test.ts | 79 +---------------------------------- __tests__/save.test.ts | 8 +--- 2 files changed, 3 insertions(+), 84 deletions(-) diff --git a/__tests__/actionUtils.test.ts b/__tests__/actionUtils.test.ts index c8e579a..66eba7e 100644 --- a/__tests__/actionUtils.test.ts +++ b/__tests__/actionUtils.test.ts @@ -1,7 +1,7 @@ import * as cache from "@actions/cache"; import * as core from "@actions/core"; -import { Events, Outputs, RefKey, State } from "../src/constants"; +import { Events, RefKey } from "../src/constants"; import * as actionUtils from "../src/utils/actionUtils"; import * as testUtils from "../src/utils/testUtils"; @@ -79,83 +79,6 @@ test("isExactKeyMatch with same key and different casing returns true", () => { expect(actionUtils.isExactKeyMatch(key, cacheKey)).toBe(true); }); -test("setOutputAndState with undefined entry to set cache-hit output", () => { - const key = "linux-rust"; - const cacheKey = undefined; - - const setOutputMock = jest.spyOn(core, "setOutput"); - const saveStateMock = jest.spyOn(core, "saveState"); - - actionUtils.setOutputAndState(key, cacheKey); - - expect(setOutputMock).toHaveBeenCalledWith(Outputs.CacheHit, "false"); - expect(setOutputMock).toHaveBeenCalledTimes(1); - - expect(saveStateMock).toHaveBeenCalledTimes(0); -}); - -test("setOutputAndState with exact match to set cache-hit output and state", () => { - const key = "linux-rust"; - const cacheKey = "linux-rust"; - - const setOutputMock = jest.spyOn(core, "setOutput"); - const saveStateMock = jest.spyOn(core, "saveState"); - - actionUtils.setOutputAndState(key, cacheKey); - - expect(setOutputMock).toHaveBeenCalledWith(Outputs.CacheHit, "true"); - expect(setOutputMock).toHaveBeenCalledTimes(1); - - expect(saveStateMock).toHaveBeenCalledWith(State.CacheMatchedKey, cacheKey); - expect(saveStateMock).toHaveBeenCalledTimes(1); -}); - -test("setOutputAndState with no exact match to set cache-hit output and state", () => { - const key = "linux-rust"; - const cacheKey = "linux-rust-bb828da54c148048dd17899ba9fda624811cfb43"; - - const setOutputMock = jest.spyOn(core, "setOutput"); - const saveStateMock = jest.spyOn(core, "saveState"); - - actionUtils.setOutputAndState(key, cacheKey); - - expect(setOutputMock).toHaveBeenCalledWith(Outputs.CacheHit, "false"); - expect(setOutputMock).toHaveBeenCalledTimes(1); - - expect(saveStateMock).toHaveBeenCalledWith(State.CacheMatchedKey, cacheKey); - expect(saveStateMock).toHaveBeenCalledTimes(1); -}); - -test("getCacheState with no state returns undefined", () => { - const getStateMock = jest.spyOn(core, "getState"); - getStateMock.mockImplementation(() => { - return ""; - }); - - const state = actionUtils.getCacheState(); - - expect(state).toBe(undefined); - - expect(getStateMock).toHaveBeenCalledWith(State.CacheMatchedKey); - expect(getStateMock).toHaveBeenCalledTimes(1); -}); - -test("getCacheState with valid state", () => { - const cacheKey = "Linux-node-bb828da54c148048dd17899ba9fda624811cfb43"; - - const getStateMock = jest.spyOn(core, "getState"); - getStateMock.mockImplementation(() => { - return cacheKey; - }); - - const state = actionUtils.getCacheState(); - - expect(state).toEqual(cacheKey); - - expect(getStateMock).toHaveBeenCalledWith(State.CacheMatchedKey); - expect(getStateMock).toHaveBeenCalledTimes(1); -}); - test("logWarning logs a message with a warning prefix", () => { const message = "A warning occurred."; diff --git a/__tests__/save.test.ts b/__tests__/save.test.ts index 4a3ae39..3c550e0 100644 --- a/__tests__/save.test.ts +++ b/__tests__/save.test.ts @@ -15,10 +15,6 @@ beforeAll(() => { return jest.requireActual("@actions/core").getInput(name, options); }); - jest.spyOn(actionUtils, "getCacheState").mockImplementation(() => { - return jest.requireActual("../src/utils/actionUtils").getCacheState(); - }); - jest.spyOn(actionUtils, "getInputAsArray").mockImplementation( (name, options) => { return jest @@ -86,11 +82,11 @@ test("save with no primary key in state outputs warning", async () => { jest.spyOn(core, "getState") // Cache Entry State .mockImplementationOnce(() => { - return savedCacheKey; + return ""; }) // Cache Key State .mockImplementationOnce(() => { - return ""; + return savedCacheKey; }); const saveCacheMock = jest.spyOn(cache, "saveCache");