gotlin/internal/lang/pointer_test.go

28 lines
536 B
Go

package lang
import (
"strings"
"testing"
)
func TestGenerateGoAddressOfExpression(t *testing.T) {
prog, err := Parse(`
package demo
import encoding.json
fun decode(body: ByteSlice, target: Account) {
json.Unmarshal(body, &target)
}
`)
if err != nil {
t.Fatalf("parse failed: %v", err)
}
out, err := GenerateGo(prog)
if err != nil {
t.Fatalf("generation failed: %v", err)
}
if !strings.Contains(string(out), "json.Unmarshal(body, &target)") {
t.Fatalf("generated Go missing address-of expression:\n%s", out)
}
}