Skip to content

Commit

Permalink
Merge pull request #2877 from cartant/unwrap-it-type-tests
Browse files Browse the repository at this point in the history
chore(typings): unwrap it-wrapped type tests
  • Loading branch information
kwonoj authored Nov 6, 2017
2 parents 7fd366b + c4ce8e9 commit a922087
Show file tree
Hide file tree
Showing 9 changed files with 293 additions and 363 deletions.
136 changes: 61 additions & 75 deletions spec/observables/combineLatest-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -480,80 +480,66 @@ describe('Observable.combineLatest', () => {
expectSubscriptions(e2.subscriptions).toBe(e2subs);
});

it('should support promises', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Promise<string>;
let c: Promise<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.combineLatest(a, b, c);
let o2: Rx.Observable<boolean> = Observable.combineLatest(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});
});

it('should support observables', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let b: Rx.Observable<string>;
let c: Rx.Observable<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.combineLatest(a, b, c);
let o2: Rx.Observable<boolean> = Observable.combineLatest(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});
});

it('should support mixed observables and promises', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Rx.Observable<string>;
let c: Promise<boolean>;
let d: Rx.Observable<string[]>;
let o1: Rx.Observable<[number, string, boolean, string[]]> = Observable.combineLatest(a, b, c, d);
let o2: Rx.Observable<boolean> = Observable.combineLatest(a, b, c, d, (aa, bb, cc, dd) => !!aa && !!bb && cc && !!dd.length);
/* tslint:enable:no-unused-variable */
});
});

it('should support arrays of promises', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>[];
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
let o2: Rx.Observable<number[]> = Observable.combineLatest(...a);
let o3: Rx.Observable<number> = Observable.combineLatest(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});
});

it('should support arrays of observables', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>[];
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
let o2: Rx.Observable<number[]> = Observable.combineLatest(...a);
let o3: Rx.Observable<number> = Observable.combineLatest(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});
});

it('should return Array<T> when given a single promise', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
/* tslint:enable:no-unused-variable */
});
});

it('should return Array<T> when given a single observable', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
/* tslint:enable:no-unused-variable */
});
type('should support promises', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Promise<string>;
let c: Promise<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.combineLatest(a, b, c);
let o2: Rx.Observable<boolean> = Observable.combineLatest(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});

type('should support observables', () => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let b: Rx.Observable<string>;
let c: Rx.Observable<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.combineLatest(a, b, c);
let o2: Rx.Observable<boolean> = Observable.combineLatest(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});

type('should support mixed observables and promises', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Rx.Observable<string>;
let c: Promise<boolean>;
let d: Rx.Observable<string[]>;
let o1: Rx.Observable<[number, string, boolean, string[]]> = Observable.combineLatest(a, b, c, d);
let o2: Rx.Observable<boolean> = Observable.combineLatest(a, b, c, d, (aa, bb, cc, dd) => !!aa && !!bb && cc && !!dd.length);
/* tslint:enable:no-unused-variable */
});

type('should support arrays of promises', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>[];
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
let o2: Rx.Observable<number[]> = Observable.combineLatest(...a);
let o3: Rx.Observable<number> = Observable.combineLatest(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});

type('should support arrays of observables', () => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>[];
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
let o2: Rx.Observable<number[]> = Observable.combineLatest(...a);
let o3: Rx.Observable<number> = Observable.combineLatest(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});

type('should return Array<T> when given a single promise', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
/* tslint:enable:no-unused-variable */
});

type('should return Array<T> when given a single observable', () => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let o1: Rx.Observable<number[]> = Observable.combineLatest(a);
/* tslint:enable:no-unused-variable */
});
});
136 changes: 61 additions & 75 deletions spec/observables/forkJoin-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -360,80 +360,66 @@ describe('Observable.forkJoin', () => {
expectSubscriptions(e2.subscriptions).toBe(e2subs);
});

it('should support promises', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Promise<string>;
let c: Promise<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.forkJoin(a, b, c);
let o2: Rx.Observable<boolean> = Observable.forkJoin(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});
});

it('should support observables', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let b: Rx.Observable<string>;
let c: Rx.Observable<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.forkJoin(a, b, c);
let o2: Rx.Observable<boolean> = Observable.forkJoin(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});
});

