package test import "bytes" import "testing" import "github.com/firestuff/subcoding/asm" import "github.com/firestuff/subcoding/grow" func TestGrow(t *testing.T) { r := bytes.NewReader([]byte(` global_memory_size: 1 function_memory_size: 1 instruction_limit: 2 samples: - global_memory_inputs: 0: 0 global_memory_outputs: 0: 0 - global_memory_inputs: 0: 1 global_memory_outputs: 0: 5 - global_memory_inputs: 0: 2 global_memory_outputs: 0: 10 - global_memory_inputs: 0: 100 global_memory_outputs: 0: 500 `)) def, err := grow.NewDefinition(r) if err != nil { t.Fatal(err) } prog, err := def.Grow() if err != nil { t.Fatal(err) } src, err := asm.Disassemble(prog) if err != nil { t.Fatal(err) } expected := `global_memory_size: 1 function_memory_size: 1 instruction_limit: 2 functions: - - [mul, g0, 5] ` if src != expected { t.Fatalf("Expected:\n%sActual:\n%s", expected, src) } }