1
1
import { Notification , Observable , Subscription } from 'rxjs' ;
2
- import { AsyncAction } from 'rxjs/internal/scheduler/AsyncAction' ;
3
- import {
4
- VirtualAction ,
5
- VirtualTimeScheduler
6
- } from 'rxjs/internal/scheduler/VirtualTimeScheduler' ;
7
- import { ColdObservable } from 'rxjs/internal/testing/ColdObservable' ;
8
- import { HotObservable } from 'rxjs/internal/testing/HotObservable' ;
2
+ import { AsyncAction } from 'rxjs/dist/types/internal/scheduler/AsyncAction' ;
9
3
import { parseObservableMarble } from '../marbles/parseObservableMarble' ;
10
4
import { SubscriptionMarbleToken } from '../marbles/SubscriptionMarbleToken' ;
11
5
import { TestMessage } from '../message/TestMessage' ;
12
6
import { TestMessageValue } from '../message/TestMessage' ;
13
7
import { calculateSubscriptionFrame } from './calculateSubscriptionFrame' ;
14
8
9
+ //tslint:disable no-var-requires no-require-imports
10
+ const {
11
+ VirtualAction,
12
+ VirtualTimeScheduler,
13
+ } : {
14
+ VirtualAction : typeof import ( 'rxjs/dist/types/internal/scheduler/VirtualTimeScheduler' ) . VirtualAction ;
15
+ VirtualTimeScheduler : typeof import ( 'rxjs/dist/types/internal/scheduler/VirtualTimeScheduler' ) . VirtualTimeScheduler ;
16
+ } = require ( 'rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler' ) ;
17
+
18
+ const hotObservableCtor = require ( 'rxjs/dist/cjs/internal/testing/HotObservable' ) . HotObservable ;
19
+ const coldObservableCtor = require ( 'rxjs/dist/cjs/internal/testing/ColdObservable' ) . ColdObservable ;
20
+ //tslint:enable no-var-requires no-require-imports
21
+
15
22
/**
16
23
* @internal
17
24
*/
18
25
class TestScheduler extends VirtualTimeScheduler {
19
- private readonly coldObservables : Array < ColdObservable < any > > = [ ] ;
20
- private readonly hotObservables : Array < HotObservable < any > > = [ ] ;
26
+ private readonly coldObservables : Array <
27
+ import ( 'rxjs/dist/types/internal/testing/ColdObservable' ) . ColdObservable < any >
28
+ > = [ ] ;
29
+ private readonly hotObservables : Array <
30
+ import ( 'rxjs/dist/types/internal/testing/HotObservable' ) . HotObservable < any >
31
+ > = [ ] ;
21
32
private flushed : boolean = false ;
22
33
private flushing : boolean = false ;
23
34
@@ -75,9 +86,17 @@ class TestScheduler extends VirtualTimeScheduler {
75
86
return observableMetadata ;
76
87
}
77
88
78
- public createColdObservable < T = string > ( marble : string , value ?: { [ key : string ] : T } | null , error ?: any ) : ColdObservable < T > ;
79
- public createColdObservable < T = string > ( message : Array < TestMessage < T > > ) : ColdObservable < T > ;
80
- public createColdObservable < T = string > ( ...args : Array < any > ) : ColdObservable < T > {
89
+ public createColdObservable < T = string > (
90
+ marble : string ,
91
+ value ?: { [ key : string ] : T } | null ,
92
+ error ?: any
93
+ ) : import ( 'rxjs/dist/types/internal/testing/ColdObservable' ) . ColdObservable < T > ;
94
+ public createColdObservable < T = string > (
95
+ message : Array < TestMessage < T > >
96
+ ) : import ( 'rxjs/dist/types/internal/testing/ColdObservable' ) . ColdObservable < T > ;
97
+ public createColdObservable < T = string > (
98
+ ...args : Array < any >
99
+ ) : import ( 'rxjs/dist/types/internal/testing/ColdObservable' ) . ColdObservable < T > {
81
100
const [ marbleValue , value , error ] = args ;
82
101
83
102
if ( typeof marbleValue === 'string' && marbleValue . indexOf ( SubscriptionMarbleToken . SUBSCRIBE ) !== - 1 ) {
@@ -86,21 +105,29 @@ class TestScheduler extends VirtualTimeScheduler {
86
105
87
106
const messages = Array . isArray ( marbleValue )
88
107
? marbleValue
89
- : parseObservableMarble ( marbleValue , value , error , false , this . frameTimeFactor , this . _maxFrame ) as any ;
90
- const observable = new ColdObservable < T > ( messages as Array < TestMessage < T | Array < TestMessage < T > > > > , this ) ;
108
+ : ( parseObservableMarble ( marbleValue , value , error , false , this . frameTimeFactor , this . _maxFrame ) as any ) ;
109
+ const observable = new coldObservableCtor ( messages as Array < TestMessage < T | Array < TestMessage < T > > > > , this ) ;
91
110
this . coldObservables . push ( observable ) ;
92
111
return observable ;
93
112
}
94
113
95
- public createHotObservable < T = string > ( marble : string , value ?: { [ key : string ] : T } | null , error ?: any ) : HotObservable < T > ;
96
- public createHotObservable < T = string > ( message : Array < TestMessage < T > > ) : HotObservable < T > ;
97
- public createHotObservable < T = string > ( ...args : Array < any > ) : HotObservable < T > {
114
+ public createHotObservable < T = string > (
115
+ marble : string ,
116
+ value ?: { [ key : string ] : T } | null ,
117
+ error ?: any
118
+ ) : import ( 'rxjs/dist/types/internal/testing/HotObservable' ) . HotObservable < T > ;
119
+ public createHotObservable < T = string > (
120
+ message : Array < TestMessage < T > >
121
+ ) : import ( 'rxjs/dist/types/internal/testing/HotObservable' ) . HotObservable < T > ;
122
+ public createHotObservable < T = string > (
123
+ ...args : Array < any >
124
+ ) : import ( 'rxjs/dist/types/internal/testing/HotObservable' ) . HotObservable < T > {
98
125
const [ marbleValue , value , error ] = args ;
99
126
100
127
const messages = Array . isArray ( marbleValue )
101
128
? marbleValue
102
- : parseObservableMarble ( marbleValue , value , error , false , this . frameTimeFactor , this . _maxFrame ) as any ;
103
- const subject = new HotObservable < T > ( messages as Array < TestMessage < T | Array < TestMessage < T > > > > , this ) ;
129
+ : ( parseObservableMarble ( marbleValue , value , error , false , this . frameTimeFactor , this . _maxFrame ) as any ) ;
130
+ const subject = new hotObservableCtor ( messages as Array < TestMessage < T | Array < TestMessage < T > > > > , this ) ;
104
131
this . hotObservables . push ( subject ) ;
105
132
return subject ;
106
133
}
@@ -124,8 +151,8 @@ class TestScheduler extends VirtualTimeScheduler {
124
151
innerObservableMetadata . push ( new TestMessageValue < T > ( this . frame - outerFrame , notification ) ) ;
125
152
126
153
observable . subscribe (
127
- value => pushMetaData ( Notification . createNext ( value ) ) ,
128
- err => pushMetaData ( Notification . createError ( err ) ) ,
154
+ ( value ) => pushMetaData ( Notification . createNext ( value ) ) ,
155
+ ( err ) => pushMetaData ( Notification . createError ( err ) ) ,
129
156
( ) => pushMetaData ( Notification . createComplete ( ) )
130
157
) ;
131
158
@@ -177,4 +204,4 @@ class TestScheduler extends VirtualTimeScheduler {
177
204
}
178
205
}
179
206
180
- export { TestScheduler } ;
207
+ export { TestScheduler , VirtualTimeScheduler } ;
0 commit comments