當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript testing.MockBackend類代碼示例

本文整理匯總了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);
					});
				});
		}));
	});
開發者ID:truongndnnguyen,項目名稱:ng2-lab,代碼行數:52,代碼來源:glyph.spec.ts

示例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();
				});
			});
		});
	});
});
開發者ID:virajs,項目名稱:ng2-lab,代碼行數:66,代碼來源:icon.spec.ts

示例3:

		afterEach(() => backend.verifyNoPendingRequests());
開發者ID:truongndnnguyen,項目名稱:ng2-lab,代碼行數:1,代碼來源:glyph.spec.ts


注:本文中的angular2/http/testing.MockBackend類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。