Fix mappings util
- Remove hex prefix so that the function can accept keys with or without a hex prefix and return the same result
This commit is contained in:
parent
eb2b3a0263
commit
95fa6280c5
@ -47,7 +47,7 @@ const (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func GetMapping(indexOnContract, key string) common.Hash {
|
func GetMapping(indexOnContract, key string) common.Hash {
|
||||||
keyBytes := common.FromHex("0x" + key + indexOnContract)
|
keyBytes := common.FromHex(key + indexOnContract)
|
||||||
encoded := crypto.Keccak256(keyBytes)
|
encoded := crypto.Keccak256(keyBytes)
|
||||||
return common.BytesToHash(encoded)
|
return common.BytesToHash(encoded)
|
||||||
}
|
}
|
||||||
|
@ -21,6 +21,16 @@ var _ = Describe("Mappings", func() {
|
|||||||
expectedStorageKey := common.HexToHash("0xee0c1b59a3856bafbfb8730e7694c4badc271eb5f01ce4a8d7a53d8a6499676f")
|
expectedStorageKey := common.HexToHash("0xee0c1b59a3856bafbfb8730e7694c4badc271eb5f01ce4a8d7a53d8a6499676f")
|
||||||
Expect(storageKey).To(Equal(expectedStorageKey))
|
Expect(storageKey).To(Equal(expectedStorageKey))
|
||||||
})
|
})
|
||||||
|
|
||||||
|
It("returns same result if value includes hex prefix", func() {
|
||||||
|
indexOfMappingOnContract := storage.IndexZero
|
||||||
|
keyForDesiredValueInMapping := "0x1234567890abcdef"
|
||||||
|
|
||||||
|
storageKey := storage.GetMapping(indexOfMappingOnContract, keyForDesiredValueInMapping)
|
||||||
|
|
||||||
|
expectedStorageKey := common.HexToHash("0xee0c1b59a3856bafbfb8730e7694c4badc271eb5f01ce4a8d7a53d8a6499676f")
|
||||||
|
Expect(storageKey).To(Equal(expectedStorageKey))
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
Describe("GetNestedMapping", func() {
|
Describe("GetNestedMapping", func() {
|
||||||
|
Loading…
Reference in New Issue
Block a user