UNPKG

amos-ionic-logging

Version:
99 lines (67 loc) 2.31 kB
/* eslint-disable no-magic-numbers */ import { getTestBed, TestBed } from "@angular/core/testing"; import { LoggingService } from "ionic-logging-service"; import { LoggingViewerFilterService } from "./logging-viewer-filter.service"; describe("LoggingViewerFilterService", () => { let loggingViewerFilterService: LoggingViewerFilterService; const loggerStub = jasmine.createSpyObj("logger", ["entry", "exit"]); const loggingServiceStub = jasmine.createSpyObj("loggingServiceStub", ["getLogger"]); loggingServiceStub.getLogger.and.returnValue(loggerStub); beforeEach(() => { TestBed.configureTestingModule({ providers: [ { provide: LoggingService, useValue: loggingServiceStub }, LoggingViewerFilterService, ], }); loggingViewerFilterService = TestBed.inject(LoggingViewerFilterService); }); describe("ctor()", () => { it("gets correct named logger", () => { expect(loggingServiceStub.getLogger).toHaveBeenCalledWith("Ionic.Logging.Viewer.Filter.Service"); }); }); describe("level", () => { describe("get", () => { it("return DEBUG as default", () => { expect(loggingViewerFilterService.level).toBe("DEBUG"); }); }); describe("set", () => { it("get returns new value", () => { loggingViewerFilterService.level = "INFO"; expect(loggingViewerFilterService.level).toBe("INFO"); }); }); }); describe("search", () => { describe("get", () => { it("return empty string as default", () => { expect(loggingViewerFilterService.search).toBe(""); }); }); describe("set", () => { it("get returns new value", () => { loggingViewerFilterService.search = "abc"; expect(loggingViewerFilterService.search).toBe("abc"); }); }); }); describe("filterChanged: EventEmitter<void>", () => { it("new level gets emitted", (done: () => void) => { loggingViewerFilterService.filterChanged.subscribe(() => { expect(loggingViewerFilterService.level).toBe("WARN"); done(); }); loggingViewerFilterService.level = "WARN"; }); it("new search gets emitted", (done: () => void) => { loggingViewerFilterService.filterChanged.subscribe(() => { expect(loggingViewerFilterService.search).toBe("ghi"); done(); }); loggingViewerFilterService.search = "ghi"; }); }); });