diff --git a/dot/sync/chain_sync_test.go b/dot/sync/chain_sync_test.go index 36f18c35a8..d99afe8db6 100644 --- a/dot/sync/chain_sync_test.go +++ b/dot/sync/chain_sync_test.go @@ -63,7 +63,7 @@ func Test_chainSync_onBlockAnnounce(t *testing.T) { t.Parallel() const somePeer = peer.ID("abc") - //errTest := errors.New("test error") + errTest := errors.New("test error") emptyTrieState := storage.NewTrieState(trie.NewEmptyTrie()) block1AnnounceHeader := types.NewHeader(common.Hash{}, emptyTrieState.MustRoot(trie.NoMaxInlineValueSize), common.Hash{}, 1, scale.VaryingDataTypeSlice{}) @@ -80,61 +80,61 @@ func Test_chainSync_onBlockAnnounce(t *testing.T) { errMessage string expectedSyncMode chainSyncState }{ - // "announced_block_already_exists_in_disjoint_set": { - // chainSyncBuilder: func(ctrl *gomock.Controller) *chainSync { - // pendingBlocks := NewMockDisjointBlockSet(ctrl) - // pendingBlocks.EXPECT().hasBlock(block2AnnounceHeader.Hash()).Return(true) - // return &chainSync{ - // stopCh: make(chan struct{}), - // pendingBlocks: pendingBlocks, - // peerViewSet: newPeerViewSet(0), - // workerPool: newSyncWorkerPool(NewMockNetwork(nil), NewMockRequestMaker(nil)), - // } - // }, - // peerID: somePeer, - // blockAnnounceHeader: block2AnnounceHeader, - // errWrapped: errAlreadyInDisjointSet, - // errMessage: fmt.Sprintf("already in disjoint set: block %s (#%d)", - // block2AnnounceHeader.Hash(), block2AnnounceHeader.Number), - // }, - // "failed_to_add_announced_block_in_disjoint_set": { - // chainSyncBuilder: func(ctrl *gomock.Controller) *chainSync { - // pendingBlocks := NewMockDisjointBlockSet(ctrl) - // pendingBlocks.EXPECT().hasBlock(block2AnnounceHeader.Hash()).Return(false) - // pendingBlocks.EXPECT().addHeader(block2AnnounceHeader).Return(errTest) - - // return &chainSync{ - // stopCh: make(chan struct{}), - // pendingBlocks: pendingBlocks, - // peerViewSet: newPeerViewSet(0), - // workerPool: newSyncWorkerPool(NewMockNetwork(nil), NewMockRequestMaker(nil)), - // } - // }, - // peerID: somePeer, - // blockAnnounceHeader: block2AnnounceHeader, - // errWrapped: errTest, - // errMessage: "while adding pending block header: test error", - // }, - // "announced_block_while_in_bootstrap_mode": { - // chainSyncBuilder: func(ctrl *gomock.Controller) *chainSync { - // pendingBlocks := NewMockDisjointBlockSet(ctrl) - // pendingBlocks.EXPECT().hasBlock(block2AnnounceHeader.Hash()).Return(false) - // pendingBlocks.EXPECT().addHeader(block2AnnounceHeader).Return(nil) - - // state := atomic.Value{} - // state.Store(bootstrap) - - // return &chainSync{ - // stopCh: make(chan struct{}), - // pendingBlocks: pendingBlocks, - // syncMode: state, - // peerViewSet: newPeerViewSet(0), - // workerPool: newSyncWorkerPool(NewMockNetwork(nil), NewMockRequestMaker(nil)), - // } - // }, - // peerID: somePeer, - // blockAnnounceHeader: block2AnnounceHeader, - // }, + "announced_block_already_exists_in_disjoint_set": { + chainSyncBuilder: func(ctrl *gomock.Controller) *chainSync { + pendingBlocks := NewMockDisjointBlockSet(ctrl) + pendingBlocks.EXPECT().hasBlock(block2AnnounceHeader.Hash()).Return(true) + return &chainSync{ + stopCh: make(chan struct{}), + pendingBlocks: pendingBlocks, + peerViewSet: newPeerViewSet(0), + workerPool: newSyncWorkerPool(NewMockNetwork(nil), NewMockRequestMaker(nil)), + } + }, + peerID: somePeer, + blockAnnounceHeader: block2AnnounceHeader, + errWrapped: errAlreadyInDisjointSet, + errMessage: fmt.Sprintf("already in disjoint set: block %s (#%d)", + block2AnnounceHeader.Hash(), block2AnnounceHeader.Number), + }, + "failed_to_add_announced_block_in_disjoint_set": { + chainSyncBuilder: func(ctrl *gomock.Controller) *chainSync { + pendingBlocks := NewMockDisjointBlockSet(ctrl) + pendingBlocks.EXPECT().hasBlock(block2AnnounceHeader.Hash()).Return(false) + pendingBlocks.EXPECT().addHeader(block2AnnounceHeader).Return(errTest) + + return &chainSync{ + stopCh: make(chan struct{}), + pendingBlocks: pendingBlocks, + peerViewSet: newPeerViewSet(0), + workerPool: newSyncWorkerPool(NewMockNetwork(nil), NewMockRequestMaker(nil)), + } + }, + peerID: somePeer, + blockAnnounceHeader: block2AnnounceHeader, + errWrapped: errTest, + errMessage: "while adding pending block header: test error", + }, + "announced_block_while_in_bootstrap_mode": { + chainSyncBuilder: func(ctrl *gomock.Controller) *chainSync { + pendingBlocks := NewMockDisjointBlockSet(ctrl) + pendingBlocks.EXPECT().hasBlock(block2AnnounceHeader.Hash()).Return(false) + pendingBlocks.EXPECT().addHeader(block2AnnounceHeader).Return(nil) + + state := atomic.Value{} + state.Store(bootstrap) + + return &chainSync{ + stopCh: make(chan struct{}), + pendingBlocks: pendingBlocks, + syncMode: state, + peerViewSet: newPeerViewSet(0), + workerPool: newSyncWorkerPool(NewMockNetwork(nil), NewMockRequestMaker(nil)), + } + }, + peerID: somePeer, + blockAnnounceHeader: block2AnnounceHeader, + }, "announced_block_while_in_tip_mode": { chainSyncBuilder: func(ctrl *gomock.Controller) *chainSync { pendingBlocksMock := NewMockDisjointBlockSet(ctrl)