UNPKG

salsify-experiences-sdk

Version:

SDK to be used by commerce websites to implement product experiences.

37 lines (27 loc) 1.17 kB
import { useConsoleLogger } from '../../devTools' import Transport from '../log-service-transport' import { createLogger } from '../index' import { makeContext, makeSettings } from '../../../__tests__/helpers' jest.mock('../../devTools') jest.mock('../log-service-transport') const consoleSpy = jest.spyOn(global.console, 'log') describe('logger', () => { beforeEach(() => { ;(Transport as jest.Mock).mockClear() consoleSpy.mockClear() }) test('should use console logger when dev flag is enabled', () => { ;(useConsoleLogger as jest.Mock).mockReturnValue(true) const logger = createLogger(makeContext(), makeSettings()) logger.log('foo') expect(consoleSpy).toHaveBeenCalledTimes(1) expect((Transport as jest.Mock).mock.instances[0].log).toHaveBeenCalledTimes(0) }) test('should use console logger when dev flag is disabled', () => { ;(useConsoleLogger as jest.Mock).mockReturnValue(false) const logger = createLogger(makeContext(), makeSettings()) logger.log('foo') expect(consoleSpy).toHaveBeenCalledTimes(0) expect((Transport as jest.Mock).mock.instances[0].log).toHaveBeenCalledTimes(1) }) })