2 from check_output
import *
4 src
= "keepgoing_multi_step.sv"
8 assert_0
= line_ref(workdir
, src
, "assert(0)")
9 step_3_7
= line_ref(workdir
, src
, "step 3,7")
10 step_5
= line_ref(workdir
, src
, "step 5")
11 step_7
= line_ref(workdir
, src
, "step 7")
13 log
= open(workdir
+ "/logfile.txt").read()
14 log_per_trace
= log
.split("Writing trace to VCD file")[:-1]
16 assert len(log_per_trace
) == 4
19 assert re
.search(r
"Assert failed in test: %s \(.*\)$" % assert_0
, log_per_trace
[0], re
.M
)
22 assert re
.search(r
"Assert failed in test: %s \(.*\) \[failed before\]$" % assert_0
, log_per_trace
[i
], re
.M
)
25 assert re
.search(r
"Assert failed in test: %s \(.*\)$" % step_3_7
, log_per_trace
[1], re
.M
)
26 assert re
.search(r
"Assert failed in test: %s \(.*\)$" % step_5
, log_per_trace
[2], re
.M
)
27 assert re
.search(r
"Assert failed in test: %s \(.*\) \[failed before\]$" % step_3_7
, log_per_trace
[3], re
.M
)
28 assert re
.search(r
"Assert failed in test: %s \(.*\)$" % step_7
, log_per_trace
[3], re
.M
)
30 pattern
= f
"Property ASSERT in test at {assert_0} failed. Trace file: engine_0/trace0.vcd"
31 assert re
.search(pattern
, open(f
"{workdir}/{workdir}.xml").read())