github.com/expr-lang/expr@v1.16.9/vm/program_test.go (about)

     1  package vm_test
     2  
     3  import (
     4  	"strings"
     5  	"testing"
     6  
     7  	"github.com/expr-lang/expr/vm"
     8  )
     9  
    10  func TestProgram_Disassemble(t *testing.T) {
    11  	for op := vm.OpPush; op < vm.OpEnd; op++ {
    12  		program := vm.Program{
    13  			Constants: []any{1, 2},
    14  			Bytecode:  []vm.Opcode{op},
    15  			Arguments: []int{1},
    16  		}
    17  		d := program.Disassemble()
    18  		if strings.Contains(d, "(unknown)") {
    19  			t.Errorf("cannot disassemble all opcodes")
    20  		}
    21  	}
    22  }