diff options
author | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-02-06 23:40:03 +0800 |
---|---|---|
committer | Amir Bandeali <abandeali1@gmail.com> | 2018-02-07 09:27:47 +0800 |
commit | a264c36a48d224a55c2ef883f207692752ca74c7 (patch) | |
tree | 6ae38d36405de58c9c60d3d2164f8427110a1796 /packages/contracts/test/token_transfer_proxy | |
parent | 0c2ab2265624eb0dc18244b263fed3c8788b5c09 (diff) | |
download | dexon-sol-tools-a264c36a48d224a55c2ef883f207692752ca74c7.tar dexon-sol-tools-a264c36a48d224a55c2ef883f207692752ca74c7.tar.gz dexon-sol-tools-a264c36a48d224a55c2ef883f207692752ca74c7.tar.bz2 dexon-sol-tools-a264c36a48d224a55c2ef883f207692752ca74c7.tar.lz dexon-sol-tools-a264c36a48d224a55c2ef883f207692752ca74c7.tar.xz dexon-sol-tools-a264c36a48d224a55c2ef883f207692752ca74c7.tar.zst dexon-sol-tools-a264c36a48d224a55c2ef883f207692752ca74c7.zip |
Change tests
Diffstat (limited to 'packages/contracts/test/token_transfer_proxy')
-rw-r--r-- | packages/contracts/test/token_transfer_proxy/auth.ts | 36 | ||||
-rw-r--r-- | packages/contracts/test/token_transfer_proxy/transfer_from.ts | 51 |
2 files changed, 54 insertions, 33 deletions
diff --git a/packages/contracts/test/token_transfer_proxy/auth.ts b/packages/contracts/test/token_transfer_proxy/auth.ts index b2bfc6b65..9d453b079 100644 --- a/packages/contracts/test/token_transfer_proxy/auth.ts +++ b/packages/contracts/test/token_transfer_proxy/auth.ts @@ -3,6 +3,7 @@ import { Web3Wrapper } from '@0xproject/web3-wrapper'; import * as chai from 'chai'; import * as Web3 from 'web3'; +import { TokenTransferProxyContract } from '../../src/contract_wrappers/generated/token_transfer_proxy'; import { constants } from '../../util/constants'; import { ContractName } from '../../util/types'; import { chaiSetup } from '../utils/chai_setup'; @@ -18,12 +19,13 @@ describe('TokenTransferProxy', () => { let owner: string; let notOwner: string; let address: string; - let tokenTransferProxy: Web3.ContractInstance; + let tokenTransferProxy: TokenTransferProxyContract; before(async () => { const accounts = await web3Wrapper.getAvailableAddressesAsync(); owner = address = accounts[0]; notOwner = accounts[1]; - tokenTransferProxy = await deployer.deployAsync(ContractName.TokenTransferProxy); + const tokenTransferProxyInstance = await deployer.deployAsync(ContractName.TokenTransferProxy); + tokenTransferProxy = new TokenTransferProxyContract(tokenTransferProxyInstance); }); beforeEach(async () => { await blockchainLifecycle.startAsync(); @@ -33,36 +35,36 @@ describe('TokenTransferProxy', () => { }); describe('addAuthorizedAddress', () => { it('should throw if not called by owner', async () => { - return expect(tokenTransferProxy.addAuthorizedAddress(notOwner, { from: notOwner })).to.be.rejectedWith( - constants.REVERT, - ); + return expect( + tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(notOwner, { from: notOwner }), + ).to.be.rejectedWith(constants.REVERT); }); it('should allow owner to add an authorized address', async () => { - await tokenTransferProxy.addAuthorizedAddress(address, { from: owner }); + await tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }); const isAuthorized = await tokenTransferProxy.authorized(address); expect(isAuthorized).to.be.true(); }); it('should throw if owner attempts to authorize a duplicate address', async () => { - await tokenTransferProxy.addAuthorizedAddress(address, { from: owner }); - return expect(tokenTransferProxy.addAuthorizedAddress(address, { from: owner })).to.be.rejectedWith( - constants.REVERT, - ); + await tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }); + return expect( + tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }), + ).to.be.rejectedWith(constants.REVERT); }); }); describe('removeAuthorizedAddress', () => { it('should throw if not called by owner', async () => { - await tokenTransferProxy.addAuthorizedAddress(address, { from: owner }); + await tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }); return expect( - tokenTransferProxy.removeAuthorizedAddress(address, { + tokenTransferProxy.removeAuthorizedAddress.sendTransactionAsync(address, { from: notOwner, }), ).to.be.rejectedWith(constants.REVERT); }); it('should allow owner to remove an authorized address', async () => { - await tokenTransferProxy.addAuthorizedAddress(address, { from: owner }); - await tokenTransferProxy.removeAuthorizedAddress(address, { + await tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }); + await tokenTransferProxy.removeAuthorizedAddress.sendTransactionAsync(address, { from: owner, }); const isAuthorized = await tokenTransferProxy.authorized(address); @@ -71,7 +73,7 @@ describe('TokenTransferProxy', () => { it('should throw if owner attempts to remove an address that is not authorized', async () => { return expect( - tokenTransferProxy.removeAuthorizedAddress(address, { + tokenTransferProxy.removeAuthorizedAddress.sendTransactionAsync(address, { from: owner, }), ).to.be.rejectedWith(constants.REVERT); @@ -82,14 +84,14 @@ describe('TokenTransferProxy', () => { it('should return all authorized addresses', async () => { const initial = await tokenTransferProxy.getAuthorizedAddresses(); expect(initial).to.have.length(0); - await tokenTransferProxy.addAuthorizedAddress(address, { + await tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(address, { from: owner, }); const afterAdd = await tokenTransferProxy.getAuthorizedAddresses(); expect(afterAdd).to.have.length(1); expect(afterAdd).to.include(address); - await tokenTransferProxy.removeAuthorizedAddress(address, { + await tokenTransferProxy.removeAuthorizedAddress.sendTransactionAsync(address, { from: owner, }); const afterRemove = await tokenTransferProxy.getAuthorizedAddresses(); diff --git a/packages/contracts/test/token_transfer_proxy/transfer_from.ts b/packages/contracts/test/token_transfer_proxy/transfer_from.ts index bd7adcfae..c35a7276a 100644 --- a/packages/contracts/test/token_transfer_proxy/transfer_from.ts +++ b/packages/contracts/test/token_transfer_proxy/transfer_from.ts @@ -1,8 +1,11 @@ import { BlockchainLifecycle, devConstants, web3Factory } from '@0xproject/dev-utils'; +import { BigNumber } from '@0xproject/utils'; import { Web3Wrapper } from '@0xproject/web3-wrapper'; import * as chai from 'chai'; import * as Web3 from 'web3'; +import { DummyTokenContract } from '../../src/contract_wrappers/generated/dummy_token'; +import { TokenTransferProxyContract } from '../../src/contract_wrappers/generated/token_transfer_proxy'; import { Balances } from '../../util/balances'; import { constants } from '../../util/constants'; import { ContractName } from '../../util/types'; @@ -19,29 +22,31 @@ describe('TokenTransferProxy', () => { let accounts: string[]; let owner: string; let notAuthorized: string; - const INIT_BAL = 100000000; - const INIT_ALLOW = 100000000; + const INIT_BAL = new BigNumber(100000000); + const INIT_ALLOW = new BigNumber(100000000); - let tokenTransferProxy: Web3.ContractInstance; - let rep: Web3.ContractInstance; + let tokenTransferProxy: TokenTransferProxyContract; + let rep: DummyTokenContract; let dmyBalances: Balances; before(async () => { accounts = await web3Wrapper.getAvailableAddressesAsync(); owner = notAuthorized = accounts[0]; - tokenTransferProxy = await deployer.deployAsync(ContractName.TokenTransferProxy); - rep = await deployer.deployAsync(ContractName.DummyToken); + const tokenTransferProxyInstance = await deployer.deployAsync(ContractName.TokenTransferProxy); + tokenTransferProxy = new TokenTransferProxyContract(tokenTransferProxyInstance); + const repInstance = await deployer.deployAsync(ContractName.DummyToken); + rep = new DummyTokenContract(repInstance); dmyBalances = new Balances([rep], [accounts[0], accounts[1]]); await Promise.all([ - rep.approve(tokenTransferProxy.address, INIT_ALLOW, { + rep.approve.sendTransactionAsync(tokenTransferProxy.address, INIT_ALLOW, { from: accounts[0], }), - rep.setBalance(accounts[0], INIT_BAL, { from: owner }), - rep.approve(tokenTransferProxy.address, INIT_ALLOW, { + rep.setBalance.sendTransactionAsync(accounts[0], INIT_BAL, { from: owner }), + rep.approve.sendTransactionAsync(tokenTransferProxy.address, INIT_ALLOW, { from: accounts[1], }), - rep.setBalance(accounts[1], INIT_BAL, { from: owner }), + rep.setBalance.sendTransactionAsync(accounts[1], INIT_BAL, { from: owner }), ]); }); beforeEach(async () => { @@ -54,20 +59,34 @@ describe('TokenTransferProxy', () => { describe('transferFrom', () => { it('should throw when called by an unauthorized address', async () => { expect( - tokenTransferProxy.transferFrom(rep.address, accounts[0], accounts[1], 1000, { from: notAuthorized }), + tokenTransferProxy.transferFrom.sendTransactionAsync( + rep.address, + accounts[0], + accounts[1], + new BigNumber(1000), + { + from: notAuthorized, + }, + ), ).to.be.rejectedWith(constants.REVERT); }); it('should allow an authorized address to transfer', async () => { const balances = await dmyBalances.getAsync(); - await tokenTransferProxy.addAuthorizedAddress(notAuthorized, { + await tokenTransferProxy.addAuthorizedAddress.sendTransactionAsync(notAuthorized, { from: owner, }); - const transferAmt = 10000; - await tokenTransferProxy.transferFrom(rep.address, accounts[0], accounts[1], transferAmt, { - from: notAuthorized, - }); + const transferAmt = new BigNumber(10000); + await tokenTransferProxy.transferFrom.sendTransactionAsync( + rep.address, + accounts[0], + accounts[1], + transferAmt, + { + from: notAuthorized, + }, + ); const newBalances = await dmyBalances.getAsync(); expect(newBalances[accounts[0]][rep.address]).to.be.bignumber.equal( |