LOGPRO RESULTS
Summary is here
(processed by logpro version 1.09, tool details at: logpro)
// 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

// The following is an expected Error
begin Blah2
ERROR: This error is expected, it will be green.
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 Blah3


// 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

// 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


The End



==========================LOGPRO SUMMARY==========================
Trigger: Blah5End                   OK, count=2
Trigger: Blah5                      OK, count=2
Trigger: Blah4End                   OK, count=1
Trigger: Blah4                      OK, count=1
Trigger: Blah3End                   OK, count=1
Trigger: Blah3                      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

Expects for LogFileBody section: Expect: Abort in LogFileBody FAIL, expected = 0 of If flagged our process failed to run correctly, got 1 Expect: Check in LogFileBody OK, expected = 1 of If flagged, raise CHECKED flag and exit with error code 3, got 1 Expect: Required in LogFileBody OK, expected = 1 of Quad values, got 1 Expect: Error in LogFileBody FAIL, expected = 0 of ERROR BLAH, got 1 Expect: Warning in LogFileBody FAIL, expected = 0 of Any warning, got 1 Expect: Ignore in LogFileBody OK, expected < 99 of Ignore the word error in comments, got 2 Expect: Value in LogFileBody FAIL, expected > 1.9 got 1.92, 1 pass, 1 fail Expect: Value in LogFileBody FAIL, expected 1.9 +/- 0.1 got 1.99, 1 pass, 1 fail Expect: Ignore in LogFileBody OK, expected > 0 of Testing substitution, got 1 Expect: Value in LogFileBody FAIL, expected 110000000000.0 +/- 1000000000.0 got -, 0 pass, 0 fail Expect: Value in LogFileBody FAIL, expected 110000000000.0 +/- 1000000000.0 got 11197000000.0, 0 pass, 1 fail Expect: Value in LogFileBody OK, expected 110000000000.0 +/- 2000000000.0 got 112000000000.0, 1 pass, 0 fail Expect: Value in LogFileBody FAIL, expected 0.5 +/- 0.1 got 0.39, 0 pass, 1 fail Expect: Value in LogFileBody OK, expected 1.9 +/- 0.1 got 1.8, 1 pass, 0 fail Expect: Required in LogFileBody FAIL, expected > 0 of Something required but not found, got 0 Expect: Error in LogFileBody FAIL, expected < 1 of Only have one BLAH5 error outside of the Blah5 section, got 1

Expects for Init section: Expect: Required in Init OK, expected = 1 of Header, got 1

Expects for Blah4 section: Expect: Error in Blah4 FAIL, expected = 0 of Any ERROR in section blah4, got 1 Expect: Ignore in Blah4 OK, expected < 4 of ERROR: ignore applied until 2020, thereafter flagged as error, got 1

Expects for Blah5 section: Expect: Waive in Blah5 OK, expected = 2 of Have exactly two BLAH5 errors to waive inside the two Blah5 sections, got 2

Expects for Blah2 section: Expect: Ignore in Blah2 OK, expected < 99 of FALSE ERROR, got 1

Expects for Blah3 section: Expect: Waive in Blah3 OK, expected = 1 of A real error that has been waived, got 1