Skip to content

WriteOperation.transaction ignores ERC*.transaction settings #712

Closed
@yaroslavyaroslav

Description

@yaroslavyaroslav

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggood first issueGood for newcomers

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions