leap-contracts
leap-contracts copied to clipboard
Firefly additional tests
This is a PR from Runtime Verification (https://runtimeverification.com), the developers of the Firefly tool (https://fireflyblockchain.com). We work in smart contract quality assurance, and have been working on the Firefly tool as an automated health-check and augmentation of users test-suites (https://fireflyblockchain.com/about.html).
We ran our tool on this repository, and found several places where there was low bytecode coverage. These additional tests were added by looking at those spots of low coverage and trying to improve them.
Here is the bytecode-level coverage report before: https://fireflyblockchain.com/app/report.html?reportId=7e0c6e35-6e1f-47c1-933c-1937f2abfc40, and after: https://fireflyblockchain.com/app/report.html?reportId=708b84e8-7b7f-460f-9542-eacd475a9faf.
Here is a sample coverage report with a tour for explaining how to view them: https://fireflyblockchain.com/app/report.html?reportId=00000000-0000-0000-0000-000000000000.
In particular, you'll see that the coverage improves over the following tokens:
- AdminableProxy: 56% -> 65%
- Bridge: 72% -> 85%
- BridgeProxy: 33% -> 59%
- ExitHandlerProxy: 32% -> 58%
- FastExitHandler: 38% -> 51%
- Migrations: 26% -> 62%
- MinGov: 70% -> 82%
- OperatorProxy: 14% -> 51%
- PoaOperator: 3 %-> 29%
- SimpleToken: 31% -> 73%
- SpaceDustNFT: 35% -> 64%
- SwapRegistry: 73% -> 82%
- Vault: 66% -> 76%
Note that Firefly measures bytecode coverage, not Solidity-line coverage, which several other tools measure.