This refactors the tester class to use an abstract class pattern, and adds a new concrete implementation in the form of an InteractiveTester.
This is a thin wrapper over the magma Python simulator, mainly to handle the conversion of types going in and out of the simulator (using our standard BitVector, Bit pattern now).
There's improvements to be made (such as changing the magma simulator target to reuse this logic in the staged tester), but this is aimed at getting the minimum functionality required for the magmathon.
This refactors the tester class to use an abstract class pattern, and adds a new concrete implementation in the form of an InteractiveTester.
This is a thin wrapper over the magma Python simulator, mainly to handle the conversion of types going in and out of the simulator (using our standard BitVector, Bit pattern now).
There's improvements to be made (such as changing the magma simulator target to reuse this logic in the staged tester), but this is aimed at getting the minimum functionality required for the magmathon.