Execute code between assembly and disassembly
This commit is contained in:
@@ -3,6 +3,7 @@ package test
|
||||
import "testing"
|
||||
|
||||
import "github.com/firestuff/subcoding/asm"
|
||||
import "github.com/firestuff/subcoding/vm"
|
||||
|
||||
func TestRoundTrip(t *testing.T) {
|
||||
src := `functions:
|
||||
@@ -20,6 +21,19 @@ func TestRoundTrip(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
state, err := vm.NewState(prog)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
err = state.Execute()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
expectGlobalMemory(t, state, 0, 1)
|
||||
expectGlobalMemorySigned(t, state, 1, -5)
|
||||
|
||||
dis, err := asm.Disassemble(prog)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
|
||||
Reference in New Issue
Block a user