amos-ionic-logging
Version:
Components for Ionic logging
245 lines (161 loc) • 6.11 kB
text/typescript
import * as log4javascript from "log4javascript";
import { LogLevelConverter } from "./log-level.converter";
import { LogLevel } from "./log-level.model";
describe("LogLevelConverter", () => {
describe("levelFromLog4Javascript(level: log4javascript.Level): LogLevel", () => {
it("log4javascript.Level.ALL", () => {
const value = log4javascript.Level.ALL;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.ALL);
});
it("log4javascript.Level.DEBUG", () => {
const value = log4javascript.Level.DEBUG;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.DEBUG);
});
it("log4javascript.Level.ERROR", () => {
const value = log4javascript.Level.ERROR;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.ERROR);
});
it("log4javascript.Level.FATAL", () => {
const value = log4javascript.Level.FATAL;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.FATAL);
});
it("log4javascript.Level.INFO", () => {
const value = log4javascript.Level.INFO;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.INFO);
});
it("log4javascript.Level.OFF", () => {
const value = log4javascript.Level.OFF;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.OFF);
});
it("log4javascript.Level.TRACE", () => {
const value = log4javascript.Level.TRACE;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.TRACE);
});
it("log4javascript.Level.WARN", () => {
const value = log4javascript.Level.WARN;
const convertedValue = LogLevelConverter.levelFromLog4Javascript(value);
expect(convertedValue).toBe(LogLevel.WARN);
});
it("throws exception, when given level is invalid", () => {
const value = 42;
try {
LogLevelConverter.levelFromLog4Javascript(value);
fail("no error thrown");
} catch (e) {
expect(e).toEqual(jasmine.any(Error));
expect((e as Error).message).toBe("invalid level 42");
}
});
});
describe("levelFromString(level: string): LogLevel", () => {
it("ALL", () => {
const value = "ALL";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.ALL);
});
it("DEBUG", () => {
const value = "DEBUG";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.DEBUG);
});
it("ERROR", () => {
const value = "ERROR";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.ERROR);
});
it("FATAL", () => {
const value = "FATAL";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.FATAL);
});
it("INFO", () => {
const value = "INFO";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.INFO);
});
it("OFF", () => {
const value = "OFF";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.OFF);
});
it("TRACE", () => {
const value = "TRACE";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.TRACE);
});
it("WARN", () => {
const value = "WARN";
const convertedValue = LogLevelConverter.levelFromString(value);
expect(convertedValue).toBe(LogLevel.WARN);
});
it("throws exception, when given level is invalid", () => {
const value = "xxx";
try {
LogLevelConverter.levelFromString(value);
fail("no error thrown");
} catch (e) {
expect(e).toEqual(jasmine.any(Error));
expect((e as Error).message).toBe("invalid level xxx");
}
});
});
describe("levelToLog4Javascript(level: LogLevel): log4javascript.Level", () => {
it("LogLevel.ALL", () => {
const value = LogLevel.ALL;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.ALL);
});
it("LogLevel.DEBUG", () => {
const value = LogLevel.DEBUG;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.DEBUG);
});
it("LogLevel.ERROR", () => {
const value = LogLevel.ERROR;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.ERROR);
});
it("LogLevel.FATAL", () => {
const value = LogLevel.FATAL;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.FATAL);
});
it("LogLevel.INFO", () => {
const value = LogLevel.INFO;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.INFO);
});
it("LogLevel.OFF", () => {
const value = LogLevel.OFF;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.OFF);
});
it("LogLevel.TRACE", () => {
const value = LogLevel.TRACE;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.TRACE);
});
it("LogLevel.WARN", () => {
const value = LogLevel.WARN;
const convertedValue = LogLevelConverter.levelToLog4Javascript(value);
expect(convertedValue).toBe(log4javascript.Level.WARN);
});
it("throws exception, when given level is invalid", () => {
const value = 42;
try {
LogLevelConverter.levelToLog4Javascript(value);
fail("no error thrown");
} catch (e) {
expect(e).toEqual(jasmine.any(Error));
expect((e as Error).message).toBe("invalid level 42");
}
});
});
});