it('should support mixed observables and promises', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Rx.Observable<string>;
let c: Promise<boolean>;
let d: Rx.Observable<string[]>;
let o1: Rx.Observable<[number, string, boolean, string[]]> = Observable.forkJoin(a, b, c, d);
let o2: Rx.Observable<boolean> = Observable.forkJoin(a, b, c, d, (aa, bb, cc, dd) => !!aa && !!bb && cc && !!dd.length);
/* tslint:enable:no-unused-variable */
});
});

it('should support arrays of promises', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>[];
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
let o2: Rx.Observable<number[]> = Observable.forkJoin(...a);
let o3: Rx.Observable<number> = Observable.forkJoin(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});
});

it('should support arrays of observables', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>[];
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
let o2: Rx.Observable<number[]> = Observable.forkJoin(...a);
let o3: Rx.Observable<number> = Observable.forkJoin(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});
});

it('should return Array<T> when given a single promise', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
/* tslint:enable:no-unused-variable */
});
});

it('should return Array<T> when given a single observable', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
/* tslint:enable:no-unused-variable */
});
type('should support promises', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Promise<string>;
let c: Promise<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.forkJoin(a, b, c);
let o2: Rx.Observable<boolean> = Observable.forkJoin(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});

type('should support observables', () => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let b: Rx.Observable<string>;
let c: Rx.Observable<boolean>;
let o1: Rx.Observable<[number, string, boolean]> = Observable.forkJoin(a, b, c);
let o2: Rx.Observable<boolean> = Observable.forkJoin(a, b, c, (aa, bb, cc) => !!aa && !!bb && cc);
/* tslint:enable:no-unused-variable */
});

type('should support mixed observables and promises', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let b: Rx.Observable<string>;
let c: Promise<boolean>;
let d: Rx.Observable<string[]>;
let o1: Rx.Observable<[number, string, boolean, string[]]> = Observable.forkJoin(a, b, c, d);
let o2: Rx.Observable<boolean> = Observable.forkJoin(a, b, c, d, (aa, bb, cc, dd) => !!aa && !!bb && cc && !!dd.length);
/* tslint:enable:no-unused-variable */
});

type('should support arrays of promises', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>[];
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
let o2: Rx.Observable<number[]> = Observable.forkJoin(...a);
let o3: Rx.Observable<number> = Observable.forkJoin(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});

type('should support arrays of observables', () => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>[];
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
let o2: Rx.Observable<number[]> = Observable.forkJoin(...a);
let o3: Rx.Observable<number> = Observable.forkJoin(a, (...x) => x.length);
/* tslint:enable:no-unused-variable */
});

type('should return Array<T> when given a single promise', () => {
/* tslint:disable:no-unused-variable */
let a: Promise<number>;
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
/* tslint:enable:no-unused-variable */
});

type('should return Array<T> when given a single observable', () => {
/* tslint:disable:no-unused-variable */
let a: Rx.Observable<number>;
let o1: Rx.Observable<number[]> = Observable.forkJoin(a);
/* tslint:enable:no-unused-variable */
});
});
24 changes: 10 additions & 14 deletions spec/observables/from-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,22 +24,18 @@ describe('Observable.from', () => {
expect(r).to.throw();
});

it('should return T for ObservableLike objects', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let o1: Rx.Observable<number> = Observable.from(<number[]>[], Rx.Scheduler.asap);
let o2: Rx.Observable<{ a: string }> = Observable.from(Observable.empty<{ a: string }>());
let o3: Rx.Observable<{ b: number }> = Observable.from(new Promise<{b: number}>(resolve => resolve()));
/* tslint:enable:no-unused-variable */
});
type('should return T for ObservableLike objects', () => {
/* tslint:disable:no-unused-variable */
let o1: Rx.Observable<number> = Observable.from(<number[]>[], Rx.Scheduler.asap);
let o2: Rx.Observable<{ a: string }> = Observable.from(Observable.empty<{ a: string }>());
let o3: Rx.Observable<{ b: number }> = Observable.from(new Promise<{b: number}>(resolve => resolve()));
/* tslint:enable:no-unused-variable */
});

it('should return T for arrays', () => {
type(() => {
/* tslint:disable:no-unused-variable */
let o1: Rx.Observable<number> = Observable.from(<number[]>[], Rx.Scheduler.asap);
/* tslint:enable:no-unused-variable */
});
type('should return T for arrays', () => {
/* tslint:disable:no-unused-variable */
let o1: Rx.Observable<number> = Observable.from(<number[]>[], Rx.Scheduler.asap);
/* tslint:enable:no-unused-variable */
});

const fakervable = (...values) => ({
Expand Down
Loading

0 comments on commit a922087

Please sign in to comment.