Something went wrong. Try again.
🌱 A minimal programming language and compiler. git.urbach.dev/cli/q
high-performance programming-language compiler
Something went wrong. Try again.
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162package config_test
import ( "fmt" "path/filepath" "runtime" "testing"
"git.urbach.dev/cli/q/src/config" "git.urbach.dev/cli/q/src/global" "git.urbach.dev/go/assert")
func TestNew(t *testing.T) { osList := []string{"linux", "darwin", "windows"} archList := []string{"amd64", "arm64"} fileList := []string{"../../examples/hello", "../../examples/hello/hello.q"}
for _, os := range osList { for _, arch := range archList { global.OS = os global.Arch = arch
t.Run(fmt.Sprintf("%s-%s", os, arch), func(t *testing.T) { for _, file := range fileList { b := config.New(file) assert.NotEqual(t, b.Arch, config.UnknownArch) assert.NotEqual(t, b.OS, config.UnknownOS) } }) } }
global.OS = runtime.GOOS global.Arch = runtime.GOARCH}
func TestFields(t *testing.T) { b := config.New("../../examples/hello")
b.Matrix(func(b *config.Build) { assert.NotEqual(t, b.Arch, config.UnknownArch) assert.NotEqual(t, b.OS, config.UnknownOS)
exe := filepath.Base(b.Executable())
if b.OS == config.Windows { assert.Equal(t, exe, "hello.exe") } else { assert.Equal(t, exe, "hello") }
assert.True(t, b.FileAlign() > 0) assert.True(t, b.FileAlign() <= b.MemoryAlign())
if b.OS == config.Linux { assert.True(t, b.Congruent()) }
assert.NotNil(t, b.CPU()) })}