@@ -5377,7 +5377,7 @@ func TestProcessor_BackwardLET(t *testing.T) {
53775377 collectExpectedBridgesUpTo := func (t * testing.T , blocks []sync.Block , targetDepositCount uint32 ) []Bridge {
53785378 t .Helper ()
53795379
5380- var bridges []Bridge
5380+ bridges := make ( []Bridge , 0 )
53815381 for _ , b := range blocks {
53825382 for _ , e := range b .Events {
53835383 evt , ok := e .(Event )
@@ -5498,6 +5498,63 @@ func TestProcessor_BackwardLET(t *testing.T) {
54985498 },
54995499 targetDepositCount : 3 ,
55005500 },
5501+ {
5502+ name : "backward let on empty bridge table" ,
5503+ setupBlocks : func () []sync.Block {
5504+ return []sync.Block {
5505+ {
5506+ Num : 1 ,
5507+ Hash : common .HexToHash ("0x1" ),
5508+ Events : []any {
5509+ Event {BackwardLET : & BackwardLET {
5510+ BlockNum : 1 ,
5511+ BlockPos : 0 ,
5512+ PreviousDepositCount : big .NewInt (6 ),
5513+ NewDepositCount : big .NewInt (3 ),
5514+ }},
5515+ },
5516+ }}
5517+ },
5518+ targetDepositCount : 0 ,
5519+ },
5520+ {
5521+ name : "backward let invalid new deposit count (outside of uint64 range)" ,
5522+ setupBlocks : func () []sync.Block {
5523+ return []sync.Block {
5524+ {
5525+ Num : 1 ,
5526+ Hash : common .HexToHash ("0x1" ),
5527+ Events : []any {
5528+ Event {BackwardLET : & BackwardLET {
5529+ BlockNum : 1 ,
5530+ BlockPos : 0 ,
5531+ PreviousDepositCount : big .NewInt (0 ),
5532+ NewDepositCount : big .NewInt (- 3 ),
5533+ }},
5534+ },
5535+ }}
5536+ },
5537+ processBlockErrMsg : "failed to convert new deposit count to uint64" ,
5538+ },
5539+ {
5540+ name : "backward let invalid new deposit count (outside of uint32 range)" ,
5541+ setupBlocks : func () []sync.Block {
5542+ return []sync.Block {
5543+ {
5544+ Num : 1 ,
5545+ Hash : common .HexToHash ("0x1" ),
5546+ Events : []any {
5547+ Event {BackwardLET : & BackwardLET {
5548+ BlockNum : 1 ,
5549+ BlockPos : 0 ,
5550+ PreviousDepositCount : big .NewInt (0 ),
5551+ NewDepositCount : big .NewInt (4294967296 ),
5552+ }},
5553+ },
5554+ }}
5555+ },
5556+ processBlockErrMsg : "failed to convert new deposit count (uint64) to leaf index (uint32)" ,
5557+ },
55015558 {
55025559 name : "backward let after a couple of bridges + reorg backward let" ,
55035560 setupBlocks : func () []sync.Block {
0 commit comments