@@ -312,6 +312,10 @@ public void doNotSwitch()
312
312
createTestBlockCapsule (
313
313
num + 2 , blockCapsule1 .getBlockId ().getByteString (), addressToProvateKeys );
314
314
315
+ logger .info ("******block0:" + blockCapsule0 );
316
+ logger .info ("******block1:" + blockCapsule1 );
317
+ logger .info ("******block2:" + blockCapsule2 );
318
+
315
319
dbManager .pushBlock (blockCapsule0 );
316
320
dbManager .pushBlock (blockCapsule1 );
317
321
context .getBean (KhaosDatabase .class ).removeBlk (dbManager .getBlockIdByNum (num ));
@@ -323,12 +327,38 @@ public void doNotSwitch()
323
327
Assert .assertNotNull (dbManager .getBlockStore ().get (blockCapsule0 .getBlockId ().getBytes ()));
324
328
Assert .assertEquals (blockCapsule0 .getBlockId (),
325
329
dbManager .getBlockStore ().get (blockCapsule0 .getBlockId ().getBytes ()).getBlockId ());
330
+ Assert .assertEquals (blockCapsule0 .getBlockId (),
331
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ());
326
332
exception = e ;
327
333
}
328
334
329
335
if (exception == null ) {
330
336
throw new IllegalStateException ();
331
337
}
338
+
339
+ BlockCapsule blockCapsule3 =
340
+ createTestBlockCapsule (
341
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderNumber () + 1 ,
342
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ().getByteString (), addressToProvateKeys );
343
+ logger .info ("******block3:" + blockCapsule3 );
344
+ dbManager .pushBlock (blockCapsule3 );
345
+
346
+ Assert .assertEquals (blockCapsule3 .getBlockId (),
347
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ());
348
+ Assert .assertEquals (blockCapsule3 .getBlockId (),
349
+ dbManager .getBlockStore ().get (dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ().getBytes ()).getBlockId ());
350
+
351
+ BlockCapsule blockCapsule4 =
352
+ createTestBlockCapsule (
353
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderNumber () + 1 ,
354
+ blockCapsule3 .getBlockId ().getByteString (), addressToProvateKeys );
355
+ logger .info ("******block4:" + blockCapsule4 );
356
+ dbManager .pushBlock (blockCapsule4 );
357
+
358
+ Assert .assertEquals (blockCapsule4 .getBlockId (),
359
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ());
360
+ Assert .assertEquals (blockCapsule4 .getBlockId (),
361
+ dbManager .getBlockStore ().get (dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ().getBytes ()).getBlockId ());
332
362
}
333
363
334
364
@ Test
@@ -380,6 +410,28 @@ public void switchBack()
380
410
Assert .assertNotNull (dbManager .getBlockStore ().get (blockCapsule0 .getBlockId ().getBytes ()));
381
411
Assert .assertEquals (blockCapsule0 .getBlockId (),
382
412
dbManager .getBlockStore ().get (blockCapsule0 .getBlockId ().getBytes ()).getBlockId ());
413
+
414
+ BlockCapsule blockCapsule3 =
415
+ createTestBlockCapsule (
416
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderNumber () + 1 ,
417
+ blockCapsule0 .getBlockId ().getByteString (), addressToProvateKeys );
418
+ dbManager .pushBlock (blockCapsule3 );
419
+
420
+ Assert .assertEquals (blockCapsule3 .getBlockId (),
421
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ());
422
+ Assert .assertEquals (blockCapsule3 .getBlockId (),
423
+ dbManager .getBlockStore ().get (dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ().getBytes ()).getBlockId ());
424
+
425
+ BlockCapsule blockCapsule4 =
426
+ createTestBlockCapsule (
427
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderNumber () + 1 ,
428
+ blockCapsule3 .getBlockId ().getByteString (), addressToProvateKeys );
429
+ dbManager .pushBlock (blockCapsule4 );
430
+
431
+ Assert .assertEquals (blockCapsule4 .getBlockId (),
432
+ dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ());
433
+ Assert .assertEquals (blockCapsule4 .getBlockId (),
434
+ dbManager .getBlockStore ().get (dbManager .getDynamicPropertiesStore ().getLatestBlockHeaderHash ().getBytes ()).getBlockId ());
383
435
}
384
436
385
437
private Map <ByteString , String > addTestWitnessAndAccount () {
0 commit comments