Better handling of rules corner cases
FTR, @tbroyer said "I've been thinking about a more "descriptive" testing harness where we'd describe (e.g. as YAML) what we expect in the report (everything in the YAML should be present in the report with the same value, everything in the report and not in the YAML is accepted, unchecked); but in the mean time we can have more than one function per rule in our tests; and we should probably try to test 3 cases for each rule: non-triggered, passed and failed.
BTW, instead of two booleans passed and triggered where passed is expected to be true if triggered is false; we could instead use a status with 3 values: n/a, success and failure."