本文整理汇总了TypeScript中angular2/http/testing.MockBackend类的典型用法代码示例。如果您正苦于以下问题:TypeScript MockBackend类的具体用法?TypeScript MockBackend怎么用?TypeScript MockBackend使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了MockBackend类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: describe
describe('<glyph>', () => {
let backend: MockBackend;
let response;
beforeEachProviders(() => [
BaseRequestOptions,
MockBackend,
provide(Http, {
useFactory: (connectionBackend: ConnectionBackend, defaultOptions: BaseRequestOptions) => {
return new Http(connectionBackend, defaultOptions);
},
deps: [
MockBackend,
BaseRequestOptions
]
}),
provide(Icon, {
useFactory: (http: Http) => {
return new Icon(http);
},
deps: [
Http
]
})
]);
beforeEach(inject([MockBackend], (mockBackend) => {
backend = mockBackend;
response = new Response(
new ResponseOptions({body: GLYPH_RESPONSE_BODY})
);
}));
afterEach(() => backend.verifyNoPendingRequests());
it('should append an svg as child of self', inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
let ee: any = new EventEmitter();
backend.connections.subscribe((connection: MockConnection) => {
connection.mockRespond(response);
ee.resolve();
});
tcb
.createAsync(GlyphTest)
.then((fixture: ComponentFixture) => {
fixture.detectChanges();
ee.subscribe(null, null, () => {
let logo: Element = fixture.nativeElement.querySelector('glyph');
expect(logo.querySelector('svg')).not.toBe(null);
});
});
}));
});
示例2: describe
describe('Icon', () => {
let injector: Injector;
let store: Icon;
let backend: MockBackend;
let glyph: Node;
let response;
beforeEach(() => {
injector = Injector.resolveAndCreate([
BaseRequestOptions,
MockBackend,
provide(Http, {
useFactory: (connectionBackend: ConnectionBackend, defaultOptions: BaseRequestOptions) => {
return new Http(connectionBackend, defaultOptions);
},
deps: [
MockBackend,
BaseRequestOptions
]
}),
provide(Icon, {
useFactory: (http: Http) => {
return new Icon(http);
},
deps: [
Http
]
})
]);
backend = injector.get(MockBackend);
store = injector.get(Icon);
response = new Response(
new ResponseOptions({body: SVG_GLYPH_HTML})
);
glyph = createGlyphNode();
});
afterEach(() => backend.verifyNoPendingRequests());
describe('.get()', () => {
it('return value should be an SVG element', (done: () => void) => {
backend.connections.subscribe((connection: MockConnection) => connection.mockRespond(response));
store.get(FAKE_URL).then((svg) => {
expect(svg.isEqualNode(glyph)).toBe(true);
done();
});
});
it('should only fire one request for the same path and resolve from cache', (done: () => void) => {
let url = `ofor/${FAKE_URL}`;
let spy = jasmine.createSpy('onEstablish');
let bc = {
onEstablish: spy
};
backend.connections.subscribe((connection: MockConnection) => {
bc.onEstablish();
connection.mockRespond(response);
});
store.get(url).then(() => {
store.get(url).then(() => {
expect(bc.onEstablish.calls.count()).toEqual(1);
done();
});
});
});
});
});
示例3:
afterEach(() => backend.verifyNoPendingRequests());