@@ -1216,32 +1216,32 @@ module.exports = function() {
1216
1216
describe ( 'metadata projection' , function ( ) {
1217
1217
it ( 'passed metadata to connect' , function ( done ) {
1218
1218
var metadata = { username : 'user' } ;
1219
-
1219
+
1220
1220
this . backend . use ( 'connect' , function ( request , next ) {
1221
1221
Object . assign ( request . agent . custom , request . req ) ;
1222
1222
next ( ) ;
1223
1223
} ) ;
1224
-
1224
+
1225
1225
var connection = this . backend . connect ( undefined , metadata ) ;
1226
1226
connection . on ( 'connected' , function ( ) {
1227
1227
expect ( connection . agent . custom ) . eql ( metadata ) ;
1228
1228
done ( ) ;
1229
1229
} ) ;
1230
1230
} ) ;
1231
-
1231
+
1232
1232
it ( 'passed metadata to submit' , function ( done ) {
1233
1233
var metadata = { username : 'user' } ;
1234
-
1234
+
1235
1235
this . backend . use ( 'connect' , function ( request , next ) {
1236
1236
Object . assign ( request . agent . custom , request . req ) ;
1237
1237
next ( ) ;
1238
1238
} ) ;
1239
-
1239
+
1240
1240
this . backend . use ( 'submit' , function ( request ) {
1241
1241
expect ( request . agent . custom ) . eql ( metadata ) ;
1242
1242
done ( ) ;
1243
1243
} ) ;
1244
-
1244
+
1245
1245
var connection = this . backend . connect ( undefined , metadata ) ;
1246
1246
var doc = null ;
1247
1247
connection . on ( 'connected' , function ( ) {
@@ -1252,22 +1252,22 @@ module.exports = function() {
1252
1252
} ) ;
1253
1253
} ) ;
1254
1254
} ) ;
1255
-
1255
+
1256
1256
it ( 'received local op without metadata' , function ( done ) {
1257
1257
var metadata = { username : 'user' } ;
1258
-
1258
+
1259
1259
this . backend . use ( 'connect' , function ( request , next ) {
1260
1260
Object . assign ( request . agent . custom , request . req ) ;
1261
1261
next ( ) ;
1262
1262
} ) ;
1263
-
1263
+
1264
1264
this . backend . use ( 'submit' , function ( request , next ) {
1265
1265
expect ( request . agent . custom ) . eql ( metadata ) ;
1266
1266
Object . assign ( request . op . m , request . agent . custom ) ;
1267
1267
request . opMetadataProjection = { username : true } ;
1268
1268
next ( ) ;
1269
1269
} ) ;
1270
-
1270
+
1271
1271
var connection = this . backend . connect ( undefined , metadata ) ;
1272
1272
var doc = null ;
1273
1273
connection . on ( 'connected' , function ( ) {
@@ -1289,14 +1289,14 @@ module.exports = function() {
1289
1289
Object . assign ( request . agent . custom , request . req ) ;
1290
1290
next ( ) ;
1291
1291
} ) ;
1292
-
1292
+
1293
1293
this . backend . use ( 'submit' , function ( request , next ) {
1294
1294
expect ( request . agent . custom ) . to . have . property ( 'username' ) ;
1295
1295
Object . assign ( request . op . m , request . agent . custom ) ;
1296
1296
request . opMetadataProjection = { username : true } ;
1297
1297
next ( ) ;
1298
1298
} ) ;
1299
-
1299
+
1300
1300
this . backend . use ( 'apply' , function ( request , next ) {
1301
1301
expect ( request . op . m ) . to . have . property ( 'username' ) ;
1302
1302
next ( ) ;
@@ -1311,25 +1311,25 @@ module.exports = function() {
1311
1311
expect ( request . op . m ) . to . have . property ( 'username' ) ;
1312
1312
next ( ) ;
1313
1313
} ) ;
1314
-
1314
+
1315
1315
var subscriberCount = 10 ;
1316
1316
var subscriberOpCount = 10 ;
1317
-
1317
+
1318
1318
var metadatas = [ ] ;
1319
1319
for ( var i = 0 ; i < subscriberCount ; i ++ ) {
1320
1320
metadatas [ i ] = { username : 'user-' + i } ;
1321
1321
}
1322
-
1322
+
1323
1323
var ops = [ ] ;
1324
1324
for ( var i = 0 ; i < subscriberCount ; i ++ ) {
1325
1325
ops [ i ] = [ ] ;
1326
1326
for ( var j = 0 ; j < subscriberOpCount ; j ++ ) {
1327
1327
ops [ i ] . push ( { p : [ 'tricks ' + i + ' ' + j ] , oi : 1 } ) ;
1328
1328
}
1329
1329
}
1330
-
1330
+
1331
1331
var docs = [ ] ;
1332
-
1332
+
1333
1333
function submitOps ( ) {
1334
1334
for ( var j = 0 ; j < subscriberOpCount ; j ++ ) {
1335
1335
for ( var i = 0 ; i < subscriberCount ; i ++ ) {
@@ -1338,7 +1338,7 @@ module.exports = function() {
1338
1338
}
1339
1339
}
1340
1340
}
1341
-
1341
+
1342
1342
function validateAndDone ( ) {
1343
1343
var firstDoc = docs [ 0 ] ;
1344
1344
// validate that all documents across connections are in sync
@@ -1348,46 +1348,44 @@ module.exports = function() {
1348
1348
}
1349
1349
done ( ) ;
1350
1350
} ;
1351
-
1351
+
1352
1352
var submitOpsAfter = util . callAfter ( subscriberCount - 1 , submitOps ) ;
1353
1353
var doneAfter = util . callAfter ( ( subscriberCount * subscriberCount * subscriberOpCount ) - 1 , validateAndDone ) ;
1354
-
1354
+
1355
1355
function getDoc ( callback ) {
1356
1356
var thisDoc = this ;
1357
1357
thisDoc . fetch ( function ( ) {
1358
1358
if ( ! thisDoc . data ) {
1359
- return thisDoc . create ( { } , function ( ) {
1360
- thisDoc . subscribe ( callback ) ;
1361
- } ) ;
1362
- }
1363
- thisDoc . subscribe ( callback ) ;
1359
+ return thisDoc . create ( { } , function ( ) {
1360
+ thisDoc . subscribe ( callback ) ;
1361
+ } ) ;
1362
+ }
1363
+ thisDoc . subscribe ( callback ) ;
1364
1364
} ) ;
1365
1365
}
1366
-
1366
+
1367
1367
for ( var i = 0 ; i < subscriberCount ; i ++ ) {
1368
1368
var metadata = metadatas [ i ] ;
1369
-
1369
+
1370
1370
var connection = this . backend . connect ( undefined , Object . assign ( { } , metadata ) ) ;
1371
1371
connection . __test_metadata = Object . assign ( { } , metadata ) ;
1372
1372
connection . __test_id = i ;
1373
-
1373
+
1374
1374
connection . on ( 'connected' , function ( ) {
1375
1375
var thisConnection = this ;
1376
-
1376
+
1377
1377
expect ( thisConnection . agent . custom ) . eql ( thisConnection . __test_metadata ) ;
1378
-
1378
+
1379
1379
thisConnection . doc = docs [ thisConnection . __test_id ] = thisConnection . get ( 'dogs' , 'fido' ) ;
1380
-
1381
- thisConnection . doc . on ( 'op' , function ( op , source , src , context ) {
1380
+
1381
+ thisConnection . doc . on ( 'op' , function ( ) {
1382
1382
doneAfter ( ) ;
1383
1383
} ) ;
1384
-
1384
+
1385
1385
getDoc . bind ( thisConnection . doc ) ( submitOpsAfter ) ;
1386
1386
} ) ;
1387
1387
}
1388
1388
} ) ;
1389
-
1390
1389
} ) ;
1391
-
1392
1390
} ) ;
1393
1391
} ;
0 commit comments