本文整理汇总了TypeScript中angular2/angular2.MockBackend类的典型用法代码示例。如果您正苦于以下问题:TypeScript MockBackend类的具体用法?TypeScript MockBackend怎么用?TypeScript MockBackend使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了MockBackend类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: describe
describe('IconStore', () => {
var injector: Injector;
var store: IconStore;
var backend: MockBackend;
var glyph: Node;
var response;
beforeEach(() => {
injector = Injector.resolveAndCreate([
BaseRequestOptions,
MockBackend,
bind(Http).toFactory((connectionBackend: ConnectionBackend, defaultOptions: BaseRequestOptions) => {
return new Http(connectionBackend, defaultOptions);
}, [
MockBackend,
BaseRequestOptions
]),
bind(IconStore).toClass(IconStore, [
Http
])
]);
backend = injector.get(MockBackend);
store = injector.get(IconStore);
response = new Response({ body: SVG_GLYPH_HTML });
glyph = createGlyphNode();
});
afterEach(() => backend.verifyNoPendingRequests());
describe('.get', () => {
it('should return an Observable', () => {
expect(ObservableWrapper.isObservable(store.get(FAKE_URL))).toBe(true);
});
it('return value should be an SVG element', inject([AsyncTestCompleter], (async) => {
ObservableWrapper.subscribe(backend.connections, (connection: MockConnection) => connection.mockRespond(response));
ObservableWrapper.subscribe(store.get(FAKE_URL), (svg) => {
expect(svg.isEqualNode(glyph)).toBe(true);
async.done();
});
}));
it('should only fire one request for the same path and resolve from cache', inject([AsyncTestCompleter], (async) => {
let url = 'ofor/' + FAKE_URL;
let bc = new BackendConnectionSpy();
ObservableWrapper.subscribe(backend.connections, (connection: MockConnection) => {
bc.onEstablish();
connection.mockRespond(response);
});
ObservableWrapper.subscribe(store.get(url), () => {
ObservableWrapper.subscribe(store.get(url), () => {
expect(bc.onEstablish.calls.count()).toEqual(1);
async.done();
});
});
}));
});
});
示例2: describe
describe('logo', () => {
var injector: Injector;
var backend: MockBackend;
var response;
beforeEachBindings(() => [
BaseRequestOptions,
MockBackend,
bind(Http).toFactory((connectionBackend: ConnectionBackend, defaultOptions: BaseRequestOptions) => {
return new Http(connectionBackend, defaultOptions);
}, [
MockBackend,
BaseRequestOptions
]),
bind(IconStore).toClass(IconStore, [
Http
])
]);
beforeEach(() => {
injector = Injector.resolveAndCreate([
MockBackend
]);
backend = injector.get(MockBackend);
response = new Response({ body: LOGO_GLYPH_HTML });
});
afterEach(() => backend.verifyNoPendingRequests());
it('should append an svg as child of self', inject([TestComponentBuilder, AsyncTestCompleter], (tcb: TestComponentBuilder, async) => {
let html = '<div class="logo" logo></div>';
ObservableWrapper.subscribe(backend.connections, (connection: MockConnection) => {
// console.log(connection);
connection.mockRespond(response)
});
tcb
.overrideTemplate(Test, html)
.createAsync(Test)
.then((rootTC) => {
rootTC.detectChanges();
let logo: Element = DOM.querySelector(rootTC.nativeElement, '.logo');
let prefixSelector = isNativeShadowDOMSupported ? '* /deep/ ' : ''; // soon use '>>>' https://www.chromestatus.com/features/6750456638341120
// console.log(logo.firstChild, prefixSelector);
// expect(logo.querySelector(prefixSelector + 'svg')).not.toBe(null);
async.done();
});
}));
});
示例3:
afterEach(() => backend.verifyNoPendingRequests());