@@ -697,27 +697,34 @@ func TestParseRouteHint(t *testing.T) {
697
697
testDoubleHopData , _ = bech32 .ConvertBits (testDoubleHopData , 8 , 5 , true )
698
698
699
699
tests := []struct {
700
- data []byte
701
- valid bool
702
- result []HopHint
700
+ data []byte
701
+ valid bool
702
+ result []HopHint
703
+ expectedErr error
703
704
}{
704
705
{
705
- data : []byte {0x0 , 0x0 , 0x0 , 0x0 },
706
- valid : false , // data too short, not multiple of 51 bytes
706
+ data : []byte {0x0 , 0x0 , 0x0 , 0x0 },
707
+ // data too short, not multiple of 51 bytes
708
+ valid : false ,
709
+ expectedErr : ErrLengthNotMultipleOfHopHint ,
707
710
},
708
711
{
709
- data : []byte {},
710
- valid : true ,
711
- result : []HopHint {},
712
+ data : []byte {},
713
+ valid : false ,
714
+ result : []HopHint {},
715
+ expectedErr : ErrEmptyRouteHint ,
712
716
},
713
717
{
714
718
data : testSingleHopData ,
715
719
valid : true ,
716
720
result : testSingleHop ,
717
721
},
718
722
{
719
- data : append (testSingleHopData , 0x0 ),
720
- valid : false , // data too long, not multiple of 51 bytes
723
+ data : append (testSingleHopData ,
724
+ []byte {0x0 , 0x0 }... ),
725
+ // data too long, not multiple of 51 bytes
726
+ valid : false ,
727
+ expectedErr : ErrLengthNotMultipleOfHopHint ,
721
728
},
722
729
{
723
730
data : testDoubleHopData ,
@@ -732,6 +739,7 @@ func TestParseRouteHint(t *testing.T) {
732
739
t .Errorf ("routing info decoding test %d failed: %v" , i , err )
733
740
return
734
741
}
742
+ require .ErrorIs (t , err , test .expectedErr )
735
743
if test .valid {
736
744
if err := compareRouteHints (test .result , routeHint ); err != nil {
737
745
t .Fatalf ("test %d failed decoding routing info: %v" , i , err )
0 commit comments