@@ -8,6 +8,24 @@ const Observable = Rx.Observable;
88/** @test {bindNodeCallback} */
99describe ( 'Observable.bindNodeCallback' , ( ) => {
1010 describe ( 'when not scheduled' , ( ) => {
11+ it ( 'should emit undefined when callback is called without success arguments' , ( ) => {
12+ function callback ( cb ) {
13+ cb ( null ) ;
14+ }
15+
16+ const boundCallback = Observable . bindNodeCallback ( callback ) ;
17+ const results = [ ] ;
18+
19+ boundCallback ( )
20+ . subscribe ( ( x : any ) => {
21+ results . push ( typeof x ) ;
22+ } , null , ( ) => {
23+ results . push ( 'done' ) ;
24+ } ) ;
25+
26+ expect ( results ) . to . deep . equal ( [ 'undefined' , 'done' ] ) ;
27+ } ) ;
28+
1129 it ( 'should emit one value from a callback' , ( ) => {
1230 function callback ( datum , cb ) {
1331 cb ( null , datum ) ;
@@ -126,6 +144,26 @@ describe('Observable.bindNodeCallback', () => {
126144 } ) ;
127145
128146 describe ( 'when scheduled' , ( ) => {
147+ it ( 'should emit undefined when callback is called without success arguments' , ( ) => {
148+ function callback ( cb ) {
149+ cb ( null ) ;
150+ }
151+
152+ const boundCallback = Observable . bindNodeCallback ( callback , null , rxTestScheduler ) ;
153+ const results = [ ] ;
154+
155+ boundCallback ( )
156+ . subscribe ( ( x : any ) => {
157+ results . push ( typeof x ) ;
158+ } , null , ( ) => {
159+ results . push ( 'done' ) ;
160+ } ) ;
161+
162+ rxTestScheduler . flush ( ) ;
163+
164+ expect ( results ) . to . deep . equal ( [ 'undefined' , 'done' ] ) ;
165+ } ) ;
166+
129167 it ( 'should emit one value from a callback' , ( ) => {
130168 function callback ( datum , cb ) {
131169 cb ( null , datum ) ;
0 commit comments