Fix topdata lock file generation
This commit is contained in:
@@ -6362,6 +6362,55 @@ func TestBuildGenerated2DAAssetsAppendsCachedModelsFromHeadVisualeffects(t *test
|
||||
}
|
||||
}
|
||||
|
||||
func TestBuildGenerated2DAAssetsWritesLockfilesForSelectedDatasets(t *testing.T) {
|
||||
root := testProjectRoot(t)
|
||||
mkdirAll(t, filepath.Join(root, "assets"))
|
||||
mkdirAll(t, filepath.Join(root, "topdata", "data", "cachedmodels", "modules"))
|
||||
writeFile(t, filepath.Join(root, "topdata", "data", "cachedmodels", "base.json"), `{
|
||||
"columns": ["Model"],
|
||||
"rows": [
|
||||
{"id": 0, "key": "cachedmodels:base_model", "Model": "base_model"}
|
||||
]
|
||||
}`+"\n")
|
||||
writeFile(t, filepath.Join(root, "topdata", "data", "cachedmodels", "modules", "add_chatbubble.json"), `{
|
||||
"entries": {
|
||||
"cachedmodels:vdr_chatbubble": {
|
||||
"Model": "vdr_chatbubble"
|
||||
}
|
||||
}
|
||||
}`+"\n")
|
||||
|
||||
p := testProject(root)
|
||||
p.Config.Paths.Assets = "assets"
|
||||
p.Config.Generated.TopData2DA = []project.GeneratedTopData2DAConfig{
|
||||
{
|
||||
ID: "cachedmodels",
|
||||
Source: "topdata",
|
||||
Output: ".cache/generated-assets/cachedmodels-2da",
|
||||
IncludeDatasets: []string{"cachedmodels"},
|
||||
PackageRoot: "vfxs",
|
||||
},
|
||||
}
|
||||
|
||||
if _, err := BuildGenerated2DAAssets(p, nil); err != nil {
|
||||
t.Fatalf("BuildGenerated2DAAssets failed: %v", err)
|
||||
}
|
||||
|
||||
lockBytes, err := os.ReadFile(filepath.Join(root, "topdata", "data", "cachedmodels", "lock.json"))
|
||||
if err != nil {
|
||||
t.Fatalf("read generated cachedmodels lockfile: %v", err)
|
||||
}
|
||||
lockText := string(lockBytes)
|
||||
for _, want := range []string{
|
||||
`"cachedmodels:base_model": 0`,
|
||||
`"cachedmodels:vdr_chatbubble": 1`,
|
||||
} {
|
||||
if !strings.Contains(lockText, want) {
|
||||
t.Fatalf("expected generated asset lockfile to contain %q, got:\n%s", want, lockText)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestNormalizeProjectImportsLegacyLoadscreens(t *testing.T) {
|
||||
root := testProjectRoot(t)
|
||||
mkdirAll(t, filepath.Join(root, "topdata", "data"))
|
||||
|
||||
Reference in New Issue
Block a user