Fix id flip

This commit is contained in:
2026-05-14 18:50:10 +02:00
parent 9384d905d1
commit 0e1001657a
2 changed files with 36 additions and 11 deletions
+33
View File
@@ -11330,6 +11330,39 @@ func TestBuildNativeSupportsLoosePlainTableAtTopdataDataRoot(t *testing.T) {
}
}
func TestValidateProjectDoesNotRewritePlainDatasetLockfile(t *testing.T) {
root := testProjectRoot(t)
mkdirAll(t, filepath.Join(root, "topdata", "data", "ruleset"))
writeFile(t, filepath.Join(root, "topdata", "base_dialog.json"), "{}\n")
lockPath := filepath.Join(root, "topdata", "data", "ruleset", "lock.json")
writeFile(t, filepath.Join(root, "topdata", "data", "ruleset", "base.json"), `{
"output": "ruleset.2da",
"columns": ["Name", "Value"],
"rows": [
{"id": 0, "key": "ruleset:test_rule", "Name": "TEST_RULE", "Value": "1"}
]
}`+"\n")
writeFile(t, lockPath, "{}\n")
before, err := os.ReadFile(lockPath)
if err != nil {
t.Fatalf("read initial lockfile: %v", err)
}
report := ValidateProject(testProject(root))
if report.HasErrors() {
t.Fatalf("expected validation to succeed, got:\n%s", diagnosticsText(report.Diagnostics))
}
after, err := os.ReadFile(lockPath)
if err != nil {
t.Fatalf("read lockfile after validation: %v", err)
}
if string(after) != string(before) {
t.Fatalf("expected validation to leave plain dataset lockfile unchanged, got:\n%s", string(after))
}
}
func TestValidateProjectErrorsOnTopPackageAssetCollision(t *testing.T) {
root := testProjectRoot(t)
mkdirAll(t, filepath.Join(root, "topdata", "data", "repadjust"))