
committed by
Jeremy Elbourn

parent
ad99199d50
commit
a16ac84840
@ -3,9 +3,13 @@ import {global, isPresent, noop} from 'angular2/src/facade/lang';
|
||||
// without depending on rxjs.
|
||||
import {PromiseWrapper, Promise, PromiseCompleter} from 'angular2/src/facade/promise';
|
||||
export {PromiseWrapper, Promise, PromiseCompleter} from 'angular2/src/facade/promise';
|
||||
import {Subject, Subscription, Observable as RxObservable} from '@reactivex/rxjs/dist/cjs/Rx';
|
||||
export {Subject} from '@reactivex/rxjs/dist/cjs/Rx';
|
||||
import Operator from '@reactivex/rxjs/dist/cjs/Operator';
|
||||
|
||||
import {Subject} from '@reactivex/rxjs/dist/cjs/Subject';
|
||||
import {Observable as RxObservable} from '@reactivex/rxjs/dist/cjs/Observable';
|
||||
import {Subscription} from '@reactivex/rxjs/dist/cjs/Subscription';
|
||||
import {Operator} from '@reactivex/rxjs/dist/cjs/Operator';
|
||||
export {Subject} from '@reactivex/rxjs/dist/cjs/Subject';
|
||||
|
||||
|
||||
export namespace NodeJS {
|
||||
export interface Timer {}
|
||||
|
5
modules/angular2/test/core/facade/observable_spec.dart
Normal file
5
modules/angular2/test/core/facade/observable_spec.dart
Normal file
@ -0,0 +1,5 @@
|
||||
library angular2.test.facade.observable_spec;
|
||||
|
||||
main() {
|
||||
//stub to ignore JS Observable specific tests
|
||||
}
|
63
modules/angular2/test/core/facade/observable_spec.ts
Normal file
63
modules/angular2/test/core/facade/observable_spec.ts
Normal file
@ -0,0 +1,63 @@
|
||||
import {
|
||||
describe,
|
||||
it,
|
||||
expect,
|
||||
beforeEach,
|
||||
ddescribe,
|
||||
iit,
|
||||
xit,
|
||||
el,
|
||||
SpyObject,
|
||||
AsyncTestCompleter,
|
||||
inject
|
||||
} from 'angular2/testing_internal';
|
||||
|
||||
import {Observable, Subject, EventEmitter, PromiseWrapper} from 'angular2/src/facade/async';
|
||||
|
||||
export function main() {
|
||||
describe("Observable", () => {
|
||||
describe("#core", () => {
|
||||
|
||||
it("should call next with values", inject([AsyncTestCompleter], (async) => {
|
||||
|
||||
let o = new Observable(sink => { sink.next(1); });
|
||||
|
||||
o.subscribe(v => {
|
||||
expect(v).toEqual(1);
|
||||
async.done();
|
||||
});
|
||||
|
||||
}));
|
||||
|
||||
it("should call next and then complete", inject([AsyncTestCompleter], (async) => {
|
||||
|
||||
let o = new Observable(sink => {
|
||||
sink.next(1);
|
||||
sink.complete();
|
||||
});
|
||||
let nexted = false;
|
||||
|
||||
o.subscribe(v => { nexted = true; }, null, () => {
|
||||
expect(nexted).toBe(true);
|
||||
async.done();
|
||||
});
|
||||
|
||||
}));
|
||||
|
||||
it("should call error with errors", inject([AsyncTestCompleter], (async) => {
|
||||
|
||||
let o = new Observable(sink => { sink.error('oh noes!'); });
|
||||
|
||||
o.subscribe(
|
||||
v => {
|
||||
|
||||
},
|
||||
(err) => {
|
||||
expect(err).toEqual('oh noes!');
|
||||
async.done();
|
||||
});
|
||||
|
||||
}));
|
||||
});
|
||||
});
|
||||
}
|
@ -686,51 +686,9 @@ var NG_ALL = [
|
||||
/*
|
||||
RxJS API - may need to maintain as RxJS evolves
|
||||
*/
|
||||
'EventEmitter.mapTo():js',
|
||||
'EventEmitter.next():js',
|
||||
'EventEmitter.emit():js',
|
||||
'EventEmitter.materialize():js',
|
||||
'EventEmitter.merge():js',
|
||||
'EventEmitter.mergeAll():js',
|
||||
'EventEmitter.mergeMap():js',
|
||||
'EventEmitter.mergeMapTo():js',
|
||||
'EventEmitter.multicast():js',
|
||||
'EventEmitter.observeOn():js',
|
||||
'EventEmitter.remove():js',
|
||||
'EventEmitter.repeat():js',
|
||||
'EventEmitter.retry():js',
|
||||
'EventEmitter.retryWhen():js',
|
||||
'EventEmitter.throttle():js',
|
||||
'EventEmitter.toPromise():js',
|
||||
'EventEmitter.window():js',
|
||||
'EventEmitter.windowCount():js',
|
||||
'EventEmitter.windowTime():js',
|
||||
'EventEmitter.windowToggle():js',
|
||||
'EventEmitter.windowWhen():js',
|
||||
'EventEmitter.withLatestFrom():js',
|
||||
'EventEmitter.zip():js',
|
||||
'EventEmitter.zipAll():js',
|
||||
|
||||
'Observable:js',
|
||||
'Observable#combineLatest():js',
|
||||
'Observable#concat():js',
|
||||
'Observable#create():js',
|
||||
'Observable#defer():js',
|
||||
'Observable#empty():js',
|
||||
'Observable#forkJoin():js',
|
||||
'Observable#from():js',
|
||||
'Observable#fromArray():js',
|
||||
'Observable#fromEvent():js',
|
||||
'Observable#fromEventPattern():js',
|
||||
'Observable#fromPromise():js',
|
||||
'Observable#interval():js',
|
||||
'Observable#merge():js',
|
||||
'Observable#never():js',
|
||||
'Observable#of():js',
|
||||
'Observable#range():js',
|
||||
'Observable#throw():js',
|
||||
'Observable#timer():js',
|
||||
'Observable#zip():js',
|
||||
'Observable.buffer():js',
|
||||
'Observable.bufferCount():js',
|
||||
'Observable.bufferTime():js',
|
||||
|
Reference in New Issue
Block a user