本文整理匯總了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());