// This is a header // The following is an error, also this comment should be "ignored" and thus green, not red begin Blah1 ERROR: This is a real error. It should be red. end Blah1 begin Blah1 This is another part of Blah1 end Blah1 // The following is an expected ErrorLink to section: Blah2
blah2.html end Blah2 // The following is an Error that is Waived (i.e. permitted for the moment). begin Blah3 ERROR: Bad, but allowed for now, should be flagged in brown end Blah3Link to section: Nested2
nested2.html end nested2 // Blah5 tests. Errors are suppressed in section Blah5 but not otherwise begin Blah5 A BLAH5 message in a BLAH5 section is suppressed end Blah5 A BLAH5 message outside a BLAH5 section is counted begin Blah5 A second BLAH5 message in a BLAH5 section is suppressed end Blah5 // Expirations: // // expired error - error no longer applied after date // expired warn - warn no longer applied after date // expired ignore - ignore no longer applied after date // I.e. an expired rule is no longer applied, as if it is not even typed into the logpro file begin Blah4 // The following is an Error that was ignored through 01/01/2002 and thus should now be FAIL (i.e. be red) ERROR: An error that was suppressed before 01/01/2002, this should now FAIL // The following is an Error that is ignored through 01/01/2020 and thus should currently PASS (i.e. be green) ERROR: This error is waived until 01/01/2020 and thus should PASS end Blah4 miscellaneous output which doesn't match any expects more miscellaneous output still more miscellaneous output. // A warning WARNING: This had better be flagged in orange! // This one is expected to be 1.9 +/- 0.1 Measured voltage output: 1.8v // This one is expected to be 0.5 +/- 0.1 Measured output current: 0.39mA // This one is expected to be 110GHz +/- 2GHz Freq: 1.12e11 Hz Freq: 1.1197e+10Hz // these should trigger the 1.9 +/- 0.1 expect:value check An expect:value test; out: 4 2.01 # should fail An expect:value test; out: 5 1.99 # should pass // these should trigger the > 1.9 expect:value check An expect:value test; cmpout: 6 1.89 # should fail An expect:value test; cmpout: 7 1.92 # should pass // A crash is captured as an abort CRASH!!! // This is nothing 'This line is ignored' // A case where we are capturing multiple values on a single line and exectuting // multiple calls to load them First: 1 Second: 2 Third: 3 Fourth: 4 This is a line to trigger CHECK This is a line to trigger SKIP SKIPME The End ==========================LOGPRO SUMMARY========================== Trigger: Blah5End OK, count=2 Trigger: Blah5 OK, count=2 Trigger: NON-REQUIRED trigger OPTIONAL, count=0 Trigger: Blah4End OK, count=1 Trigger: Blah4 OK, count=1 Trigger: Blah3End OK, count=1 Trigger: Blah3 OK, count=1 Trigger: Nested2End OK, count=3 Trigger: Nested2 OK, count=3 Trigger: Nested1End OK, count=1 Trigger: Nested1 OK, count=1 Trigger: Blah2End OK, count=1 Trigger: Blah2 OK, count=1 Trigger: InitEnd OK, count=1 Trigger: Init OK, count=1 Trigger: LogFileBodyStart OK, count=1
RuleNum | RuleType | Status | Comp | Count/Val | Desc | Count | Rx | |||
---|---|---|---|---|---|---|---|---|---|---|
Expects for LogFileBody section: #f | ||||||||||
rule-1 | Error | FAIL | < | 1 | Only have one BLAH5 error outside of the Blah5 section | 1 | /^A.*BLAH5/ | |||
rule-3 | Ignore | OK | = | 1 | single quotes | 1 | /'This line is ignored'/ | |||
rule-5 | Required | FAIL | > | 0 | Something required but not found | 0 | /This is required but not found/ | |||
rule-6 | Value | FAIL | 1.9 | +/- | 0.1 | - | /Measured voltage output:\s*v/ | |||
rule-7 | Value | FAIL | 0.5 | +/- | 0.1 | 0.39 | /Measured output current:\s*([\d\.\+\-e]+)mA/ | |||
rule-8 | Value | OK | 110000000000.0 | +/- | 2000000000.0 | 112000000000.0 | /Freq:\s*([\d\.\+\-e]+)\s+Hz/ | |||
rule-9 | Value | FAIL | 110000000000.0 | +/- | 1000000000.0 | 11197000000.0 | /Freq:\s*([\d\.\+\-e]+)Hz/ | |||
rule-10 | Value | FAIL | 110000000000.0 | +/- | 1000000000.0 | - | /Freq:\s*([\d\.\+\-e]+)zH/ | |||
rule-14 | Ignore | OK | > | 0 | Testing substitution | 1 | /(misc).*(out\S+)\s+(.*ich).*(exp.*)$/ | |||
rule-15 | Value | FAIL | 1.9 | +/- | 0.1 | 1.99 | / out: (\d+)\s+([\d\.\+\-e]+)/ | |||
rule-16 | Value | FAIL | > | 1.9 | 1.92 | / cmpout: (\d+)\s+([\d\.\+\-e]+)/ | ||||
rule-18 | Ignore | OK | < | 99 | Ignore the word error in comments | 2 | /^\/\/.*error/ | |||
rule-19 | Warning | FAIL | = | 0 | Any warning | 1 | /WARNING/ | |||
rule-20 | Error | FAIL | = | 0 | ERROR BLAH | 1 | /ERROR/, /error/ | |||
rule-21 | Required | OK | <= | 1 | Quad values | 1 | /First:\s+(\d+)\s+Second:\s+(\d+)\s+Third:\s+(\d+)\s+Fourth:\s+(\d+)/ | |||
rule-22 | Required-warn | FAIL | = | 1 | I'm gonna warn you once... | 0 | /I'm gonna warn you once/ | |||
rule-23 | Check | OK | = | 1 | If flagged, raise CHECKED flag and exit with error code 3 | 1 | /This is a line to trigger CHECK/ | |||
rule-24 | Abort | FAIL | = | 0 | If flagged our process failed to run correctly | 1 | /^CRASH/ | |||
rule-25 | Skip | FAIL | = | 0 | If flagged we are asking for this to exit with code 6 | 1 | /^SKIPME/ | |||
Expects for Init section: #f | ||||||||||
rule-4 | Required | OK | = | 1 | Header | 1 | /This is a header/ | |||
Expects for Blah5 section: #f | ||||||||||
rule-0 | Waive | OK | = | 2 | Have exactly two BLAH5 errors to waive inside the two Blah5 sections | 2 | /^A.*BLAH5/ | |||
Expects for Blah4 section: #f | ||||||||||
rule-12 | Ignore | OK | >= | 4 | ERROR: ignore applied until 2020, thereafter flagged as error | 1 | /ERROR:.*2020/ | |||
rule-13 | Error | FAIL | = | 0 | Any ERROR in section blah4 | 1 | /ERROR/ | |||
Expects for Blah3 section: #f | ||||||||||
rule-2 | Waive | OK | = | 1 | A real error that has been waived | 1 | /ERROR:/ | |||
Expects for Blah2 section: blah2.html | ||||||||||
rule-17 | Ignore | OK | < | 99 | FALSE ERROR | 1 | /ERROR/ |