UNPKG

@wireapp/cryptobox

Version:

High-level API with persistent storage for Proteus.

62 lines (48 loc) 1.59 kB
/* eslint-env jest */ const logdown = require('../../src/node') const origDebug = process.env.NODE_DEBUG describe('logdown()', () => { beforeEach(() => { logdown._instances = [] }) afterEach(() => { process.env.NODE_DEBUG = origDebug }) it('returns an existing instance if the prefix is already in use', () => { const foo = logdown('foo') const foo2 = logdown('foo') expect(foo).toEqual(foo2) }) it('gives a new prefix color for each instance', () => { const foo = logdown('foo') const bar = logdown('bar') const quz = logdown('quz') const baz = logdown('baz') expect(foo.opts.prefixColor).not.toEqual(bar.opts.prefixColor) expect(foo.opts.prefixColor).not.toEqual(quz.opts.prefixColor) expect(foo.opts.prefixColor).not.toEqual(baz.opts.prefixColor) }) it('sets prefix if string is passed as only argument', () => { const log1 = logdown('foo') expect(log1.opts.prefix).toEqual('foo') }) it('throws if prefix is not a string', () => { expect(() => logdown({})).toThrowErrorMatchingSnapshot() }) it('accepts custom prefixColor', () => { const prefixColor = '#FF0000' const log1 = logdown('foo', { prefixColor }) expect(log1.opts.prefixColor).toEqual(prefixColor) }) it('accepts custom logger', () => { process.env.NODE_DEBUG = 'foo' logdown._setPrefixRegExps() const logger = { log: jest.fn() } const log1 = logdown('foo', { logger }) expect(logger.log).not.toHaveBeenCalled() log1.log('lorem') expect(logger.log).toHaveBeenCalled() }) })