11var test = require ( 'tape' ) ;
22var dopServer = require ( '../../dist/nodejs' ) . create ( ) ;
33var dopClient = require ( '../../dist/nodejs' ) . create ( ) ;
4+ var dopClientClient = require ( '../../dist/nodejs' ) . create ( ) ;
45dopServer . env = 'SERVER' ;
56dopClient . env = 'CLIENT' ;
7+ dopClientClient . env = 'CLIENTCLIENT' ;
68dopServer . data . object_inc = 7 ;
79
810
@@ -12,14 +14,12 @@ var transportConnect = require('dop-transports').connect[transportName];
1214
1315var server = dopServer . listen ( { transport :transportListen } )
1416var client = dopClient . connect ( { transport :transportConnect , listener :server } )
15- server . on ( 'connect' , function ( node ) {
16- if ( typeof serverClient == 'undefined' )
17- serverClient = node ;
18- } )
17+ var clientlisten = dopClient . listen ( { transport :transportListen } )
18+ var clientclient = dopClientClient . connect ( { transport :transportConnect , listener :clientlisten } )
19+
1920
2021var objServer = dopServer . register ( {
2122 string : function ( ) {
22- tglobal . equal ( objServer , this , 'Scope when calling remote is the same that calling locally' )
2323 return 'Hello world' ;
2424 } ,
2525 undefined : function ( ) {
@@ -29,6 +29,7 @@ var objServer = dopServer.register({
2929 return { hola :"mundo" }
3030 } ,
3131 sum : function ( a , b ) {
32+ tglobal . equal ( objServer , this , 'Scope when calling remote is the same that calling locally' )
3233 return a + b ;
3334 } ,
3435 resolve : function ( req ) {
@@ -53,9 +54,20 @@ dopServer.onsubscribe(function() {
5354 return objServer ;
5455} )
5556
57+
58+ var objClient = dopClient . register ( { } ) ;
59+ dopClient . onsubscribe ( function ( ) {
60+ return objClient ;
61+ } )
62+
63+
64+
65+
66+
67+
5668test ( 'TESTING RESOLVE AN REJECTS' , function ( t ) {
5769
58- client . subscribe ( ) . then ( function ( obj ) {
70+ client . subscribe ( ) . into ( objClient ) . then ( function ( obj ) {
5971 tglobal = t ;
6072 obj . string ( )
6173 . then ( function ( value ) {
@@ -100,3 +112,52 @@ client.subscribe().then(function(obj) {
100112} )
101113
102114
115+ test ( 'CALLING A FUNCTIONS BY TWO LEVELS' , function ( t ) {
116+
117+ objClient . sum = function ( a , b ) {
118+ return a + a + b + b ;
119+ } ;
120+
121+ clientclient . subscribe ( ) . then ( function ( obj ) {
122+ tglobal = t ;
123+ obj . string ( )
124+ . then ( function ( value ) {
125+ t . equal ( 'Hello world' , value , 'Returning a string' ) ;
126+ return obj . undefined ( ) ;
127+ } )
128+ . then ( function ( value ) {
129+ t . equal ( undefined , value , 'Returning nothing' ) ;
130+ return obj . object ( ) ;
131+ } )
132+ . then ( function ( value ) {
133+ t . equal ( value . hola , 'mundo' , 'Returning an object' ) ;
134+ return obj . sum ( 2 , 2 ) ;
135+ } )
136+ . then ( function ( value ) {
137+ t . equal ( value , 8 , 'Passing two parameters' ) ;
138+ return obj . resolve ( ) ;
139+ } )
140+ . then ( function ( value ) {
141+ t . equal ( value , 'resolved' , 'req.resolve instead of return' ) ;
142+ return obj . resolveAsync ( ) ;
143+ } )
144+ . then ( function ( value ) {
145+ t . equal ( value , 'resolveAsync' , 'Resolved async' ) ;
146+ return obj . reject ( ) ;
147+ } )
148+ . catch ( function ( value ) {
149+ t . equal ( value , 'rejected' , 'req.reject' ) ;
150+ return obj . reject0 ( ) ;
151+ } )
152+ . catch ( function ( value ) {
153+ t . equal ( value , 0 , 'Rejecting cero value' ) ;
154+ delete objClient . sum ;
155+ return obj . sum ( ) ;
156+ } )
157+ . catch ( function ( value ) {
158+ t . equal ( value , dopClient . core . error . reject_remote [ 3 ] , dopClient . core . error . reject_remote . FUNCTION_NOT_FOUND ) ;
159+ t . end ( )
160+ } )
161+ } )
162+
163+ } )
0 commit comments