Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 0 additions & 31 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 0 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,6 @@
},
"homepage": "https://github.com/OpenZeppelin/zeppelin-solidity",
"devDependencies": {
"babel-polyfill": "^6.26.0",
"babel-preset-es2015": "^6.18.0",
"babel-preset-stage-2": "^6.18.0",
"babel-preset-stage-3": "^6.17.0",
"babel-register": "^6.26.0",
"chai": "^4.1.2",
"chai-as-promised": "^7.0.0",
"chai-bignumber": "^2.0.2",
Expand Down
7 changes: 4 additions & 3 deletions test/Bounty.test.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import { ethGetBalance, ethSendTransaction } from './helpers/web3';
const { ethGetBalance, ethSendTransaction } = require('./helpers/web3');

var SecureTargetBounty = artifacts.require('SecureTargetBounty');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we use const for these?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but we're only removing Babel in this PR, that's coming on a separate one to keep everything tidy.

Copy link
Contributor Author

@nventuro nventuro Jul 18, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Opened #1091.

var InsecureTargetBounty = artifacts.require('InsecureTargetBounty');

const sendReward = async (from, to, value) => ethSendTransaction({
from, to, value,
});
var SecureTargetBounty = artifacts.require('SecureTargetBounty');
var InsecureTargetBounty = artifacts.require('InsecureTargetBounty');

function awaitEvent (event, handler) {
return new Promise((resolve, reject) => {
Expand Down
6 changes: 3 additions & 3 deletions test/Heritable.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import increaseTime from './helpers/increaseTime';
import expectThrow from './helpers/expectThrow';
import assertRevert from './helpers/assertRevert';
const { increaseTime } = require('./helpers/increaseTime');
const { expectThrow } = require('./helpers/expectThrow');
const { assertRevert } = require('./helpers/assertRevert');

const NULL_ADDRESS = '0x0000000000000000000000000000000000000000';

Expand Down
4 changes: 2 additions & 2 deletions test/LimitBalance.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import assertRevert from './helpers/assertRevert';
import { ethGetBalance } from './helpers/web3';
const { assertRevert } = require('./helpers/assertRevert');
const { ethGetBalance } = require('./helpers/web3');

var LimitBalanceMock = artifacts.require('LimitBalanceMock');

Expand Down
3 changes: 1 addition & 2 deletions test/ReentrancyGuard.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@

import expectThrow from './helpers/expectThrow';
const { expectThrow } = require('./helpers/expectThrow');
const ReentrancyMock = artifacts.require('ReentrancyMock');
const ReentrancyAttack = artifacts.require('ReentrancyAttack');

Expand Down
5 changes: 2 additions & 3 deletions test/SimpleSavingsWallet.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@

import expectThrow from './helpers/expectThrow';
import { ethGetBalance, ethSendTransaction } from './helpers/web3';
const { expectThrow } = require('./helpers/expectThrow');
const { ethGetBalance, ethSendTransaction } = require('./helpers/web3');

const SimpleSavingsWallet = artifacts.require('SimpleSavingsWallet');

Expand Down
11 changes: 5 additions & 6 deletions test/access/SignatureBouncer.test.js
Original file line number Diff line number Diff line change
@@ -1,26 +1,25 @@

import assertRevert from '../helpers/assertRevert';
import { signHex } from '../helpers/sign';
const { assertRevert } = require('../helpers/assertRevert');
const { signHex } = require('../helpers/sign');

const Bouncer = artifacts.require('SignatureBouncerMock');

require('chai')
.use(require('chai-as-promised'))
.should();

export const getSigner = (contract, signer, data = '') => (addr) => {
const getSigner = (contract, signer, data = '') => (addr) => {
// via: https://github.com/OpenZeppelin/zeppelin-solidity/pull/812/files
const message = contract.address.substr(2) + addr.substr(2) + data;
// ^ substr to remove `0x` because in solidity the address is a set of byes, not a string `0xabcd`
return signHex(signer, message);
};

export const getMethodId = (methodName, ...paramTypes) => {
const getMethodId = (methodName, ...paramTypes) => {
// methodId is a sha3 of the first 4 bytes after 0x of 'method(paramType1,...)'
return web3.sha3(`${methodName}(${paramTypes.join(',')})`).substr(2, 8);
};

export const stripAndPadHexValue = (hexVal, sizeInBytes, start = true) => {
const stripAndPadHexValue = (hexVal, sizeInBytes, start = true) => {
// strip 0x from the font and pad with 0's for
const strippedHexVal = hexVal.substr(2);
return start ? strippedHexVal.padStart(sizeInBytes * 2, 0) : strippedHexVal.padEnd(sizeInBytes * 2, 0);
Expand Down
7 changes: 3 additions & 4 deletions test/crowdsale/AllowanceCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@

import ether from '../helpers/ether';
import assertRevert from '../helpers/assertRevert';
import { ethGetBalance } from '../helpers/web3';
const { ether } = require('../helpers/ether');
const { assertRevert } = require('../helpers/assertRevert');
const { ethGetBalance } = require('../helpers/web3');

const BigNumber = web3.BigNumber;

Expand Down
4 changes: 2 additions & 2 deletions test/crowdsale/CappedCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import ether from '../helpers/ether';
import EVMRevert from '../helpers/EVMRevert';
const { ether } = require('../helpers/ether');
const { EVMRevert } = require('../helpers/EVMRevert');

const BigNumber = web3.BigNumber;

Expand Down
4 changes: 2 additions & 2 deletions test/crowdsale/Crowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import ether from '../helpers/ether';
import { ethGetBalance } from '../helpers/web3';
const { ether } = require('../helpers/ether');
const { ethGetBalance } = require('../helpers/web3');

const BigNumber = web3.BigNumber;

Expand Down
8 changes: 4 additions & 4 deletions test/crowdsale/FinalizableCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { advanceBlock } from '../helpers/advanceToBlock';
import { increaseTimeTo, duration } from '../helpers/increaseTime';
import latestTime from '../helpers/latestTime';
import EVMRevert from '../helpers/EVMRevert';
const { advanceBlock } = require('../helpers/advanceToBlock');
const { increaseTimeTo, duration } = require('../helpers/increaseTime');
const { latestTime } = require('../helpers/latestTime');
const { EVMRevert } = require('../helpers/EVMRevert');

const BigNumber = web3.BigNumber;

Expand Down
8 changes: 4 additions & 4 deletions test/crowdsale/IncreasingPriceCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import ether from '../helpers/ether';
import { advanceBlock } from '../helpers/advanceToBlock';
import { increaseTimeTo, duration } from '../helpers/increaseTime';
import latestTime from '../helpers/latestTime';
const { ether } = require('../helpers/ether');
const { advanceBlock } = require('../helpers/advanceToBlock');
const { increaseTimeTo, duration } = require('../helpers/increaseTime');
const { latestTime } = require('../helpers/latestTime');

const BigNumber = web3.BigNumber;

Expand Down
4 changes: 2 additions & 2 deletions test/crowdsale/IndividuallyCappedCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import ether from '../helpers/ether';
import EVMRevert from '../helpers/EVMRevert';
const { ether } = require('../helpers/ether');
const { EVMRevert } = require('../helpers/EVMRevert');

const BigNumber = web3.BigNumber;

Expand Down
8 changes: 6 additions & 2 deletions test/crowdsale/MintedCrowdsale.behaviour.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ethGetBalance } from '../helpers/web3';
const { ethGetBalance } = require('../helpers/web3');

const BigNumber = web3.BigNumber;

Expand All @@ -7,7 +7,7 @@ const should = require('chai')
.use(require('chai-bignumber')(BigNumber))
.should();

export default function ([_, investor, wallet, purchaser], rate, value) {
function shouldBehaveLikeMintedCrowdsale ([_, investor, wallet, purchaser], rate, value) {
const expectedTokenAmount = rate.mul(value);

describe('as a minted crowdsale', function () {
Expand Down Expand Up @@ -44,3 +44,7 @@ export default function ([_, investor, wallet, purchaser], rate, value) {
});
});
}

module.exports = {
shouldBehaveLikeMintedCrowdsale,
};
4 changes: 2 additions & 2 deletions test/crowdsale/MintedCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import shouldBehaveLikeMintedCrowdsale from './MintedCrowdsale.behaviour';
import ether from '../helpers/ether';
const { shouldBehaveLikeMintedCrowdsale } = require('./MintedCrowdsale.behaviour');
const { ether } = require('../helpers/ether');

const BigNumber = web3.BigNumber;

Expand Down
10 changes: 5 additions & 5 deletions test/crowdsale/PostDeliveryCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { advanceBlock } from '../helpers/advanceToBlock';
import { increaseTimeTo, duration } from '../helpers/increaseTime';
import latestTime from '../helpers/latestTime';
import EVMRevert from '../helpers/EVMRevert';
import ether from '../helpers/ether';
const { advanceBlock } = require('../helpers/advanceToBlock');
const { increaseTimeTo, duration } = require('../helpers/increaseTime');
const { latestTime } = require('../helpers/latestTime');
const { EVMRevert } = require('../helpers/EVMRevert');
const { ether } = require('../helpers/ether');

const BigNumber = web3.BigNumber;

Expand Down
12 changes: 6 additions & 6 deletions test/crowdsale/RefundableCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import ether from '../helpers/ether';
import { advanceBlock } from '../helpers/advanceToBlock';
import { increaseTimeTo, duration } from '../helpers/increaseTime';
import latestTime from '../helpers/latestTime';
import EVMRevert from '../helpers/EVMRevert';
import { ethGetBalance } from '../helpers/web3';
const { ether } = require('../helpers/ether');
const { advanceBlock } = require('../helpers/advanceToBlock');
const { increaseTimeTo, duration } = require('../helpers/increaseTime');
const { latestTime } = require('../helpers/latestTime');
const { EVMRevert } = require('../helpers/EVMRevert');
const { ethGetBalance } = require('../helpers/web3');

const BigNumber = web3.BigNumber;

Expand Down
10 changes: 5 additions & 5 deletions test/crowdsale/TimedCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import ether from '../helpers/ether';
import { advanceBlock } from '../helpers/advanceToBlock';
import { increaseTimeTo, duration } from '../helpers/increaseTime';
import latestTime from '../helpers/latestTime';
import EVMRevert from '../helpers/EVMRevert';
const { ether } = require('../helpers/ether');
const { advanceBlock } = require('../helpers/advanceToBlock');
const { increaseTimeTo, duration } = require('../helpers/increaseTime');
const { latestTime } = require('../helpers/latestTime');
const { EVMRevert } = require('../helpers/EVMRevert');

const BigNumber = web3.BigNumber;

Expand Down
2 changes: 1 addition & 1 deletion test/crowdsale/WhitelistedCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import ether from '../helpers/ether';
const { ether } = require('../helpers/ether');

const BigNumber = web3.BigNumber;

Expand Down
14 changes: 7 additions & 7 deletions test/examples/SampleCrowdsale.test.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import ether from '../helpers/ether';
import { advanceBlock } from '../helpers/advanceToBlock';
import { increaseTimeTo, duration } from '../helpers/increaseTime';
import latestTime from '../helpers/latestTime';
import EVMRevert from '../helpers/EVMRevert';
import assertRevert from '../helpers/assertRevert';
import { ethGetBalance } from '../helpers/web3';
const { ether } = require('../helpers/ether');
const { advanceBlock } = require('../helpers/advanceToBlock');
const { increaseTimeTo, duration } = require('../helpers/increaseTime');
const { latestTime } = require('../helpers/latestTime');
const { EVMRevert } = require('../helpers/EVMRevert');
const { assertRevert } = require('../helpers/assertRevert');
const { ethGetBalance } = require('../helpers/web3');

const BigNumber = web3.BigNumber;

Expand Down
2 changes: 1 addition & 1 deletion test/examples/SimpleToken.test.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import decodeLogs from '../helpers/decodeLogs';
const { decodeLogs } = require('../helpers/decodeLogs');
const SimpleToken = artifacts.require('SimpleToken');

contract('SimpleToken', accounts => {
Expand Down
6 changes: 5 additions & 1 deletion test/helpers/EVMRevert.js
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
export default 'revert';
const EVMRevert = 'revert';

module.exports = {
EVMRevert,
};
6 changes: 5 additions & 1 deletion test/helpers/EVMThrow.js
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
export default 'invalid opcode';
const EVMThrow = 'invalid opcode';

module.exports = {
EVMThrow,
};
9 changes: 7 additions & 2 deletions test/helpers/advanceToBlock.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
export function advanceBlock () {
function advanceBlock () {
return new Promise((resolve, reject) => {
web3.currentProvider.sendAsync({
jsonrpc: '2.0',
Expand All @@ -11,7 +11,7 @@ export function advanceBlock () {
}

// Advances the block number so that the last mined block is `number`.
export default async function advanceToBlock (number) {
async function advanceToBlock (number) {
if (web3.eth.blockNumber > number) {
throw Error(`block number ${number} is in the past (current is ${web3.eth.blockNumber})`);
}
Expand All @@ -20,3 +20,8 @@ export default async function advanceToBlock (number) {
await advanceBlock();
}
}

module.exports = {
advanceBlock,
advanceToBlock,
};
6 changes: 5 additions & 1 deletion test/helpers/assertJump.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
export default async promise => {
async function assertJump (promise) {
try {
await promise;
assert.fail('Expected invalid opcode not received');
} catch (error) {
const invalidOpcodeReceived = error.message.search('invalid opcode') >= 0;
assert(invalidOpcodeReceived, `Expected "invalid opcode", got ${error} instead`);
}
}

module.exports = {
assertJump,
};
6 changes: 5 additions & 1 deletion test/helpers/assertRevert.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
export default async promise => {
async function assertRevert (promise) {
try {
await promise;
assert.fail('Expected revert not received');
} catch (error) {
const revertFound = error.message.search('revert') >= 0;
assert(revertFound, `Expected "revert", got ${error} instead`);
}
}

module.exports = {
assertRevert,
};
6 changes: 5 additions & 1 deletion test/helpers/decodeLogs.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
const SolidityEvent = require('web3/lib/web3/event.js');

export default function decodeLogs (logs, contract, address) {
function decodeLogs (logs, contract, address) {
return logs.map(log => {
const event = new SolidityEvent(null, contract.events[log.topics[0]], address);
return event.decode(log);
});
}

module.exports = {
decodeLogs,
};
6 changes: 5 additions & 1 deletion test/helpers/ether.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
export default function ether (n) {
function ether (n) {
return new web3.BigNumber(web3.toWei(n, 'ether'));
}

module.exports = {
ether,
};
Loading