#include "gate_summary.h" #include int main() { GateSummary summary; assert(summary.severity(true) == 1); // Empty captures are not OK. summary.observe(0); summary.observe(1); summary.observe(2); assert(summary.severity(false) == 1); assert(summary.severity(true) == 0); summary.observe(0); // A command without a complete ACK at EOF. assert(summary.severity(true) == 1); summary.observe(2); assert(summary.severity(true) == 0); summary.observe(3); assert(summary.severity(true) == 1); summary.observe(4); assert(summary.severity(false) == 2); assert(summary.severity(true) == 2); summary.observe(2); // Later good events never hide earlier faults. assert(summary.severity(true) == 2); summary.reset(); assert(summary.severity(true) == 1); summary.observe(5); assert(summary.severity(true) == 2); }