From 84f8a19b98e564fced37adbbfd75eefbb0dc51cb Mon Sep 17 00:00:00 2001 From: Elichai Turkel Date: Tue, 19 Jan 2021 11:43:13 +0200 Subject: [PATCH] fdlkjsjkldsfhjkds --- .../validateandinsertpruningpoint_test.go | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/domain/consensus/processes/blockprocessor/validateandinsertpruningpoint_test.go b/domain/consensus/processes/blockprocessor/validateandinsertpruningpoint_test.go index 0d899c80d..c0f94ddad 100644 --- a/domain/consensus/processes/blockprocessor/validateandinsertpruningpoint_test.go +++ b/domain/consensus/processes/blockprocessor/validateandinsertpruningpoint_test.go @@ -58,6 +58,17 @@ func TestValidateAndInsertPruningPoint(t *testing.T) { return consensushashing.BlockHash(block) } + // make 2 blocks on the side. + side, _, err := tcSyncee.AddBlock([]*externalapi.DomainHash{params.GenesisHash}, &externalapi.DomainCoinbaseData{ScriptPublicKey: &externalapi.ScriptPublicKey{}, ExtraData: []byte{1,2}}, nil) + if err != nil { + t.Fatal(err) + } + // make 2 blocks on the side. + _, _, err = tcSyncee.AddBlock([]*externalapi.DomainHash{side}, nil, nil) + if err != nil { + t.Fatal(err) + } + tipHash := params.GenesisHash for i := 0; i < finalityDepth-2; i++ { tipHash = addBlock([]*externalapi.DomainHash{tipHash}) @@ -184,6 +195,37 @@ func TestValidateAndInsertPruningPoint(t *testing.T) { if !synceePruningPoint.Equal(pruningPoint) { t.Fatalf("The syncee pruning point has not changed as exepcted") } + + pruningPointOld := pruningPoint + + // Add blocks until the pruning point changes + for { + block, _, err := tcSyncer.BuildBlockWithParents([]*externalapi.DomainHash{tipHash}, nil, nil) + if err != nil { + t.Fatalf("BuildBlockWithParents: %+v", err) + } + + _, err = tcSyncer.ValidateAndInsertBlock(block) + if err != nil { + t.Fatalf("ValidateAndInsertBlock: %+v", err) + } + + _, err = tcSyncee.ValidateAndInsertBlock(block) + if err != nil { + t.Fatalf("ValidateAndInsertBlock: %+v", err) + } + + tipHash = consensushashing.BlockHash(block) + + pruningPoint, err := tcSyncer.PruningPoint() + if err != nil { + t.Fatalf("PruningPoint: %+v", err) + } + + if !pruningPoint.Equal(pruningPointOld) { + break + } + } }) }