Skip to content

Commit 5272ac0

Browse files
author
Alan Churley
committed
feat(logger): lint error fixes
1 parent a3ff0ba commit 5272ac0

File tree

10 files changed

+69
-72
lines changed

10 files changed

+69
-72
lines changed

Diff for: .gradle/6.1/executionHistory/executionHistory.lock

17 Bytes
Binary file not shown.

Diff for: .gradle/6.1/fileChanges/last-build.bin

1 Byte
Binary file not shown.

Diff for: .gradle/6.1/fileHashes/fileHashes.lock

17 Bytes
Binary file not shown.

Diff for: .gradle/6.1/gc.properties

Whitespace-only changes.

Diff for: .gradle/buildOutputCleanup/buildOutputCleanup.lock

17 Bytes
Binary file not shown.

Diff for: .gradle/buildOutputCleanup/cache.properties

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#Wed Nov 18 19:12:13 GMT 2020
2+
gradle.version=6.1

Diff for: .gradle/checksums/checksums.lock

17 Bytes
Binary file not shown.

Diff for: .gradle/vcs-1/gc.properties

Whitespace-only changes.

Diff for: packages/logging/src/index.ts

+28-34
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,44 @@
11
enum LogLevel {
2-
DEBUG = 1,
3-
INFO = 2,
4-
WARNING = 3,
5-
ERROR = 4,
6-
CRITICAL = 5
2+
DEBUG = 1,
3+
INFO = 2,
4+
WARNING = 3,
5+
ERROR = 4,
6+
CRITICAL = 5
77
}
88

99
interface LoggerConfig {
10-
LogLevel?: LogLevel;
10+
LogLevel?: LogLevel
1111
}
1212

