Currently everything in files ending with .t.sol is filtered out, but this is not super robust:
- Some projects might have implementations of base contracts that they test in
.t.sol files (e.g. Solmate)
- Not all projects use
.t.sol to denote tests
A more robust check would be to filter out contracts that only have test*, constructor and setUp functions.
The same is true for the dependency contract check: all contracts in lib/ are filtered out, but some projects might store their dependencies elsewhere (e.g. node_modules/).
Currently everything in files ending with
.t.solis filtered out, but this is not super robust:.t.solfiles (e.g. Solmate).t.solto denote testsA more robust check would be to filter out contracts that only have
test*,constructorandsetUpfunctions.The same is true for the dependency contract check: all contracts in
lib/are filtered out, but some projects might store their dependencies elsewhere (e.g.node_modules/).