File tree Expand file tree Collapse file tree 2 files changed +11
-6
lines changed
src/scalecube-services/services
test/scalecube-services/services Expand file tree Collapse file tree 2 files changed +11
-6
lines changed Original file line number Diff line number Diff line change 2
2
3
3
import { Router , Message , utils } from 'src/scalecube-services/services' ;
4
4
import { Observable } from 'rxjs/Observable' ;
5
+ // $FlowFixMe
6
+ import 'rxjs/add/operator/catch' ;
7
+
5
8
6
9
const isObservable = ( obj : any ) : boolean => {
7
10
if ( obj . constructor . name === 'Observable' ) {
@@ -60,12 +63,14 @@ export class ServiceCall {
60
63
observer . error ( new Error ( `Service not found error: ${ message . serviceName } .${ message . method } ` ) ) ;
61
64
} else if ( utils . isLoader ( inst ) ) {
62
65
let unsubscribe ;
63
- const promise = inst . service . promise ;
64
- promise . then ( ( service ) => {
65
- unsubscribe = createServiceObserver ( message , service , observer ) ;
66
+ const promise = new Promise ( resolve => {
67
+ inst . service . promise . then ( ( service ) => {
68
+ resolve ( createServiceObserver ( message , service , observer ) ) ;
69
+ } ) . catch ( e => observer . error ( e ) ) ;
70
+
66
71
} ) ;
67
72
return ( ) => {
68
- promise . then ( ( ) => unsubscribe ( ) )
73
+ promise . then ( unsubscribe => unsubscribe ( ) ) ;
69
74
} ;
70
75
} else {
71
76
return createServiceObserver ( message , inst . service , observer ) ;
Original file line number Diff line number Diff line change @@ -34,7 +34,7 @@ describe('Greeting suite', () => {
34
34
. create ( ) ;
35
35
36
36
expect . assertions ( 1 ) ;
37
- return expect ( ) . rejects . toEqual ( new Error ( "please provide user to greet" ) ) ;
37
+ return expect ( greetingService . hello ( ) ) . rejects . toEqual ( new Error ( "please provide user to greet" ) ) ;
38
38
39
39
} ) ;
40
40
it ( 'Greeting.repeatToStream should return observable of greetings ' , ( ) => {
@@ -95,7 +95,7 @@ describe('Greeting suite', () => {
95
95
. api ( GreetingService )
96
96
. create ( ) ;
97
97
98
- expect . assertions ( 1 ) ;
98
+ expect . assertions ( 1 ) ;
99
99
greetingService . repeatToStream ( 'hey' , 'hello' ) . subscribe ( ) . unsubscribe ( ) ;
100
100
expect ( window [ 'repeatToStreamUnsubscribe' ] ) . toBe ( true ) ;
101
101
} ) ;
You can’t perform that action at this time.
0 commit comments