Closed therealbytes closed 4 weeks ago
@therealbytes Can i work on this?
I'd love to work on this issue, I plan to tackle this one following the unit test pattern of AAA (Arrange, Act and Assert).
@fabrobles92 Assigned you. Please put the tests in a new file with path core/vm/concrete_bindings_test.go
.
Feel free to ask if something is not clear. I'm happy to help you get started!
As @fabrobles92 reported, there is an issue in the way Concrete handles delegate calls. I am putting this issue on hold while I fix it and assigning him somewhere else.
The issue: a AccountRef
is passed as the caller ContractRef
when a *Contract
is expected. This results in a failing type assertion when making delegate calls through the concrete environment or caller binding.
Rationale
Concrete uses two binding objects
concreteBlockContext
andconcreteEVM
incore/vm/evm.go
to make EVM methods and data available in the Concrete environment. These are a crucial part of Concrete but are not properly tested.Implementation
Test each of the binding methods for each of the object listed above.