本文整理汇总了TypeScript中angular2/core/testing.inject函数的典型用法代码示例。如果您正苦于以下问题:TypeScript inject函数的具体用法?TypeScript inject怎么用?TypeScript inject使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了inject函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: describe
describe('DOM tests:', () => {
it('should display the correct number of items per page (10)',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
fixture.detectChanges();
expect(getListItems(fixture).length).toBe(10);
});
}));
it('should display the correct number of items per page (50)',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 50;
fixture.detectChanges();
expect(getListItems(fixture).length).toBe(50);
});
}));
it('should display the correct number of items, after itemsPerPage & currentPage change',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 10;
fixture.detectChanges();
expect(getListItems(fixture).length).toBe(10);
let expected = ['item 4', 'item 5', 'item 6'];
instance.config.itemsPerPage = 3;
instance.config.currentPage = 2;
fixture.detectChanges();
expect(getListItemsText(fixture)).toEqual(expected);
expect(getListItems(fixture).length).toBe(3);
});
}));
it('should display the correct items on init',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 3;
fixture.detectChanges();
let expected = ['item 1', 'item 2', 'item 3'];
expect(getListItemsText(fixture)).toEqual(expected);
});
}));
it('should not mutate the collection',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
expect(instance.collection.length).toBe(100);
instance.config.itemsPerPage = 50;
fixture.detectChanges();
expect(instance.collection.length).toBe(100);
instance.config.itemsPerPage = 75;
fixture.detectChanges();
expect(instance.collection.length).toBe(100);
});
}));
it('should default to page 1 if currentPage not set',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 3;
instance.config.currentPage = undefined;
fixture.detectChanges();
let expected = ['item 1', 'item 2', 'item 3'];
expect(getListItemsText(fixture)).toEqual(expected);
});
}));
});
示例2: describe
describe('PaginationControlsCmp:', () => {
it('should display the correct page links (simple)',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 30;
fixture.detectChanges();
let expected = ['1', '2', '3', '4'];
expect(getPageLinkItems(fixture)).toEqual(expected);
});
}));
it('should display the correct page links (end ellipsis)',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 10;
fixture.detectChanges();
let expected = ['1', '2', '3', '4', '5', '6', '7', '...', '10'];
expect(getPageLinkItems(fixture)).toEqual(expected);
});
}));
it('should display the correct page links (start ellipsis)',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 10;
instance.config.currentPage = 10;
fixture.detectChanges();
let expected = ['1', '...', '4', '5', '6', '7', '8', '9', '10'];
expect(getPageLinkItems(fixture)).toEqual(expected);
});
}));
it('should display the correct page links (double ellipsis)',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
instance.config.itemsPerPage = 1;
instance.config.currentPage = 50;
fixture.detectChanges();
let expected = ['1', '...', '48', '49', '50', '51', '52', '...', '100'];
expect(getPageLinkItems(fixture)).toEqual(expected);
});
}));
it('should update links when collection size changes',
inject([TestComponentBuilder], fakeAsync((tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
let expected = ['1', '2', '3', '4', '5', '6', '7', '...', '10'];
fixture.detectChanges();
expect(getPageLinkItems(fixture)).toEqual(expected);
instance.collection.push('item 101');
fixture.detectChanges();
tick();
fixture.detectChanges();
expected = ['1', '2', '3', '4', '5', '6', '7', '...', '11'];
expect(getPageLinkItems(fixture)).toEqual(expected);
});
})));
it('should update the currently-active page when currentPage changes',
inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
let controlsInstance: PaginationControlsCmp = fixture
.debugElement.query(By.css('pagination-controls')).componentInstance;
fixture.detectChanges();
expect(controlsInstance.getCurrent()).toBe(1);
instance.config.currentPage = 2;
fixture.detectChanges();
expect(controlsInstance.getCurrent()).toBe(2);
});
}));
it('should update the currently-active page when currentPage becomes invalid (too high)',
inject([TestComponentBuilder], fakeAsync((tcb: TestComponentBuilder) => {
tcb.createAsync(TestCmp)
.then((fixture: ComponentFixture<TestCmp>) => {
let instance: TestCmp = fixture.componentInstance;
let controlsInstance: PaginationControlsCmp = fixture
.debugElement.query(By.css('pagination-controls')).componentInstance;
//.........这里部分代码省略.........