Fix helpers not working in e2e tests
It errors that jest is not defined so put it behind a function instead of immediately creating the mock (this is probably a better pattern anyway). The constant tests had to be reworked a little. Since the logger mock is hoisted it runs before createLoggerMock is imported. I moved it into a beforeAll which means the require call also needed to be moved there (since we need to mock the logger before requiring the constants or it'll pull the non-mocked logger). This means getPackageJson needs to be a let and assigned afterward. To avoid having to define a type for getPackageJson I just added a let var set to the type of the imported constants file and modified the other areas to use the same paradigm. I also replaced some hardcoded strings with the mocked package.json object.
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
import { JSDOM } from "jsdom"
|
||||
import { registerServiceWorker } from "../../src/browser/register"
|
||||
import { loggerModule } from "../utils/helpers"
|
||||
import { createLoggerMock } from "../utils/helpers"
|
||||
import { LocationLike } from "./util.test"
|
||||
|
||||
describe("register", () => {
|
||||
@ -21,6 +21,7 @@ describe("register", () => {
|
||||
})
|
||||
})
|
||||
|
||||
const loggerModule = createLoggerMock()
|
||||
beforeEach(() => {
|
||||
jest.clearAllMocks()
|
||||
jest.mock("@coder/logger", () => loggerModule)
|
||||
@ -75,6 +76,7 @@ describe("register", () => {
|
||||
})
|
||||
|
||||
describe("when navigator and serviceWorker are NOT defined", () => {
|
||||
const loggerModule = createLoggerMock()
|
||||
beforeEach(() => {
|
||||
jest.clearAllMocks()
|
||||
jest.mock("@coder/logger", () => loggerModule)
|
||||
|
Reference in New Issue
Block a user