2021-12-16 13:36:21 +01:00
|
|
|
import { ConsoleLogService } from "jslib-node/cli/services/consoleLog.service";
|
|
|
|
import { interceptConsole, restoreConsole } from "../../common/services/consoleLog.service.spec";
|
2020-12-11 17:44:57 +01:00
|
|
|
|
|
|
|
const originalConsole = console;
|
|
|
|
let caughtMessage: any = {};
|
|
|
|
|
2021-12-16 13:36:21 +01:00
|
|
|
describe("CLI Console log service", () => {
|
|
|
|
let logService: ConsoleLogService;
|
|
|
|
beforeEach(() => {
|
|
|
|
caughtMessage = {};
|
|
|
|
interceptConsole(caughtMessage);
|
|
|
|
logService = new ConsoleLogService(true);
|
|
|
|
});
|
2020-12-11 17:44:57 +01:00
|
|
|
|
2021-12-16 13:36:21 +01:00
|
|
|
afterAll(() => {
|
|
|
|
restoreConsole();
|
|
|
|
});
|
2020-12-11 17:44:57 +01:00
|
|
|
|
2021-12-16 13:36:21 +01:00
|
|
|
it("should redirect all console to error if BW_RESPONSE env is true", () => {
|
|
|
|
process.env.BW_RESPONSE = "true";
|
2020-12-11 17:44:57 +01:00
|
|
|
|
2021-12-16 13:36:21 +01:00
|
|
|
logService.debug("this is a debug message");
|
|
|
|
expect(caughtMessage).toEqual({
|
|
|
|
error: jasmine.arrayWithExactContents(["this is a debug message"]),
|
2020-12-11 17:44:57 +01:00
|
|
|
});
|
2021-12-16 13:36:21 +01:00
|
|
|
});
|
2020-12-11 17:44:57 +01:00
|
|
|
|
2021-12-16 13:36:21 +01:00
|
|
|
it("should not redirect console to error if BW_RESPONSE != true", () => {
|
|
|
|
process.env.BW_RESPONSE = "false";
|
2020-12-11 17:44:57 +01:00
|
|
|
|
2021-12-16 13:36:21 +01:00
|
|
|
logService.debug("debug");
|
|
|
|
logService.info("info");
|
|
|
|
logService.warning("warning");
|
|
|
|
logService.error("error");
|
2020-12-11 17:44:57 +01:00
|
|
|
|
2021-12-16 13:36:21 +01:00
|
|
|
expect(caughtMessage).toEqual({
|
|
|
|
log: jasmine.arrayWithExactContents(["info"]),
|
|
|
|
warn: jasmine.arrayWithExactContents(["warning"]),
|
|
|
|
error: jasmine.arrayWithExactContents(["error"]),
|
2020-12-11 17:44:57 +01:00
|
|
|
});
|
2021-12-16 13:36:21 +01:00
|
|
|
});
|
2020-12-11 17:44:57 +01:00
|
|
|
});
|