1313
class Logger {
14-
private CURRENT_LOG_LEVEL: LogLevel = LogLevel.INFO;
14+
private CURRENT_LOG_LEVEL: LogLevel = LogLevel.INFO;
1515

16-
constructor(config?: LoggerConfig) {
17-
config = config || {};
18-
this.setInitialLogLevel(config);
19-
}
20-
private setInitialLogLevel(config: LoggerConfig) {
16+
public constructor(config?: LoggerConfig) {
17+
config = config || {};
18+
this.setInitialLogLevel(config);
19+
}
2120

22-
if (config.LogLevel) {
23-
this.CURRENT_LOG_LEVEL = config.LogLevel;
24-
return;
25-
}
26-
if (process.env.LOG_LEVEL) {
27-
const environmentVariableLevel = process.env.LOG_LEVEL;
28-
if (environmentVariableLevel in LogLevel) {
29-
this.CURRENT_LOG_LEVEL = LogLevel[environmentVariableLevel as keyof typeof LogLevel];
30-
return;
31-
}
32-
this.Warn(`LOG_LEVEL environment value was not valid,
33-
Received ${environmentVariableLevel} and expected one of ${Object.keys(LogLevel).join(', ')}`);
34-
}
35-
}
36-
getCurrentLogLevel() {
37-
return this.CURRENT_LOG_LEVEL;
21+
private setInitialLogLevel(config: LoggerConfig):void {
22+
if (config.LogLevel) {
23+
this.CURRENT_LOG_LEVEL = config.LogLevel;
3824
}
39-
public Warn(message?: string) {
40-
//ToDo - change once logging has been established
25+
else if (process.env.LOG_LEVEL) {
26+
const environmentVariableLevel = process.env.LOG_LEVEL;
27+
if (environmentVariableLevel in LogLevel) {
28+
this.CURRENT_LOG_LEVEL = LogLevel[environmentVariableLevel as keyof typeof LogLevel];
29+
} //else {
30+
// this.Warn(`LOG_LEVEL environment value was not valid, Received ${environmentVariableLevel} and expected one of ${Object.keys(LogLevel).join(', ')}`);
31+
// }
4132
}
33+
}
34+
35+
public getCurrentLogLevel():LogLevel {
36+
return this.CURRENT_LOG_LEVEL;
37+
}
4238
}
4339

4440
export {
45-
Logger,
46-
LogLevel
41+
Logger,
42+
LogLevel
4743
};
4844

49-
50-

Diff for: packages/logging/tests/unit/logger.test.ts

+39-38
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,44 @@
1-
import {Logger, LogLevel} from '../../src';
1+
import { Logger, LogLevel } from '../../src';
22

33
describe('Logger Class', () => {
4-
test('Should return a valid instance', () => {
5-
const logger = new Logger();
4+
test('Should return a valid instance', () => {
5+
const logger = new Logger();
6+
expect(typeof logger).toBe('object');
7+
});
8+
describe('Instantiation Log levels', () => {
9+
afterEach(() => {
10+
delete process.env.LOG_LEVEL;
611
});
7-
describe('Instantiation Log levels', () => {
8-
afterEach(() => {
9-
delete process.env.LOG_LEVEL;
10-
})
11-
test('Should default to INFO if no level passed', () =>{
12-
const logger = new Logger();
13-
expect(logger.getCurrentLogLevel()).toBe(LogLevel.INFO);
14-
})
15-
test('Log level passed in constructor should be maintained', () => {
16-
const loggerDEBUG = new Logger({LogLevel: LogLevel.DEBUG});
17-
expect(loggerDEBUG.getCurrentLogLevel()).toBe(LogLevel.DEBUG);
18-
const loggerWARN = new Logger({LogLevel: LogLevel.WARNING});
19-
expect(loggerWARN.getCurrentLogLevel()).toBe(LogLevel.WARNING);
20-
const loggerCRITICAL = new Logger({LogLevel: 5});
21-
expect(loggerCRITICAL.getCurrentLogLevel()).toBe(LogLevel.CRITICAL);
22-
})
23-
test('Log level passed as ENV var should be set', () => {
24-
process.env.LOG_LEVEL = "ERROR";
25-
const logger = new Logger();
26-
expect(logger.getCurrentLogLevel()).toBe(LogLevel.ERROR);
27-
})
28-
test('Log level passed in constructor should override environment variable', () => {
29-
process.env.LOG_LEVEL = "ERROR";
30-
const logger = new Logger({LogLevel: LogLevel.CRITICAL});
31-
expect(logger.getCurrentLogLevel()).toBe(LogLevel.CRITICAL);
32-
process.env.LOG_LEVEL = "DEBUG";
33-
const loggerDEBUG = new Logger();
34-
expect(loggerDEBUG.getCurrentLogLevel()).toBe(LogLevel.DEBUG);
35-
})
36-
test('Invalid ENV param should throw warning, and set log level to INFO', () => {
37-
process.env.LOG_LEVEL = "ALERT";
38-
const logger = new Logger();
39-
expect(logger.getCurrentLogLevel()).toBe(LogLevel.INFO);
40-
})
41-
})
12+
test('Should default to INFO if no level passed', () => {
13+
const logger = new Logger();
14+
expect(logger.getCurrentLogLevel()).toBe(LogLevel.INFO);
15+
});
16+
test('Log level passed in constructor should be maintained', () => {
17+
const loggerDEBUG = new Logger({ LogLevel: LogLevel.DEBUG });
18+
expect(loggerDEBUG.getCurrentLogLevel()).toBe(LogLevel.DEBUG);
19+
const loggerWARN = new Logger({ LogLevel: LogLevel.WARNING });
20+
expect(loggerWARN.getCurrentLogLevel()).toBe(LogLevel.WARNING);
21+
const loggerCRITICAL = new Logger({ LogLevel: 5 });
22+
expect(loggerCRITICAL.getCurrentLogLevel()).toBe(LogLevel.CRITICAL);
23+
});
24+
test('Log level passed as ENV var should be set', () => {
25+
process.env.LOG_LEVEL = 'ERROR';
26+
const logger = new Logger();
27+
expect(logger.getCurrentLogLevel()).toBe(LogLevel.ERROR);
28+
});
29+
test('Log level passed in constructor should override environment variable', () => {
30+
process.env.LOG_LEVEL = 'ERROR';
31+
const logger = new Logger({ LogLevel: LogLevel.CRITICAL });
32+
expect(logger.getCurrentLogLevel()).toBe(LogLevel.CRITICAL);
33+
process.env.LOG_LEVEL = 'DEBUG';
34+
const loggerDEBUG = new Logger();
35+
expect(loggerDEBUG.getCurrentLogLevel()).toBe(LogLevel.DEBUG);
36+
});
37+
test('Invalid ENV param should throw warning, and set log level to INFO', () => {
38+
process.env.LOG_LEVEL = 'ALERT';
39+
const logger = new Logger();
40+
expect(logger.getCurrentLogLevel()).toBe(LogLevel.INFO);
41+
});
42+
});
4243
});
4344

0 commit comments

Comments
 (0)