mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-20 10:52:25 +00:00
ethclient: add empty testcase
Signed-off-by: jsvisa <delweng@gmail.com>
This commit is contained in:
parent
b7a161bd0b
commit
552e9441f0
1 changed files with 16 additions and 9 deletions
|
|
@ -42,6 +42,7 @@ var (
|
|||
testKey, _ = crypto.HexToECDSA("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291")
|
||||
testAddr = crypto.PubkeyToAddress(testKey.PublicKey)
|
||||
testContract = common.HexToAddress("0xbeef")
|
||||
testEmpty = common.HexToAddress("0xeeee")
|
||||
testSlot = common.HexToHash("0xdeadbeef")
|
||||
testValue = crypto.Keccak256Hash(testSlot[:])
|
||||
testBalance = big.NewInt(2e15)
|
||||
|
|
@ -80,8 +81,11 @@ func newTestBackend(t *testing.T) (*node.Node, []*types.Block) {
|
|||
func generateTestChain() (*core.Genesis, []*types.Block) {
|
||||
genesis := &core.Genesis{
|
||||
Config: params.AllEthashProtocolChanges,
|
||||
Alloc: core.GenesisAlloc{testAddr: {Balance: testBalance, Storage: map[common.Hash]common.Hash{testSlot: testValue}},
|
||||
testContract: {Nonce: 1, Code: []byte{0x13, 0x37}}},
|
||||
Alloc: core.GenesisAlloc{
|
||||
testAddr: {Balance: testBalance, Storage: map[common.Hash]common.Hash{testSlot: testValue}},
|
||||
testContract: {Nonce: 1, Code: []byte{0x13, 0x37}},
|
||||
testEmpty: {Balance: big.NewInt(1)},
|
||||
},
|
||||
ExtraData: []byte("test genesis"),
|
||||
Timestamp: 9000,
|
||||
}
|
||||
|
|
@ -110,6 +114,9 @@ func TestGethClient(t *testing.T) {
|
|||
}, {
|
||||
"TestGetProof2",
|
||||
func(t *testing.T) { testGetProof(t, client, testContract) },
|
||||
}, {
|
||||
"TestGetProofEmpty",
|
||||
func(t *testing.T) { testGetProof(t, client, testEmpty) },
|
||||
}, {
|
||||
"TestGetProofNonExistent",
|
||||
func(t *testing.T) { testGetProofNonExistent(t, client) },
|
||||
|
|
@ -280,7 +287,7 @@ func testGetProofCanonicalizeKeys(t *testing.T, client *rpc.Client) {
|
|||
func testGetProofNonExistent(t *testing.T, client *rpc.Client) {
|
||||
addr := common.HexToAddress("0x0001")
|
||||
ec := New(client)
|
||||
result, err := ec.GetProof(context.Background(), addr, []string{testSlot.String()}, nil)
|
||||
result, err := ec.GetProof(context.Background(), addr, nil, nil)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
|
@ -296,16 +303,16 @@ func testGetProofNonExistent(t *testing.T, client *rpc.Client) {
|
|||
t.Fatalf("invalid balance, want: %v got: %v", 0, result.Balance)
|
||||
}
|
||||
// test storage
|
||||
if len(result.StorageProof) != 1 {
|
||||
t.Fatalf("invalid storage proof, want 1 proof, got %v proof(s)", len(result.StorageProof))
|
||||
if have := len(result.StorageProof); have != 0 {
|
||||
t.Fatalf("invalid storage proof, want 0 proof, got %v proof(s)", have)
|
||||
}
|
||||
// test codeHash
|
||||
if result.CodeHash != types.EmptyCodeHash {
|
||||
t.Fatalf("codehash wrong, have %v want %v ", result.CodeHash, types.EmptyCodeHash)
|
||||
if have, want := result.CodeHash, (common.Hash{}); have != want {
|
||||
t.Fatalf("codehash wrong, have %v want %v ", have, want)
|
||||
}
|
||||
// test codeHash
|
||||
if result.StorageHash != types.EmptyRootHash {
|
||||
t.Fatalf("storagehash wrong, have %v want %v ", result.StorageHash, types.EmptyRootHash)
|
||||
if have, want := result.StorageHash, (common.Hash{}); have != want {
|
||||
t.Fatalf("storagehash wrong, have %v want %v ", have, want)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue