Mike Schwörer
8247fc4524
Some checks failed
Build Docker and Deploy / Run goext test-suite (push) Failing after 1m11s
92 lines
2.5 KiB
Go
92 lines
2.5 KiB
Go
package bfcodegen
|
|
|
|
import (
|
|
_ "embed"
|
|
"fmt"
|
|
"gogs.mikescher.com/BlackForestBytes/goext/cmdext"
|
|
"gogs.mikescher.com/BlackForestBytes/goext/langext"
|
|
"gogs.mikescher.com/BlackForestBytes/goext/tst"
|
|
"os"
|
|
"path/filepath"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
//go:embed _test_example_1.tgz
|
|
var EnumExampleModels1 []byte
|
|
|
|
//go:embed _test_example_2.tgz
|
|
var EnumExampleModels2 []byte
|
|
|
|
func TestGenerateEnumSpecs(t *testing.T) {
|
|
|
|
tmpFile := filepath.Join(t.TempDir(), langext.MustHexUUID()+".tgz")
|
|
|
|
tmpDir := filepath.Join(t.TempDir(), langext.MustHexUUID())
|
|
|
|
err := os.WriteFile(tmpFile, EnumExampleModels1, 0o777)
|
|
tst.AssertNoErr(t, err)
|
|
|
|
t.Cleanup(func() { _ = os.Remove(tmpFile) })
|
|
|
|
err = os.Mkdir(tmpDir, 0o777)
|
|
tst.AssertNoErr(t, err)
|
|
|
|
t.Cleanup(func() { _ = os.RemoveAll(tmpFile) })
|
|
|
|
_, err = cmdext.Runner("tar").Arg("-xvzf").Arg(tmpFile).Arg("-C").Arg(tmpDir).FailOnExitCode().FailOnTimeout().Timeout(time.Minute).Run()
|
|
tst.AssertNoErr(t, err)
|
|
|
|
s1, cs1, _, err := _generateEnumSpecs(tmpDir, "", "N/A", true)
|
|
tst.AssertNoErr(t, err)
|
|
|
|
s2, cs2, _, err := _generateEnumSpecs(tmpDir, "", "N/A", true)
|
|
tst.AssertNoErr(t, err)
|
|
|
|
tst.AssertEqual(t, cs1, cs2)
|
|
tst.AssertEqual(t, s1, s2)
|
|
|
|
fmt.Println()
|
|
fmt.Println()
|
|
fmt.Println()
|
|
fmt.Println("=====================================================================================================")
|
|
fmt.Println(s1)
|
|
fmt.Println("=====================================================================================================")
|
|
fmt.Println()
|
|
fmt.Println()
|
|
fmt.Println()
|
|
}
|
|
|
|
func TestGenerateEnumSpecsData(t *testing.T) {
|
|
|
|
tmpFile := filepath.Join(t.TempDir(), langext.MustHexUUID()+".tgz")
|
|
|
|
tmpDir := filepath.Join(t.TempDir(), langext.MustHexUUID())
|
|
|
|
err := os.WriteFile(tmpFile, EnumExampleModels2, 0o777)
|
|
tst.AssertNoErr(t, err)
|
|
|
|
t.Cleanup(func() { _ = os.Remove(tmpFile) })
|
|
|
|
err = os.Mkdir(tmpDir, 0o777)
|
|
tst.AssertNoErr(t, err)
|
|
|
|
t.Cleanup(func() { _ = os.RemoveAll(tmpFile) })
|
|
|
|
_, err = cmdext.Runner("tar").Arg("-xvzf").Arg(tmpFile).Arg("-C").Arg(tmpDir).FailOnExitCode().FailOnTimeout().Timeout(time.Minute).Run()
|
|
tst.AssertNoErr(t, err)
|
|
|
|
s1, _, _, err := _generateEnumSpecs(tmpDir, "", "", true)
|
|
tst.AssertNoErr(t, err)
|
|
|
|
fmt.Println()
|
|
fmt.Println()
|
|
fmt.Println()
|
|
fmt.Println("=====================================================================================================")
|
|
fmt.Println(s1)
|
|
fmt.Println("=====================================================================================================")
|
|
fmt.Println()
|
|
fmt.Println()
|
|
fmt.Println()
|
|
}
|