Inspecting
November 29, 2018 ยท View on GitHub
The tester defines a __str__ method that includes an enumeration of the action sequence. It can be useful for mapping errors in the test bench back to the associated action.
For example, this code
tester = fault.Tester(circ, circ.CLK, default_print_format_str="%08x")
tester.poke(circ.I, 0)
tester.eval()
tester.expect(circ.O, 0)
tester.poke(circ.CLK, 0)
tester.step()
tester.print(circ.O)
print(tester)
will print out
<fault.tester.Tester object at 0x112208358>
Actions:
0: Poke(BasicClkCircuit.I, 0)
1: Eval()
2: Expect(BasicClkCircuit.O, 0)
3: Poke(BasicClkCircuit.CLK, 0)
4: Step(BasicClkCircuit.CLK, steps=1)
5: Print(BasicClkCircuit.O, "%08x")
Actions:
0: Poke(BasicClkCircuit.I, 0)
1: Eval()
2: Expect(BasicClkCircuit.O, 0)
3: Poke(BasicClkCircuit.CLK, 0)
4: Step(BasicClkCircuit.CLK, steps=1)
5: Print(BasicClkCircuit.O, "%08x")