aboutsummaryrefslogtreecommitdiffstats
path: root/core/vm/sqlvm/common/storage_test.go
diff options
context:
space:
mode:
authoryenlin.lai <yenlin.lai@cobinhood.com>2019-04-12 11:18:24 +0800
committerJhih-Ming Huang <jm.huang@cobinhood.com>2019-05-06 10:44:04 +0800
commit5b71bbd50a64d3b1576626d4cf0ca22569b57cf8 (patch)
tree50f3b391c6f5995225396a1a9379791c2b292a93 /core/vm/sqlvm/common/storage_test.go
parentc044cbc979abae7563344d6b047a6b0c616d7b7f (diff)
downloaddexon-5b71bbd50a64d3b1576626d4cf0ca22569b57cf8.tar
dexon-5b71bbd50a64d3b1576626d4cf0ca22569b57cf8.tar.gz
dexon-5b71bbd50a64d3b1576626d4cf0ca22569b57cf8.tar.bz2
dexon-5b71bbd50a64d3b1576626d4cf0ca22569b57cf8.tar.lz
dexon-5b71bbd50a64d3b1576626d4cf0ca22569b57cf8.tar.xz
dexon-5b71bbd50a64d3b1576626d4cf0ca22569b57cf8.tar.zst
dexon-5b71bbd50a64d3b1576626d4cf0ca22569b57cf8.zip
sqlvm: common: refine StateDB/Storage
In the context of vm module, we usually access vm.StateDB interface object instead of state.StateDB directly. Also, state.StateDB is usually passed with pointer and used with pointer receiver. Implement the similar behavior on Storage object.
Diffstat (limited to 'core/vm/sqlvm/common/storage_test.go')
-rw-r--r--core/vm/sqlvm/common/storage_test.go13
1 files changed, 3 insertions, 10 deletions
diff --git a/core/vm/sqlvm/common/storage_test.go b/core/vm/sqlvm/common/storage_test.go
index 625d89158..aed07b4a8 100644
--- a/core/vm/sqlvm/common/storage_test.go
+++ b/core/vm/sqlvm/common/storage_test.go
@@ -37,7 +37,7 @@ func (s *StorageTestSuite) TestGetRowAddress() {
hw := sha3.NewLegacyKeccak256()
rlp.Encode(hw, key)
bytes := hw.Sum(nil)
- storage := Storage{}
+ storage := &Storage{}
result := storage.GetRowPathHash(table, id)
s.Require().Equal(bytes, result[:])
}
@@ -76,7 +76,7 @@ func (s *StorageTestSuite) TestDecodeDByte() {
result: []byte(""),
},
}
- SetDataToStateDB(head, storage, address, testcase)
+ SetDataToStorage(head, storage, address, testcase)
for i, t := range testcase {
slot := storage.ShiftHashUint64(head, uint64(i))
result := storage.DecodeDByteBySlot(address, slot)
@@ -84,7 +84,7 @@ func (s *StorageTestSuite) TestDecodeDByte() {
}
}
-func SetDataToStateDB(head common.Hash, storage Storage, addr common.Address,
+func SetDataToStorage(head common.Hash, storage *Storage, addr common.Address,
testcase []decodeTestCase) {
for i, t := range testcase {
slot := storage.ShiftHashUint64(head, uint64(i))
@@ -107,7 +107,6 @@ func SetDataToStateDB(head common.Hash, storage Storage, addr common.Address,
}
}
}
- storage.Commit(false)
}
func (s *StorageTestSuite) TestOwner() {
@@ -122,12 +121,10 @@ func (s *StorageTestSuite) TestOwner() {
storage.StoreOwner(contractA, ownerA)
storage.StoreOwner(contractB, ownerB)
- storage.Commit(false)
s.Require().Equal(ownerA, storage.LoadOwner(contractA))
s.Require().Equal(ownerB, storage.LoadOwner(contractB))
storage.StoreOwner(contractA, ownerB)
- storage.Commit(false)
s.Require().Equal(ownerB, storage.LoadOwner(contractA))
}
@@ -155,7 +152,6 @@ func (s *StorageTestSuite) TestTableWriter() {
storage.InsertTableWriter(contractA, table1, addrs[1])
storage.InsertTableWriter(contractA, table1, addrs[2])
storage.InsertTableWriter(contractB, table2, addrs[0])
- storage.Commit(false)
s.Require().Equal(addrs, storage.LoadTableWriters(contractA, table1))
s.Require().Len(storage.LoadTableWriters(contractA, table2), 0)
s.Require().Len(storage.LoadTableWriters(contractB, table1), 0)
@@ -166,14 +162,12 @@ func (s *StorageTestSuite) TestTableWriter() {
storage.InsertTableWriter(contractA, table1, addrs[0])
storage.InsertTableWriter(contractA, table1, addrs[1])
storage.InsertTableWriter(contractA, table1, addrs[2])
- storage.Commit(false)
s.Require().Equal(addrs, storage.LoadTableWriters(contractA, table1))
// Delete some writer.
storage.DeleteTableWriter(contractA, table1, addrs[0])
storage.DeleteTableWriter(contractA, table2, addrs[0])
storage.DeleteTableWriter(contractB, table2, addrs[0])
- storage.Commit(false)
s.Require().Equal([]common.Address{addrs[2], addrs[1]},
storage.LoadTableWriters(contractA, table1))
s.Require().Len(storage.LoadTableWriters(contractA, table2), 0)
@@ -182,7 +176,6 @@ func (s *StorageTestSuite) TestTableWriter() {
// Delete again.
storage.DeleteTableWriter(contractA, table1, addrs[2])
- storage.Commit(false)
s.Require().Equal([]common.Address{addrs[1]},
storage.LoadTableWriters(contractA, table1))