5749e3f9275256d090cb1c32c1d7ae015bf85fd2
1 from check_output
import *
3 task
= "keepgoing_smtc"
4 src
= "keepgoing_same_step.sv"
6 assert_a
= line_ref(task
, src
, "assert(a)")
7 assert_not_a
= line_ref(task
, src
, "assert(!a)")
8 assert_0
= line_ref(task
, src
, "assert(0)")
10 assert_false
= line_ref(task
, "extra.smtc", "assert false")
11 assert_distinct
= line_ref(task
, "extra.smtc", "assert (distinct")
13 log
= open(task
+ "/logfile.txt").read()
14 log_per_trace
= log
.split("Writing trace to VCD file")[:-1]
16 assert len(log_per_trace
) == 4
18 assert re
.search(r
"Assert failed in test: %s \(.*\)$" % assert_a
, log
, re
.M
)
19 assert re
.search(r
"Assert failed in test: %s \(.*\)$" % assert_not_a
, log
, re
.M
)
21 assert re
.search(r
"Assert src/%s failed: false" % assert_false
, log_per_trace
[0], re
.M
)
22 assert re
.search(r
"Assert failed in test: %s \(.*\)$" % assert_0
, log_per_trace
[1], re
.M
)
23 assert re
.search(r
"Assert failed in test: %s \(.*\) \[failed before\]$" % assert_0
, log_per_trace
[2], re
.M
)
24 assert re
.search(r
"Assert src/%s failed: \(distinct" % assert_distinct
, log_per_trace
[3], re
.M
)