@@ -304,32 +304,33 @@ public void testBigFile() throws IOException {
304
304
DLFileSystem driveA =DLFS .createLocal ();
305
305
DLFileSystem driveB =DLFS .createLocal ();
306
306
307
+ long TS =1000 ;
307
308
{ // create two files, check timestamp
308
- setDriveTimes (1000 ,driveA ,driveB );
309
+ setDriveTimes (TS ,driveA ,driveB );
309
310
AVector <ACell > nodeA =driveA .createFile (driveA .getPath ("foo" ));
310
311
AVector <ACell > nodeB =driveB .createFile (driveB .getPath ("bar" ));
311
312
assertEquals (nodeA , nodeB ); // should be identical nodes
312
- assertEquals (1000 ,DLFSNode .getUTime (nodeA ).longValue ());
313
+ assertEquals (TS ,DLFSNode .getUTime (nodeA ).longValue ());
313
314
314
- assertEquals (1000 ,driveB .getFileAttributes (driveB .getPath ("bar" )).lastModifiedTime ().toMillis ());
315
+ assertEquals (TS ,driveB .getFileAttributes (driveB .getPath ("bar" )).lastModifiedTime ().toMillis ());
315
316
}
316
317
317
318
{ // create two directory trees
318
- setDriveTimes (1001 ,driveA ,driveB );
319
+ setDriveTimes (TS + 1 ,driveA ,driveB );
319
320
Files .createDirectories (driveA .getPath ("tree/a" ));
320
321
Files .createDirectories (driveB .getPath ("tree/b" ));
321
322
}
322
323
323
324
{ // create conflict at same time
324
- setDriveTimes (1002 ,driveA ,driveB );
325
+ setDriveTimes (TS + 2 ,driveA ,driveB );
325
326
Files .createDirectories (driveA .getPath ("conflict" ));
326
327
Files .createFile (driveB .getPath ("conflict" ));
327
328
}
328
329
329
330
{ // create conflict at same time
330
- setDriveTimes (1003 ,driveA );
331
+ setDriveTimes (TS + 3 ,driveA );
331
332
Files .createDirectories (driveA .getPath ("conflict2" ));
332
- setDriveTimes (1004 ,driveB );
333
+ setDriveTimes (TS + 4 ,driveB );
333
334
Files .createFile (driveB .getPath ("conflict2" ));
334
335
}
335
336
@@ -344,21 +345,21 @@ public void testBigFile() throws IOException {
344
345
assertTrue (Files .isRegularFile (driveA .getPath ("conflict2" ))); // should prefer newer timestamp from b
345
346
346
347
// root timestamp for drive A should be time of merge. Some files may be past that
347
- assertEquals (1003 ,driveA .getFileAttributes (driveA .getPath ("/" )).lastModifiedTime ().toMillis ());
348
- assertEquals (1004 ,driveA .getFileAttributes (driveA .getPath ("/conflict2" )).lastModifiedTime ().toMillis ());
348
+ assertEquals (TS + 3 ,driveA .getFileAttributes (driveA .getPath ("/" )).lastModifiedTime ().toMillis ());
349
+ assertEquals (TS + 4 ,driveA .getFileAttributes (driveA .getPath ("/conflict2" )).lastModifiedTime ().toMillis ());
349
350
350
- setDriveTimes (1005 ,driveA ,driveB );
351
+ setDriveTimes (TS + 5 ,driveA ,driveB );
351
352
driveB .replicate (driveA );
352
353
assertTrue (Files .isRegularFile (driveB .getPath ("conflict" ))); // should prefer current value at same timestamp
353
- assertEquals (1005 ,Files .getLastModifiedTime (driveB .getPath ("/" )).toMillis ()); // something got updated
354
+ assertEquals (TS + 5 ,Files .getLastModifiedTime (driveB .getPath ("/" )).toMillis ()); // something got updated
354
355
355
356
// Delete conflicting file, should make a tombstone!
356
357
Files .delete (driveA .getPath ("conflict" ));
357
358
358
359
// Replicate both ways, should get same root hash with no conflicts
359
360
driveA .replicate (driveB );
360
361
driveB .replicate (driveA );
361
- assertEquals (1005 ,Files .getLastModifiedTime (driveA .getPath ("/" )).toMillis ()); // something got updated
362
+ assertEquals (TS + 5 ,Files .getLastModifiedTime (driveA .getPath ("/" )).toMillis ()); // something got updated
362
363
assertEquals (driveA .getRootHash (),driveB .getRootHash ());
363
364
}
364
365
0 commit comments