sanity.spec 507 B

123456789101112
  1. /*
  2. This rule looks for a non-reverting execution path to each method, including those overridden in the harness.
  3. A method has such an execution path if it violates this rule.
  4. How it works:
  5. - If there is a non-reverting execution path, we reach the false assertion, and the sanity fails.
  6. - If all execution paths are reverting, we never call the assertion, and the method will pass this rule vacuously.
  7. */
  8. rule sanity(env e, method f, calldataarg arg) {
  9. f(e, arg);
  10. assert false;
  11. }