Skip to content

Commit e321256

Browse files
committed
feat: promise logs
1 parent c939ab5 commit e321256

File tree

2 files changed

+56
-6
lines changed

2 files changed

+56
-6
lines changed

src/logger.js

Lines changed: 32 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,38 @@ import { intercept } from './utils';
22

33
const Logger = (() => {
44
return {
5-
success: (...args) => intercept('success', args),
6-
info: (...args) => intercept('info', args),
7-
warn: (...args) => intercept('warn', args),
8-
error: (...args) => intercept('error', args),
9-
trace: (...args) => intercept('trace', args),
10-
debug: (...args) => intercept('debug', args),
5+
success: (...args) => intercept({ type: 'success', args }),
6+
info: (...args) => intercept({ type: 'info', args }),
7+
warn: (...args) => intercept({ type: 'warn', args }),
8+
error: (...args) => intercept({ type: 'error', args }),
9+
trace: (...args) => intercept({ type: 'trace', args }),
10+
debug: (...args) => intercept({ type: 'debug', args }),
11+
12+
// PROMISE STATUSES LOGS
13+
pending: (...args) => intercept({
14+
type: 'info',
15+
promiseStatus: 'pending',
16+
args,
17+
parse: true
18+
}),
19+
fulfilled: (...args) => intercept({
20+
type: 'success',
21+
promiseStatus: 'fulfilled',
22+
args,
23+
parse: true
24+
}),
25+
rejected: (...args) => intercept({
26+
type: 'error',
27+
promiseStatus: 'rejected',
28+
args,
29+
parse: true
30+
}),
31+
settled: (...args) => intercept({
32+
type: 'success',
33+
promiseStatus: 'settled',
34+
args,
35+
parse: true
36+
}),
1137
}
1238
})();
1339

tests/logger.test.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,28 @@ describe('Logger', () => {
3838
'🐛 Debug message example'
3939
);
4040
});
41+
42+
test('should create Logger.pending', () => {
43+
expect(Logger.pending('Pending message example', { helloWorld: true })).toEqual(
44+
'ℹ️ Pending message example | pending'
45+
);
46+
});
47+
48+
test('should create Logger.fulfilled', () => {
49+
expect(Logger.fulfilled('Fulfilled message example', { helloWorld: true })).toEqual(
50+
'✅ Fulfilled message example | fulfilled'
51+
);
52+
});
53+
54+
test('should create Logger.rejected', () => {
55+
expect(Logger.rejected('Rejected message example', { helloWorld: true })).toEqual(
56+
'🚫 Rejected message example | rejected'
57+
);
58+
});
59+
60+
test('should create Logger.settled', () => {
61+
expect(Logger.settled('Settled message example', { helloWorld: true })).toEqual(
62+
'✅ Settled message example | settled'
63+
);
64+
});
4165
});

0 commit comments

Comments
 (0)