Closed
Description
What happened?
This issue is a more general representation of #711 one.
ERC*.transaction
never assigns to Contract.transaction
for any given method that writes on chain with WriteOperation
.
So the fix is as easy as modifying each method that returns WriteOperation
as follow:
/// This line is at the very beginning of any `ERC*` method
let contract = self.contract // this line should be deleted.
/*
a method implementation
*/
contract.transaction = transaction
/// this line is already exists
let tx = contract.createWriteOperation("transferFrom", parameters: [originalOwner, to, value] as [AnyObject] )!
The #713 PR is fixing the only ERC20
case of this issue, but this fix highly likely could be scaled to all ERC*
implementations.
What are the steps to reproduce?
See #711
What is the expected behavior?
ERC*.transaction
settings should be preserved in WriteOperation.transaction
returned by whatever ERC*
method that returns such.
What is the error thrown?
There's no error it fails silently.
What's the stack trace said?
There's no error it fails silently.
OS version
Unrelated.
Library version
3.0.6