- You should write tests just like a contract, and the contract name should start with Test, using an uppercase T. It uses the clean room environment just like the JavaScript test cases:
contract TestContract { ...}
- Write individual functions to represent each test case that must start with test, using a lowercase t. Each function is executed by a single transaction in the same order as the declaration:
contract TestContract { testCase1() { ... } testCase2() { ... }}
- Use the Assert.sol library provided by Truffle to handle the assertions. Import it from truffle/Assert.sol. You can replace the library with your custom made one, but it should follow the exact signature of Assert.sol:
import "truffle/Assert.sol"; ...