Skip to content

Commit 23b233a

Browse files
committed
fix: Mock chalk in tasks.
1 parent 625c000 commit 23b233a

File tree

3 files changed

+22
-15
lines changed

3 files changed

+22
-15
lines changed

.github/workflows/coverage.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
name: Coverage
22
on: [push]
3-
env:
4-
FORCE_COLOR: 2
53
jobs:
64
build:
75
name: Test Coverage

.github/workflows/main.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
name: CI
22
on: [push]
3-
env:
4-
FORCE_COLOR: 2
53
jobs:
64
build:
75
name: Build, lint, and test on Node ${{ matrix.node }} and ${{ matrix.os }}

src/logger.test.ts

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,33 @@
1-
import { beforeEach, describe, expect, test, vi } from 'vitest'
1+
import { afterEach, beforeEach, describe, expect, test, vi } from 'vitest'
22

3-
import { Colors, Logger } from './logger'
4-
import chalk from 'chalk'
3+
import { Logger } from './logger'
4+
5+
vi.mock('chalk', async () => ({
6+
default: {
7+
hex: () => {
8+
return (text: string) => text
9+
}
10+
}
11+
}))
512

613
describe('Logger', () => {
714
beforeEach(() => {
815
vi.useFakeTimers()
916
vi.setSystemTime(new Date(2024, 8, 31))
1017
})
1118

19+
afterEach(() => {
20+
vi.useRealTimers()
21+
})
22+
1223
test('properly logs trace messages to the console.', () => {
1324
const spy = vi.spyOn(console, 'log')
1425

1526
const logger = new Logger()
1627

1728
logger.trace('Entering processOrder function with orderId=12345.')
1829

19-
const expectedMessage = `[${chalk.hex(Colors.LightGray)('TRACE')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} Entering processOrder function with orderId=12345.`
30+
const expectedMessage = `[TRACE] 2024-09-30T22:00:00.000Z Entering processOrder function with orderId=12345.`
2031

2132
expect(spy).toHaveBeenCalledWith(expectedMessage)
2233
})
@@ -28,7 +39,7 @@ describe('Logger', () => {
2839

2940
logger.debug('Processing order with orderId=12345.')
3041

31-
const expectedMessage = `[${chalk.hex(Colors.LightGray)('DEBUG')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} Processing order with orderId=12345.`
42+
const expectedMessage = `[DEBUG] 2024-09-30T22:00:00.000Z Processing order with orderId=12345.`
3243

3344
expect(spy).toHaveBeenCalledWith(expectedMessage)
3445
})
@@ -40,7 +51,7 @@ describe('Logger', () => {
4051

4152
logger.info('Order processed successfully.')
4253

43-
const expectedMessage = `[${chalk.hex(Colors.LightGray)('INFO')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} Order processed successfully.`
54+
const expectedMessage = `[INFO] 2024-09-30T22:00:00.000Z Order processed successfully.`
4455

4556
expect(spy).toHaveBeenCalledWith(expectedMessage)
4657
})
@@ -52,7 +63,7 @@ describe('Logger', () => {
5263

5364
logger.warn('Order with orderId=12345 is missing a delivery address.')
5465

55-
const expectedMessage = `[${chalk.hex(Colors.LightGray)('WARN')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} Order with orderId=12345 is missing a delivery address.`
66+
const expectedMessage = `[WARN] 2024-09-30T22:00:00.000Z Order with orderId=12345 is missing a delivery address.`
5667

5768
expect(spy).toHaveBeenCalledWith(expectedMessage)
5869
})
@@ -64,7 +75,7 @@ describe('Logger', () => {
6475

6576
logger.error('Failed to process order with orderId=12345.')
6677

67-
const expectedMessage = `[${chalk.hex(Colors.LightGray)('ERROR')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} Failed to process order with orderId=12345.`
78+
const expectedMessage = `[ERROR] 2024-09-30T22:00:00.000Z Failed to process order with orderId=12345.`
6879

6980
expect(spy).toHaveBeenCalledWith(expectedMessage)
7081
})
@@ -76,7 +87,7 @@ describe('Logger', () => {
7687

7788
logger.fatal('Failed to start the application.')
7889

79-
const expectedMessage = `[${chalk.hex(Colors.LightGray)('FATAL')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} Failed to start the application.`
90+
const expectedMessage = `[FATAL] 2024-09-30T22:00:00.000Z Failed to start the application.`
8091

8192
expect(spy).toHaveBeenCalledWith(expectedMessage)
8293
})
@@ -98,7 +109,7 @@ describe('Logger', () => {
98109

99110
logger.info('Order processed successfully.', 'orderId=12345')
100111

101-
const expectedMessage = `[${chalk.hex(Colors.LightGray)('INFO')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} Order processed successfully.`
112+
const expectedMessage = `[INFO] 2024-09-30T22:00:00.000Z Order processed successfully.`
102113

103114
expect(spy).toHaveBeenCalledWith(expectedMessage, 'orderId=12345')
104115
})
@@ -111,7 +122,7 @@ describe('Logger', () => {
111122
logger.info({ orderId: 12345 }, 'Order processed successfully.')
112123

113124
expect(spy).toHaveBeenCalledWith(
114-
`[${chalk.hex(Colors.LightGray)('INFO')}] ${chalk.hex(Colors.LightGray)('2024-09-30T22:00:00.000Z')} `,
125+
`[INFO] 2024-09-30T22:00:00.000Z `,
115126
{ orderId: 12345 },
116127
'Order processed successfully.'
117128
)

0 commit comments

Comments
 (0)