UNPKG

ohayolibs

Version:

Ohayo is a set of essential modules for ohayojp.

55 lines (48 loc) 1.66 kB
import { Component } from '@angular/core'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { By } from '@angular/platform-browser'; import { OhayoThemeModule } from '../../theme.module'; describe('Pipe: keys', () => { let fixture: ComponentFixture<TestComponent>; function genModule(template?: string): void { TestBed.configureTestingModule({ imports: [OhayoThemeModule.forRoot()], declarations: [TestComponent], }); if (template) TestBed.overrideTemplate(TestComponent, template); fixture = TestBed.createComponent(TestComponent); fixture.detectChanges(); } it('should return a array', () => { genModule(); const ul = (fixture.debugElement.query(By.css('#result')).nativeElement as HTMLUListElement).querySelectorAll('li'); expect(ul.length).toBe(2); expect(ul[0].textContent).toBe('name'); expect(ul[1].textContent).toBe('address'); }); it('should be render a dist when key is number type', () => { genModule(` <ul id="result"> <li *ngFor="let item of dist | keys: true">{{ item.key | json }}</li> </ul> `); const ul = (fixture.debugElement.query(By.css('#result')).nativeElement as HTMLUListElement).querySelectorAll('li'); expect(ul.length).toBe(2); expect(ul[0].textContent).toBe('1'); expect(ul[1].textContent).toBe('2'); }); }); @Component({ template: ` <ul id="result"> <li *ngFor="let item of data | keys">{{ item.key }}</li> </ul> `, }) class TestComponent { data: any = { name: 'cipchk', address: { city: 'shanghai', district: 'changning' }, }; dist = { 1: '正常', 2: '删除' }; }