|
1 | 1 | import { createLoggerAPI } from '../sdkLogger'; |
2 | 2 | import { Logger, LogLevels } from '../index'; |
3 | 3 |
|
4 | | -test('createLoggerAPI / methods and props', () => { |
5 | | - const logger = new Logger('category', {}); |
| 4 | +test('LoggerAPI / methods and props', () => { |
| 5 | + // creates a LoggerAPI instance |
| 6 | + const logger = new Logger('category'); |
| 7 | + const API = createLoggerAPI(logger); |
6 | 8 |
|
7 | | - expect(typeof createLoggerAPI).toBe('function'); // Importing the module should return a function. |
| 9 | + expect(typeof API).toBe('object'); // Our logger should expose an API object. |
8 | 10 |
|
9 | | - const loggerAPI = createLoggerAPI(logger); |
10 | | - |
11 | | - expect(typeof loggerAPI).toBe('object'); // Our logger should expose an API object. |
12 | | - |
13 | | - expect(typeof loggerAPI.setLogLevel).toBe('function'); // API object should have setLogLevel method. |
14 | | - loggerAPI.setLogLevel('INFO'); // @ts-ignore |
| 11 | + expect(typeof API.setLogLevel).toBe('function'); // API object should have setLogLevel method. |
| 12 | + API.setLogLevel('INFO'); // @ts-ignore, accessing private prop |
15 | 13 | expect(logger.options.logLevel).toBe('INFO'); // calling setLogLevel should update the log level. |
16 | | - // @ts-ignore |
17 | | - loggerAPI.setLogLevel('warn'); // @ts-ignore |
| 14 | + // @ts-ignore, passing wrong type |
| 15 | + API.setLogLevel('warn'); // @ts-ignore, accessing private prop |
18 | 16 | expect(logger.options.logLevel).toBe('INFO'); // calling setLogLevel with an invalid value should not update the log level. |
19 | 17 |
|
20 | | - expect(typeof loggerAPI.enable).toBe('function'); // API object should have enable method. |
21 | | - loggerAPI.enable(); // @ts-ignore |
| 18 | + expect(typeof API.enable).toBe('function'); // API object should have enable method. |
| 19 | + API.enable(); // @ts-ignore, accessing private prop |
22 | 20 | expect(logger.options.logLevel).toBe('DEBUG'); // calling enable should update logger log level to DEBUG. |
23 | 21 |
|
24 | | - expect(typeof loggerAPI.disable).toBe('function'); // API object should have disable method. |
25 | | - loggerAPI.disable(); // @ts-ignore |
| 22 | + expect(typeof API.disable).toBe('function'); // API object should have disable method. |
| 23 | + API.disable(); // @ts-ignore, accessing private prop |
26 | 24 | expect(logger.options.logLevel).toBe('NONE'); // calling disable should update logger log level to NONE. |
27 | 25 |
|
28 | | - expect(loggerAPI.LogLevel).toEqual(LogLevels); // API object should have LogLevel prop including all available levels. |
| 26 | + expect(API.LogLevel).toEqual(LogLevels); // API object should have LogLevel prop including all available levels. |
29 | 27 |
|
30 | 28 | }); |
0 commit comments