convert ERC20Migrator to initializers

This commit is contained in:
Francisco Giordano
2018-09-26 18:49:47 -03:00
parent d7b7644e68
commit 8bf7356f38
3 changed files with 18 additions and 4 deletions

View File

@ -1,5 +1,6 @@
pragma solidity ^0.4.24;
import "../Initializable.sol";
import "../token/ERC20/IERC20.sol";
import "../token/ERC20/ERC20Mintable.sol";
import "../token/ERC20/SafeERC20.sol";
@ -32,7 +33,7 @@ import "../math/Math.sol";
* await migrator.beginMigration(newToken.address);
* ```
*/
contract ERC20Migrator {
contract ERC20Migrator is Initializable {
using SafeERC20 for IERC20;
/// Address of the old token contract
@ -44,7 +45,7 @@ contract ERC20Migrator {
/**
* @param legacyToken address of the old token contract
*/
constructor(IERC20 legacyToken) public {
function initialize(IERC20 legacyToken) public initializer {
require(legacyToken != address(0));
_legacyToken = legacyToken;
}

View File

@ -0,0 +1,13 @@
pragma solidity ^0.4.24;
import "../Initializable.sol";
import "../drafts/ERC20Migrator.sol";
contract ERC20MigratorMock is Initializable, ERC20Migrator {
constructor(IERC20 legacyToken) public {
ERC20Migrator.initialize(legacyToken);
}
}

View File

@ -1,8 +1,8 @@
const { assertRevert } = require('../helpers/assertRevert');
const ERC20Mock = artifacts.require('ERC20Mock');
const ERC20Mintable = artifacts.require('ERC20Mintable');
const ERC20Migrator = artifacts.require('ERC20Migrator');
const ERC20Mintable = artifacts.require('ERC20MintableMock');
const ERC20Migrator = artifacts.require('ERC20MigratorMock');
const BigNumber = web3.eth.BigNumber;