From 1b6ef1e43e1ec1107ce29a6438b399352d09fbc2 Mon Sep 17 00:00:00 2001 From: Mel Date: Mon, 11 Jul 2022 00:35:59 +0200 Subject: Rebuild compiler and code builder with markers --- pkg/lang/vm/code/builder_test.go | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 pkg/lang/vm/code/builder_test.go (limited to 'pkg/lang/vm/code/builder_test.go') diff --git a/pkg/lang/vm/code/builder_test.go b/pkg/lang/vm/code/builder_test.go new file mode 100644 index 0000000..29f1974 --- /dev/null +++ b/pkg/lang/vm/code/builder_test.go @@ -0,0 +1,31 @@ +package code_test + +import ( + "jinx/pkg/lang/vm/code" + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestMarker(t *testing.T) { + builder := code.NewBuilder() + + builder.AppendInt(123) + builder.AppendMarkerReference("hello world") + + builder.PutMarker("hello world") + builder.AppendInt(123) + + result, err := builder.Build() + assert.NoError(t, err) + + expectedBuilder := code.NewBuilder() + expectedBuilder.AppendInt(123) + expectedBuilder.AppendInt(16) + expectedBuilder.AppendInt(123) + + expected, err := expectedBuilder.Build() + assert.NoError(t, err) + + assert.Equal(t, expected.Code(), result.Code()) +} -- cgit 1.4.1