Migrate from truffle to test-environment (#2007)

* Sketch

* Migrate all tests to test-env

* Finish migration to test-env

* Add config

* Work on GSN tests

* Migrate to newer test-env version and loader syntax

* Add GSN setup

* Finish test-env migration

* Setup coverage using test-env

* Migrate to npm package

* Fix package.json

* Add compile step to CI

* Add comment on coverage setup

* Remove dependency on @truffle/contract

* Fix package-lock merge

* Fix linter errors

* Upgrade test-environment, depend locally on ganche-coverage

* Improve coverage script

* Improve sign.js API

* Move accounts destructuring to describe block

* Switch to prebuilt ethereumjs-vm package

* Upgrade test-enviroment version

* use workspace in circleci config

* remove unnecessary npx
This commit is contained in:
Nicolás Venturo
2019-11-28 15:46:42 -03:00
committed by Francisco Giordano
parent ca6a5dc8a2
commit 5f92adc2e7
87 changed files with 23947 additions and 890 deletions

View File

@ -1,7 +1,11 @@
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const CapperRoleMock = artifacts.require('CapperRoleMock');
const { accounts, contract } = require('@openzeppelin/test-environment');
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const CapperRoleMock = contract.fromArtifact('CapperRoleMock');
describe('CapperRole', function () {
const [ capper, otherCapper, ...otherAccounts ] = accounts;
contract('CapperRole', function ([_, capper, otherCapper, ...otherAccounts]) {
beforeEach(async function () {
this.contract = await CapperRoleMock.new({ from: capper });
await this.contract.addCapper(otherCapper, { from: capper });

View File

@ -1,7 +1,11 @@
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const MinterRoleMock = artifacts.require('MinterRoleMock');
const { accounts, contract } = require('@openzeppelin/test-environment');
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const MinterRoleMock = contract.fromArtifact('MinterRoleMock');
describe('MinterRole', function () {
const [ minter, otherMinter, ...otherAccounts ] = accounts;
contract('MinterRole', function ([_, minter, otherMinter, ...otherAccounts]) {
beforeEach(async function () {
this.contract = await MinterRoleMock.new({ from: minter });
await this.contract.addMinter(otherMinter, { from: minter });

View File

@ -1,7 +1,11 @@
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const PauserRoleMock = artifacts.require('PauserRoleMock');
const { accounts, contract } = require('@openzeppelin/test-environment');
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const PauserRoleMock = contract.fromArtifact('PauserRoleMock');
describe('PauserRole', function () {
const [ pauser, otherPauser, ...otherAccounts ] = accounts;
contract('PauserRole', function ([_, pauser, otherPauser, ...otherAccounts]) {
beforeEach(async function () {
this.contract = await PauserRoleMock.new({ from: pauser });
await this.contract.addPauser(otherPauser, { from: pauser });

View File

@ -1,7 +1,11 @@
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const SignerRoleMock = artifacts.require('SignerRoleMock');
const { accounts, contract } = require('@openzeppelin/test-environment');
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const SignerRoleMock = contract.fromArtifact('SignerRoleMock');
describe('SignerRole', function () {
const [ signer, otherSigner, ...otherAccounts ] = accounts;
contract('SignerRole', function ([_, signer, otherSigner, ...otherAccounts]) {
beforeEach(async function () {
this.contract = await SignerRoleMock.new({ from: signer });
await this.contract.addSigner(otherSigner, { from: signer });

View File

@ -1,7 +1,11 @@
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const WhitelistAdminRoleMock = artifacts.require('WhitelistAdminRoleMock');
const { accounts, contract } = require('@openzeppelin/test-environment');
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const WhitelistAdminRoleMock = contract.fromArtifact('WhitelistAdminRoleMock');
describe('WhitelistAdminRole', function () {
const [ whitelistAdmin, otherWhitelistAdmin, ...otherAccounts ] = accounts;
contract('WhitelistAdminRole', function ([_, whitelistAdmin, otherWhitelistAdmin, ...otherAccounts]) {
beforeEach(async function () {
this.contract = await WhitelistAdminRoleMock.new({ from: whitelistAdmin });
await this.contract.addWhitelistAdmin(otherWhitelistAdmin, { from: whitelistAdmin });

View File

@ -1,7 +1,11 @@
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const WhitelistedRoleMock = artifacts.require('WhitelistedRoleMock');
const { accounts, contract } = require('@openzeppelin/test-environment');
const { shouldBehaveLikePublicRole } = require('../../behaviors/access/roles/PublicRole.behavior');
const WhitelistedRoleMock = contract.fromArtifact('WhitelistedRoleMock');
describe('WhitelistedRole', function () {
const [ whitelisted, otherWhitelisted, whitelistAdmin, ...otherAccounts ] = accounts;
contract('WhitelistedRole', function ([_, whitelisted, otherWhitelisted, whitelistAdmin, ...otherAccounts]) {
beforeEach(async function () {
this.contract = await WhitelistedRoleMock.new({ from: whitelistAdmin });
await this.contract.addWhitelisted(whitelisted, { from: whitelistAdmin });