mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-03-26 12:52:57 +00:00
ethclient: fix error handling for header test (#22514)
The wantErr field was disused, and the error returned by HeaderByNumber was not properly tested. This simplifies the error checking using errors.Is and asserts that getting an expected missing header returns ethereum.NotFound. Also adds a nil check condition for header.Number before using big.Int's Sign method.
This commit is contained in:
parent
6a528fce33
commit
aa8b2189c6
1 changed files with 5 additions and 4 deletions
|
|
@ -288,8 +288,9 @@ func testHeader(t *testing.T, chain []*types.Block, client *rpc.Client) {
|
|||
want: chain[1].Header(),
|
||||
},
|
||||
"future_block": {
|
||||
block: big.NewInt(1000000000),
|
||||
want: nil,
|
||||
block: big.NewInt(1000000000),
|
||||
want: nil,
|
||||
wantErr: ethereum.NotFound,
|
||||
},
|
||||
}
|
||||
for name, tt := range tests {
|
||||
|
|
@ -299,10 +300,10 @@ func testHeader(t *testing.T, chain []*types.Block, client *rpc.Client) {
|
|||
defer cancel()
|
||||
|
||||
got, err := ec.HeaderByNumber(ctx, tt.block)
|
||||
if tt.wantErr != nil && (err == nil || err.Error() != tt.wantErr.Error()) {
|
||||
if !errors.Is(err, tt.wantErr) {
|
||||
t.Fatalf("HeaderByNumber(%v) error = %q, want %q", tt.block, err, tt.wantErr)
|
||||
}
|
||||
if got != nil && got.Number.Sign() == 0 {
|
||||
if got != nil && got.Number != nil && got.Number.Sign() == 0 {
|
||||
got.Number = big.NewInt(0) // hack to make DeepEqual work
|
||||
}
|
||||
if !reflect.DeepEqual(got, tt.want) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue