11import { JSDOM } from "jsdom"
2- import { Cookie } from "playwright"
3- // Note: we need to import logger from the root
4- // because this is the logger used in logError in ../src/common/util
5- import { logger } from "../node_modules/@coder/logger"
62import {
73 arrayify ,
84 generateUuid ,
@@ -18,13 +14,16 @@ import {
1814import { Cookie as CookieEnum } from "../src/node/routes/login"
1915import { hash } from "../src/node/util"
2016import { PASSWORD } from "./constants"
21- import { checkForCookie , createCookieIfDoesntExist } from "./helpers"
17+ import { checkForCookie , createCookieIfDoesntExist , loggerModule , Cookie } from "./helpers"
2218
2319const dom = new JSDOM ( )
2420global . document = dom . window . document
2521
2622type LocationLike = Pick < Location , "pathname" | "origin" >
2723
24+ // jest.mock is hoisted above the imports so we must use `require` here.
25+ jest . mock ( "@coder/logger" , ( ) => require ( "./helpers" ) . loggerModule )
26+
2827describe ( "util" , ( ) => {
2928 describe ( "normalize" , ( ) => {
3029 it ( "should remove multiple slashes" , ( ) => {
@@ -228,12 +227,6 @@ describe("util", () => {
228227 } )
229228
230229 describe ( "logError" , ( ) => {
231- let spy : jest . SpyInstance
232-
233- beforeEach ( ( ) => {
234- spy = jest . spyOn ( logger , "error" )
235- } )
236-
237230 afterEach ( ( ) => {
238231 jest . clearAllMocks ( )
239232 } )
@@ -248,15 +241,15 @@ describe("util", () => {
248241
249242 logError ( "ui" , error )
250243
251- expect ( spy ) . toHaveBeenCalled ( )
252- expect ( spy ) . toHaveBeenCalledWith ( `ui: ${ error . message } ${ error . stack } ` )
244+ expect ( loggerModule . logger . error ) . toHaveBeenCalled ( )
245+ expect ( loggerModule . logger . error ) . toHaveBeenCalledWith ( `ui: ${ error . message } ${ error . stack } ` )
253246 } )
254247
255248 it ( "should log an error, even if not an instance of error" , ( ) => {
256249 logError ( "api" , "oh no" )
257250
258- expect ( spy ) . toHaveBeenCalled ( )
259- expect ( spy ) . toHaveBeenCalledWith ( "api: oh no" )
251+ expect ( loggerModule . logger . error ) . toHaveBeenCalled ( )
252+ expect ( loggerModule . logger . error ) . toHaveBeenCalledWith ( "api: oh no" )
260253 } )
261254 } )
262255
0 commit comments