From 6498d7dfbfd58c416aa8cf7547d173ed7e199015 Mon Sep 17 00:00:00 2001 From: lotte Date: Thu, 13 Dec 2018 14:18:14 +0100 Subject: [PATCH] added all tests --- .../admin-sidebar-section.component.spec.ts | 38 +++- .../admin-sidebar.component.html | 2 +- .../admin-sidebar.component.spec.ts | 105 ++++++++--- ...le-admin-sidebar-section.component.spec.ts | 64 ++++++- ...andable-admin-sidebar-section.component.ts | 1 - src/app/app.component.spec.ts | 11 +- src/app/app.component.ts | 3 +- src/app/header/header.component.spec.ts | 58 ++++++ ...xpandable-navbar-section.component.spec.ts | 175 ++++++++++++++++-- .../navbar-section.component.spec.ts | 32 +++- src/app/navbar/navbar.component.spec.ts | 76 +------- .../auth-nav-menu.component.html | 2 - .../auth-nav-menu.component.spec.ts | 2 +- src/app/shared/chips/chips.component.spec.ts | 16 +- src/app/shared/host-window.service.spec.ts | 26 +-- src/app/shared/menu/menu.service.ts | 2 +- .../testing/css-variable-service-stub.ts | 17 +- 17 files changed, 493 insertions(+), 137 deletions(-) create mode 100644 src/app/header/header.component.spec.ts diff --git a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.spec.ts b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.spec.ts index a4f4399f59..d02b0d30c6 100644 --- a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.spec.ts +++ b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.spec.ts @@ -1,25 +1,59 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { MenuService } from '../../../shared/menu/menu.service'; +import { MenuServiceStub } from '../../../shared/testing/menu-service-stub'; +import { CSSVariableService } from '../../../shared/sass-helper/sass-helper.service'; +import { CSSVariableServiceStub } from '../../../shared/testing/css-variable-service-stub'; +import { Component } from '@angular/core'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { AdminSidebarSectionComponent } from './admin-sidebar-section.component'; +import { RouterTestingModule } from '@angular/router/testing'; +import { By } from '@angular/platform-browser'; describe('AdminSidebarSectionComponent', () => { let component: AdminSidebarSectionComponent; let fixture: ComponentFixture; + const menuService = new MenuServiceStub(); + const iconString = 'test'; beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ AdminSidebarSectionComponent ] + imports: [NoopAnimationsModule, RouterTestingModule], + declarations: [AdminSidebarSectionComponent, TestComponent], + providers: [ + { provide: 'sectionDataProvider', useValue: { model: { link: 'google.com' }, icon: iconString } }, + { provide: MenuService, useValue: menuService }, + { provide: CSSVariableService, useClass: CSSVariableServiceStub }, + ] + }).overrideComponent(AdminSidebarSectionComponent, { + set: { + entryComponents: [TestComponent] + } }) - .compileComponents(); + .compileComponents(); })); beforeEach(() => { fixture = TestBed.createComponent(AdminSidebarSectionComponent); component = fixture.componentInstance; + spyOn(component as any, 'getMenuItemComponent').and.returnValue(TestComponent); fixture.detectChanges(); }); it('should create', () => { expect(component).toBeTruthy(); }); + + it('should set the right icon', () => { + const icon = fixture.debugElement.query(By.css('.shortcut-icon')).query(By.css('i.fas')); + expect(icon.nativeElement.getAttribute('class')).toContain('fa-' + iconString); + }); }); + +// declare a test component +@Component({ + selector: 'ds-test-cmp', + template: `` +}) +class TestComponent { +} diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.html b/src/app/+admin/admin-sidebar/admin-sidebar.component.html index 7a339d85f2..b59c1db829 100644 --- a/src/app/+admin/admin-sidebar/admin-sidebar.component.html +++ b/src/app/+admin/admin-sidebar/admin-sidebar.component.html @@ -30,7 +30,7 @@ - +