Solidity test suite, with helper functions. Use with Truffle and Mocha!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Luiserebii 8a83db5454
Bumping up version to v0.0.7-alpha
hace 11 meses
src Really minor improvement, removing console.log hace 11 meses
.gitattributes Adding .gitattributes hace 11 meses
.gitignore Initial commit hace 11 meses
LICENSE Adding LICENSE hace 11 meses
README.md Edits and corrections to README.md, placing errors.js in index.js module hace 11 meses
index.js Minor re-organization, so bumping version up hace 11 meses
package-lock.json Initial commit hace 11 meses
package.json Bumping up version to v0.0.7-alpha hace 11 meses

README.md

solidity-test

npm version

A simple node module to aid smart contract development in testing contracts. Initially created due to the desire to modularize testing for reverts, now looking to expand into something more definite.

Quick Example

const solidityTest = require('solidityTest');
const solAssert = solidityTest.solAssert;

const notOwner = '0x00000000000000000000000000000000000';

//Within Mocha:

it('reverts transaction', async () => {
  
  await solAssert.revert(
    async () => {  
      someContract.functionOnlyOwnerCanCall().send({from: notOwner});
    }
  )
  
})

And, if perhaps testing for ownership, and wanting to be strict about the kind of error received:

const solidityTest = require('solidityTest');
const solAssert = solidityTest.solAssert;
const errors = solidityTest.errors;

const notOwner = '0x00000000000000000000000000000000000';

//Within Mocha:

it('reverts transaction', async () => {

  //Passing an error string to revert will only pass when the error string is matched
  await solAssert.revert(
    async () => {
      someContract.functionOnlyOwnerCanCall().send({from: notOwner});
    }, errors.openzeppelin.ownable // which is: 'Ownable: caller is not the owner'
  )

})