Added schema validation and schema db

This commit is contained in:
Martino Ferrari
2026-01-21 18:13:22 +01:00
parent f3c13fca55
commit 5a2b51ec34
10 changed files with 803 additions and 50 deletions

View File

@@ -169,7 +169,14 @@ func TestBuildCommand(t *testing.T) {
// Test Merge
files := []string{"integration/build_merge_1.marte", "integration/build_merge_2.marte"}
b := builder.NewBuilder(files)
err := b.Build("build_test")
outputFile, err := os.Create("build_test/TEST.marte")
if err != nil {
t.Fatalf("Failed to create output file: %v", err)
}
defer outputFile.Close()
err = b.Build(outputFile)
if err != nil {
t.Fatalf("Build failed: %v", err)
}
@@ -189,12 +196,19 @@ func TestBuildCommand(t *testing.T) {
// Test Order (Class First)
filesOrder := []string{"integration/build_order_1.marte", "integration/build_order_2.marte"}
bOrder := builder.NewBuilder(filesOrder)
err = bOrder.Build("build_test")
outputFileOrder, err := os.Create("build_test/ORDER.marte")
if err != nil {
t.Fatalf("Failed to create output file: %v", err)
}
defer outputFileOrder.Close()
err = bOrder.Build(outputFileOrder)
if err != nil {
t.Fatalf("Build order test failed: %v", err)
}
contentOrder, _ := ioutil.ReadFile("build_test/TEST.marte")
contentOrder, _ := ioutil.ReadFile("build_test/ORDER.marte")
outputOrder := string(contentOrder)
// Check for Class before Field