X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fapp%2Fvorgang%2Fvorgang.component.spec.ts;fp=src%2Fapp%2Fvorgang%2Fvorgang.component.spec.ts;h=9e912a83ed924e200c5e5e86ec1aa23ba17a6974;hb=28bda4db7661a99758eef1b832d5d39da7766d2a;hp=0d41cdfb49b877aeb82bd094c654980460c94727;hpb=a232212e2aff197d3aea92194f83f76a241c3559;p=examples%2Fangular-tour-of-heroes diff --git a/src/app/vorgang/vorgang.component.spec.ts b/src/app/vorgang/vorgang.component.spec.ts index 0d41cdf..9e912a8 100644 --- a/src/app/vorgang/vorgang.component.spec.ts +++ b/src/app/vorgang/vorgang.component.spec.ts @@ -1,19 +1,29 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { provideMockStore, MockStore } from '@ngrx/store/testing'; +import { MemoizedSelector, State } from '@ngrx/store'; import { VorgangComponent } from './vorgang.component'; +import { VorgangService } from '../vorgang.service'; +import { Vorgang } from '../vorgang'; +import Result = jasmine.Result; + +class VorgangServiceStub {} describe('VorgangComponent', () => { let component: VorgangComponent; let fixture: ComponentFixture; let mockStore: MockStore; + let mockUsernameSelector: MemoizedSelector; - const initialState = { vorgang: { counter: 0 } }; + const initialState = { vorgang: { vorgaenge: [] } }; - beforeEach(async(() => { + beforeEach(async(() => { TestBed.configureTestingModule({ declarations: [ VorgangComponent ], - providers: [ provideMockStore({ initialState }) ] + providers: [ + provideMockStore({ initialState }), + { provide: VorgangService, useClass: VorgangServiceStub } + ] }) .compileComponents(); @@ -23,6 +33,7 @@ describe('VorgangComponent', () => { beforeEach(() => { fixture = TestBed.createComponent(VorgangComponent); component = fixture.componentInstance; + mockUsernameSelector = mockStore.overrideSelector('vorgang', Vorgang); fixture.detectChanges(); }); @@ -30,10 +41,19 @@ describe('VorgangComponent', () => { expect(component).toBeTruthy(); }); - it('should render vorgang', () => { - const fixture = TestBed.createComponent(VorgangComponent); + it('should render empty vorgang-list in the beginning', () => { + fixture.detectChanges(); + const compiled = fixture.debugElement.nativeElement; + expect(compiled.querySelector('.vorgang-result')).toBeTruthy(); + expect(compiled.querySelector('.vorgang-result > li')).toBeNull(); + }); + + it('should render new vorgang-list', () => { + const vorgang: Vorgang = require('../../mock/vorgang.json'); + mockStore.set fixture.detectChanges(); const compiled = fixture.debugElement.nativeElement; - expect(compiled.querySelector('#vorgang').textContent).toContain('0'); + expect(compiled.querySelector('.vorgang-result')).toBeTruthy(); + expect(compiled.querySelector('.vorgang-result > li')).toBeNull(); }); });