@@ -38,7 +38,11 @@ func TestDeliverToChannel(t *testing.T) {
3838 // 10 times for the pulled blocks, 10 times for the blocks in the buffer, and 1 that blocks because
3939 // the buffer is full.
4040 s .EXPECT ().RecvBlockOrStatus ().MaxTimes (21 ).DoAndReturn (func () (* common.Block , * common.Status , error ) {
41- b := & common.Block {Header : & common.BlockHeader {Number : nextBlockNum }}
41+ b := & common.Block {
42+ Header : & common.BlockHeader {Number : nextBlockNum },
43+ Metadata : & common.BlockMetadata {},
44+ Data : & common.BlockData {},
45+ }
4246 nextBlockNum ++
4347 return b , nil , nil
4448 })
@@ -48,7 +52,11 @@ func TestDeliverToChannel(t *testing.T) {
4852 outputBlock := channel .NewReader (t .Context (), e .outputBlock )
4953 outputBlockWithSourceID := channel .NewReader (t .Context (), e .outputBlockWithSourceID )
5054 for i := range uint64 (10 ) {
51- expectedBlock := & common.Block {Header : & common.BlockHeader {Number : i }}
55+ expectedBlock := & common.Block {
56+ Header : & common.BlockHeader {Number : i },
57+ Metadata : & common.BlockMetadata {},
58+ Data : & common.BlockData {},
59+ }
5260
5361 readBlock , ok := outputBlock .ReadWithTimeout (3 * time .Second )
5462 require .True (t , ok )
@@ -109,23 +117,56 @@ func TestDeliverToChannelFailedStreamer(t *testing.T) {
109117 t .Log ("Receive bad block (nil header)" )
110118 s = NewMockStreamer (e .ctrl )
111119 s .EXPECT ().Send (gomock .Not (gomock .Nil ())).Times (1 ).Return (nil )
112- s .EXPECT ().RecvBlockOrStatus ().Times (1 ).Return (& common.Block {}, nil , nil )
120+ s .EXPECT ().RecvBlockOrStatus ().Times (1 ).Return (& common.Block {
121+ Metadata : & common.BlockMetadata {},
122+ Data : & common.BlockData {},
123+ }, nil , nil )
124+ streamerQueue .Write (s )
125+ _ , ok = outputBlock .ReadWithTimeout (time .Second )
126+ require .False (t , ok )
127+
128+ t .Log ("Receive bad block (nil metadata)" )
129+ s = NewMockStreamer (e .ctrl )
130+ s .EXPECT ().Send (gomock .Not (gomock .Nil ())).Times (1 ).Return (nil )
131+ s .EXPECT ().RecvBlockOrStatus ().Times (1 ).Return (& common.Block {
132+ Header : & common.BlockHeader {Number : 1 },
133+ Data : & common.BlockData {},
134+ }, nil , nil )
135+ streamerQueue .Write (s )
136+ _ , ok = outputBlock .ReadWithTimeout (time .Second )
137+ require .False (t , ok )
138+
139+ t .Log ("Receive bad block (nil data)" )
140+ s = NewMockStreamer (e .ctrl )
141+ s .EXPECT ().Send (gomock .Not (gomock .Nil ())).Times (1 ).Return (nil )
142+ s .EXPECT ().RecvBlockOrStatus ().Times (1 ).Return (& common.Block {
143+ Header : & common.BlockHeader {Number : 1 },
144+ Metadata : & common.BlockMetadata {},
145+ }, nil , nil )
113146 streamerQueue .Write (s )
114147 _ , ok = outputBlock .ReadWithTimeout (time .Second )
115148 require .False (t , ok )
116149
117150 t .Log ("Receive bad block (wrong number 1 != 0)" )
118151 s = NewMockStreamer (e .ctrl )
119152 s .EXPECT ().Send (gomock .Not (gomock .Nil ())).Times (1 ).Return (nil )
120- s .EXPECT ().RecvBlockOrStatus ().Times (1 ).Return (& common.Block {Header : & common.BlockHeader {Number : 1 }}, nil , nil )
153+ s .EXPECT ().RecvBlockOrStatus ().Times (1 ).Return (& common.Block {
154+ Header : & common.BlockHeader {Number : 1 },
155+ Metadata : & common.BlockMetadata {},
156+ Data : & common.BlockData {},
157+ }, nil , nil )
121158 streamerQueue .Write (s )
122159 _ , ok = outputBlock .ReadWithTimeout (time .Second )
123160 require .False (t , ok )
124161
125162 t .Log ("Correct block, then bad block (wrong number 0 != 1)" )
126163 s = NewMockStreamer (e .ctrl )
127164 s .EXPECT ().Send (gomock .Not (gomock .Nil ())).Times (1 ).Return (nil )
128- correctBlock := & common.Block {Header : & common.BlockHeader {Number : 0 }}
165+ correctBlock := & common.Block {
166+ Header : & common.BlockHeader {Number : 0 },
167+ Metadata : & common.BlockMetadata {},
168+ Data : & common.BlockData {},
169+ }
129170 s .EXPECT ().RecvBlockOrStatus ().Times (2 ).Return (correctBlock , nil , nil )
130171 streamerQueue .Write (s )
131172 rb , ok := outputBlock .ReadWithTimeout (3 * time .Second )
0 commit comments