diff --git a/goofy-client/libs/vorgang-shared/src/index.ts b/goofy-client/libs/vorgang-shared/src/index.ts index e04ba764d39a83d1d0be2479414278dc502ca2e3..55ec9570738216f097792972a02108bd26c0e597 100644 --- a/goofy-client/libs/vorgang-shared/src/index.ts +++ b/goofy-client/libs/vorgang-shared/src/index.ts @@ -5,3 +5,4 @@ export * from './lib/vorgang-shared.linkrels'; export * from './lib/vorgang-shared.actions'; export * from './lib/vorgang-shared.state'; export * from './lib/vorgang-shared.messages'; +export * from '../test/vorgang'; \ No newline at end of file diff --git a/goofy-client/libs/vorgang/src/lib/vorgang-detail/vorgang-detail.component.spec.ts b/goofy-client/libs/vorgang/src/lib/vorgang-detail/vorgang-detail.component.spec.ts index 45cd0eae929c52c9359cd10e1bf86ff953e3cfc3..9707d38aad90176bae001b59258d878372c540ec 100644 --- a/goofy-client/libs/vorgang/src/lib/vorgang-detail/vorgang-detail.component.spec.ts +++ b/goofy-client/libs/vorgang/src/lib/vorgang-detail/vorgang-detail.component.spec.ts @@ -2,29 +2,31 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { VorgangDetailComponent } from './vorgang-detail.component'; import { UiModule } from '@goofy-client/ui'; import { TechSharedModule } from '@goofy-client/tech-shared'; +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; -describe('VorgangDetailComponent', () => { - let component: VorgangDetailComponent; - let fixture: ComponentFixture<VorgangDetailComponent>; +xdescribe('VorgangDetailComponent', () => { + let component: VorgangDetailComponent; + let fixture: ComponentFixture<VorgangDetailComponent>; - beforeEach(async () => { - await TestBed.configureTestingModule({ + beforeEach(async () => { + await TestBed.configureTestingModule({ imports: [ UiModule, TechSharedModule ], - declarations: [ VorgangDetailComponent ] - }) - .compileComponents(); - }); + declarations: [ VorgangDetailComponent ], + schemas: [ CUSTOM_ELEMENTS_SCHEMA ] + }) + .compileComponents(); + }); - beforeEach(() => { - fixture = TestBed.createComponent(VorgangDetailComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); + beforeEach(() => { + fixture = TestBed.createComponent(VorgangDetailComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); - xit('should create', () => { - expect(component).toBeTruthy(); - }); + it('should create', () => { + expect(component).toBeTruthy(); + }); }); diff --git a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.html b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.html index d6a66b34278f68081e7e0b8fed517ae3ce4535d0..af34f2162f0c377a6eff02e188a6b6dfd0b2ae85 100644 --- a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.html +++ b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.html @@ -1,4 +1,4 @@ -<ng-container *ngIf="{ vorgaenge: vorgaenge$ | async, hasNextPage: hasNextPage$ | async, currentVorgangListPageResource: currentVorgangListPageResource$ | async } as vorgangListData"> +<ng-container *ngIf="{ vorgaenge: vorgaenge$ | async, hasNextPage: hasNextPage$ | async, currentVorgangListPageResource: currentVorgangListPageResource$ | async} as vorgangListData"> <goofy-client-vorgang-list [currentVorgangListPageResource]="vorgangListData.currentVorgangListPageResource" [vorgaenge]="vorgangListData.vorgaenge" diff --git a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.spec.ts b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.spec.ts index 4afb3b402baad5d4c0f1b6783a7bb688743822a7..1387b930a7302baecf3936495b238ddef6bbb1d3 100644 --- a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.spec.ts +++ b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list-container.component.spec.ts @@ -1,30 +1,27 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { VorgangListContainerComponent } from './vorgang-list-container.component'; -import { UiModule } from '@goofy-client/ui'; -import { TechSharedModule } from '@goofy-client/tech-shared'; +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; -describe('VorgangListContainerComponent', () => { - let component: VorgangListContainerComponent; - let fixture: ComponentFixture<VorgangListContainerComponent>; +xdescribe('VorgangListContainerComponent', () => { + let component: VorgangListContainerComponent; + let fixture: ComponentFixture<VorgangListContainerComponent>; - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [ - UiModule, - TechSharedModule - ], - declarations: [ VorgangListContainerComponent ] - }) - .compileComponents(); - }); + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [], + declarations: [ VorgangListContainerComponent ], + schemas: [ CUSTOM_ELEMENTS_SCHEMA ] + }) + .compileComponents(); + }); - beforeEach(() => { - fixture = TestBed.createComponent(VorgangListContainerComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); + beforeEach(() => { + fixture = TestBed.createComponent(VorgangListContainerComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); - xit('should create', () => { - expect(component).toBeTruthy(); - }); + it('should create', () => { + expect(component).toBeTruthy(); + }); }); diff --git a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html index 45e4c8852505750a027a5fddcbb036b4ae050c40..dcb8ae3710f0fdfed2f7558d66733939719ab760 100644 --- a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html +++ b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html @@ -13,7 +13,7 @@ <div class="dates column"> <div class="row date" matTooltip="Eingang: {{vorgang.initialDate | date: 'EEEE, dd.MM.y, H:mm:ss'}}"> - <mat-icon svgIcon="incoming"></mat-icon> + <mat-icon>incoming</mat-icon><!-- Check if this is working with custom icon otherwise test need to be fix too --> <span>{{ vorgang.initialDate | formatListDate }}</span> </div> <div class="row date"> diff --git a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts index 72ffdd1f01b234bea8ea35d01cdb47c9c5e68234..2a37f40c8e0c29af77b7b8c6824d28862a669f34 100644 --- a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts +++ b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts @@ -1,31 +1,32 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { VorgangListItemComponent } from './vorgang-list-item.component'; -import { UiModule } from '@goofy-client/ui'; -import { TechSharedModule } from '@goofy-client/tech-shared'; +import { EnumToLabelPipe } from 'libs/tech-shared/src/lib/pipes/enum-to-label'; +import { FormatListDatePipe } from 'libs/tech-shared/src/lib/pipes/format-list-date.pipe'; +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; describe('VorgangListItemComponent', () => { - let component: VorgangListItemComponent; - let fixture: ComponentFixture<VorgangListItemComponent>; + let component: VorgangListItemComponent; + let fixture: ComponentFixture<VorgangListItemComponent>; - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [ - UiModule, - TechSharedModule - ], - declarations: [ VorgangListItemComponent ] - }).compileComponents(); - }); + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ + EnumToLabelPipe, FormatListDatePipe + ], + declarations: [ VorgangListItemComponent ], + schemas: [ CUSTOM_ELEMENTS_SCHEMA ] + }).compileComponents(); + }); - beforeEach(() => { - fixture = TestBed.createComponent(VorgangListItemComponent); - component = fixture.componentInstance; - //TODO: In test.ts auslagern - component.vorgang = <any>{ initialDate: new Date(), status: 'Neu', name: 'y'} - fixture.detectChanges(); - }); + beforeEach(() => { + fixture = TestBed.createComponent(VorgangListItemComponent); + component = fixture.componentInstance; + //TODO: In test.ts auslagern + //component.vorgang = <any>{ initialDate: new Date(), status: 'Neu', name: 'y'} + fixture.detectChanges(); + }); - xit('should create', () => { - expect(component).toBeTruthy(); - }); + xit('should create', () => { + expect(component).toBeTruthy(); + }); }); diff --git a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.html b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.html index e5f17334a4ed4781c8fd430898f88d1713286800..f1e06e71838d048b56f0cc4523d6ffc35177b5df 100644 --- a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.html +++ b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.html @@ -1,7 +1,7 @@ <goofy-client-subnavigation [ngClass]="{ shadow: hasShadow }"></goofy-client-subnavigation> <div class="scroll-area" [ngClass]="{ shadow: hasShadow }"> - <cdk-virtual-scroll-viewport itemSize="88" (scrolledIndexChange)="nextBatch()" (scroll)="onScroll($event)"> + <cdk-virtual-scroll-viewport itemSize="88" (scrolledIndexChange)="nextBatch()" (scroll)="onScroll($event)"> <goofy-client-vorgang-list-item *cdkVirtualFor="let vorgang of vorgaenge; templateCacheSize: 0" [vorgang]="vorgang"> </goofy-client-vorgang-list-item> diff --git a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.spec.ts b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.spec.ts index 2f8eca9a9881dec08392f118c175447ca4d1e2ec..05d3533d01f739ed4ca792172506179c819669f6 100644 --- a/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.spec.ts +++ b/goofy-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list.component.spec.ts @@ -1,30 +1,70 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { VorgangListItemComponent } from './vorgang-list-item/vorgang-list-item.component'; import { VorgangListComponent } from './vorgang-list.component'; -import { UiModule } from '@goofy-client/ui'; -import { TechSharedModule } from '@goofy-client/tech-shared'; +import { ScrollingModule } from '@angular/cdk/scrolling'; +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { createEmptyStateResource } from '@goofy-client/tech-shared'; +import { createVorgangResource } from '@goofy-client/vorgang-shared'; +import { By } from '@angular/platform-browser'; describe('VorgangListComponent', () => { let component: VorgangListComponent; let fixture: ComponentFixture<VorgangListComponent>; + const subnavigation: string = 'goofy-client-subnavigation'; + const vorgangListItem: string = 'goofy-client-vorgang-list-item'; + beforeEach(async () => { await TestBed.configureTestingModule({ imports: [ - UiModule, - TechSharedModule + ScrollingModule ], - declarations: [VorgangListComponent, VorgangListItemComponent] + declarations: [VorgangListComponent], + schemas: [ CUSTOM_ELEMENTS_SCHEMA ] }).compileComponents(); }); beforeEach(() => { fixture = TestBed.createComponent(VorgangListComponent); component = fixture.componentInstance; + component.currentVorgangListPageResource = createEmptyStateResource(); fixture.detectChanges(); }); - xit('should create', () => { + it('should create', () => { expect(component).toBeTruthy(); }); + + it('should have subnavigation', () => { + const element = fixture.nativeElement.querySelector(subnavigation); + + expect(element).toBeInstanceOf(HTMLElement); + }) + + it('should have vorgang-list-item', () => { + component.vorgaenge = [createVorgangResource(), createVorgangResource()]; + fixture.detectChanges(); + + const elements = fixture.debugElement.queryAll(By.css(vorgangListItem)); + + expect(elements).toHaveLength(2); + }); + + describe('mat-spinner', () => { + it('should show', () => { + component.currentVorgangListPageResource = createEmptyStateResource(true); + fixture.detectChanges(); + + const spinner = fixture.nativeElement.querySelector('mat-spinner'); + + expect(spinner).toBeInstanceOf(HTMLElement); + }) + it('should hide', () => { + component.currentVorgangListPageResource = createEmptyStateResource(); + fixture.detectChanges(); + + const spinner = fixture.nativeElement.querySelector('mat-spinner'); + + expect(spinner).not.toBeInstanceOf(HTMLElement); + }) + }) });