Skip to content

Commit 4ee35b2

Browse files
committed
refactor: cleanup code
1 parent f55880d commit 4ee35b2

File tree

2 files changed

+24
-14
lines changed

2 files changed

+24
-14
lines changed

block.go

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@
77

88
package etherscan
99

10-
import "strconv"
10+
import (
11+
"fmt"
12+
"strconv"
13+
)
1114

1215
// BlockReward gets block and uncle rewards by block number
1316
func (c *Client) BlockReward(blockNum int) (rewards BlockRewards, err error) {
@@ -19,21 +22,28 @@ func (c *Client) BlockReward(blockNum int) (rewards BlockRewards, err error) {
1922
return
2023
}
2124

22-
// BlockNumber gets closest block number by UNIX timestamp
25+
// BlockNumber gets the closest block number by UNIX timestamp
26+
//
27+
// valid closest option: before, after
2328
func (c *Client) BlockNumber(timestamp int64, closest string) (blockNumber int, err error) {
24-
var result string
29+
var blockNumberStr string
30+
2531
param := M{
26-
"timestamp": strconv.Itoa(int(timestamp)),
32+
"timestamp": strconv.FormatInt(timestamp, 10),
2733
"closest": closest,
2834
}
2935

30-
err = c.call("block", "getblocknobytime", param, &result)
36+
err = c.call("block", "getblocknobytime", param, &blockNumberStr)
37+
38+
if err != nil {
39+
return
40+
}
3141

42+
blockNumber, err = strconv.Atoi(blockNumberStr)
3243
if err != nil {
44+
err = fmt.Errorf("parsing block number %q: %w", blockNumberStr, err)
3345
return
3446
}
3547

36-
blockNum, err := strconv.ParseInt(result, 10, 64)
37-
blockNumber = int(blockNum)
3848
return
3949
}

block_e2e_test.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,21 +26,21 @@ func TestClient_BlockReward(t *testing.T) {
2626
}
2727

2828
func TestClient_BlockNumber(t *testing.T) {
29-
//Note: All values taken from docs.etherscan.io/api-endpoints/blocks
30-
const ans_before = 9251482
31-
const ans_after = 9251483
29+
// Note: All values taken from docs.etherscan.io/api-endpoints/blocks
30+
const ansBefore = 9251482
31+
const ansAfter = 9251483
3232

3333
blockNumber, err := api.BlockNumber(1578638524, "before")
3434
noError(t, err, "api.BlockNumber")
3535

36-
if blockNumber != ans_before {
37-
t.Errorf(`api.BlockNumber(1578638524, "before") not working, got %d, want %d`, blockNumber, ans_before)
36+
if blockNumber != ansBefore {
37+
t.Errorf(`api.BlockNumber(1578638524, "before") not working, got %d, want %d`, blockNumber, ansBefore)
3838
}
3939

4040
blockNumber, err = api.BlockNumber(1578638524, "after")
4141
noError(t, err, "api.BlockNumber")
4242

43-
if blockNumber != ans_after {
44-
t.Errorf(`api.BlockNumber(1578638524,"after") not working, got %d, want %d`, blockNumber, ans_after)
43+
if blockNumber != ansAfter {
44+
t.Errorf(`api.BlockNumber(1578638524,"after") not working, got %d, want %d`, blockNumber, ansAfter)
4545
}
4646
}

0 commit comments

Comments
 (0)