auto-git:

[change] tests/serialization/scene-document-json.test.ts
This commit is contained in:
2026-04-22 16:00:31 +02:00
parent c6c765ec69
commit 23a6d5a01a

View File

@@ -39,6 +39,7 @@ import {
SCENE_TRANSITION_ENTITIES_SCENE_DOCUMENT_VERSION,
SCENE_TRANSITION_SEQUENCE_EFFECTS_SCENE_DOCUMENT_VERSION,
SCENE_DOCUMENT_VERSION,
SHADER_SKY_SCENE_DOCUMENT_VERSION,
SPATIAL_AUDIO_SCENE_DOCUMENT_VERSION,
STATIC_SIMPLE_MODEL_COLLIDERS_SCENE_DOCUMENT_VERSION,
TRIGGER_ACTION_TARGET_FOUNDATION_SCENE_DOCUMENT_VERSION,
@@ -143,6 +144,36 @@ describe("scene document JSON", () => {
expect(migratedDocument.world.shaderSky.dayBottomColorHex).toBe("#aaccee");
});
it("migrates v71 scene documents by defaulting the shader sky horizon height", () => {
const document = createEmptySceneDocument({
name: "Legacy Shader Horizon Scene"
});
document.world.background = {
mode: "shader"
};
document.world.shaderSky.dayTopColorHex = "#335577";
document.world.shaderSky.dayBottomColorHex = "#aaccee";
const legacyDocument = JSON.parse(
serializeSceneDocument(document)
) as Record<string, unknown>;
legacyDocument.version = SHADER_SKY_SCENE_DOCUMENT_VERSION;
delete (
(legacyDocument.world as {
shaderSky: Record<string, unknown>;
}).shaderSky as Record<string, unknown>
).horizonHeight;
const migratedDocument = parseSceneDocumentJson(
JSON.stringify(legacyDocument)
);
expect(migratedDocument.version).toBe(SCENE_DOCUMENT_VERSION);
expect(migratedDocument.world.shaderSky.dayTopColorHex).toBe("#335577");
expect(migratedDocument.world.shaderSky.dayBottomColorHex).toBe("#aaccee");
expect(migratedDocument.world.shaderSky.horizonHeight).toBe(0);
});
it("migrates pre-paint terrain documents by defaulting terrain layer data", () => {
const legacyTerrainDocument = {
...createEmptySceneDocument({