2020-02-06 22:41:19 +00:00
|
|
|
import { DevToolsTabsComponent } from './devtools-tabs.component';
|
2020-04-02 23:23:03 +00:00
|
|
|
import { ApplicationEnvironment } from 'ng-devtools';
|
|
|
|
|
import { Events, MessageBus } from 'protocol';
|
2020-05-08 22:12:17 +00:00
|
|
|
import { TabUpdate } from './tab-update';
|
2020-02-06 22:41:19 +00:00
|
|
|
|
|
|
|
|
describe('DevtoolsTabsComponent', () => {
|
2020-04-02 23:23:03 +00:00
|
|
|
let messageBusMock: MessageBus<Events>;
|
|
|
|
|
let applicationEnvironmentMock: ApplicationEnvironment;
|
2020-02-06 22:41:19 +00:00
|
|
|
let comp: DevToolsTabsComponent;
|
2020-06-12 19:18:34 +00:00
|
|
|
let mockThemeService: any;
|
2021-02-07 13:15:42 +00:00
|
|
|
let mockDialogService: any;
|
2020-02-06 22:41:19 +00:00
|
|
|
|
2020-02-07 21:09:36 +00:00
|
|
|
beforeEach(() => {
|
2020-02-06 22:41:19 +00:00
|
|
|
messageBusMock = jasmine.createSpyObj('messageBus', ['on', 'once', 'emit', 'destroy']);
|
2020-04-02 23:23:03 +00:00
|
|
|
applicationEnvironmentMock = jasmine.createSpyObj('applicationEnvironment', ['environment']);
|
2020-06-12 19:18:34 +00:00
|
|
|
mockThemeService = {};
|
2021-02-07 13:15:42 +00:00
|
|
|
mockDialogService = jasmine.createSpyObj('dialog', ['open']);
|
2020-04-02 23:23:03 +00:00
|
|
|
|
2020-06-12 19:18:34 +00:00
|
|
|
comp = new DevToolsTabsComponent(
|
|
|
|
|
new TabUpdate(),
|
|
|
|
|
mockThemeService as any,
|
|
|
|
|
messageBusMock,
|
2021-02-07 13:15:42 +00:00
|
|
|
applicationEnvironmentMock,
|
|
|
|
|
mockDialogService as any
|
2020-06-12 19:18:34 +00:00
|
|
|
);
|
2020-02-07 21:25:16 +00:00
|
|
|
});
|
2020-02-06 22:41:19 +00:00
|
|
|
|
|
|
|
|
it('should create instance from class', () => {
|
|
|
|
|
expect(comp).toBeTruthy();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it('toggles inspector flag', () => {
|
|
|
|
|
expect(comp.inspectorRunning).toBe(false);
|
|
|
|
|
comp.toggleInspectorState();
|
|
|
|
|
expect(comp.inspectorRunning).toBe(true);
|
|
|
|
|
comp.toggleInspectorState();
|
|
|
|
|
expect(comp.inspectorRunning).toBe(false);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it('emits inspector event', () => {
|
|
|
|
|
comp.toggleInspector();
|
2020-03-19 03:08:23 +00:00
|
|
|
expect(messageBusMock.emit).toHaveBeenCalledTimes(1);
|
|
|
|
|
expect(messageBusMock.emit).toHaveBeenCalledWith('inspectorStart');
|
2020-02-06 22:41:19 +00:00
|
|
|
comp.toggleInspector();
|
2020-04-14 22:27:59 +00:00
|
|
|
expect(messageBusMock.emit).toHaveBeenCalledTimes(3);
|
2020-03-19 03:08:23 +00:00
|
|
|
expect(messageBusMock.emit).toHaveBeenCalledWith('inspectorEnd');
|
2020-04-14 22:27:59 +00:00
|
|
|
expect(messageBusMock.emit).toHaveBeenCalledWith('removeHighlightOverlay');
|
2020-02-06 22:41:19 +00:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it('calls child refresh method', () => {
|
|
|
|
|
comp.directiveExplorer = jasmine.createSpyObj('directiveExplorer', ['refresh']);
|
|
|
|
|
comp.refresh();
|
|
|
|
|
expect(comp.directiveExplorer.refresh).toHaveBeenCalledTimes(1);
|
|
|
|
|
});
|
|
|
|
|
});
|