测试:修复画布缓存断言竞态
Project CI / Backend tests (pull_request) Failing after 13s
Project CI / Repository checks (pull_request) Failing after 9s
Project CI / Frontend tests (pull_request) Successful in 2m50s
Project CI / Native shell tests (pull_request) Successful in 14m54s

等待会话缓存完成revision更新后再校验内容
This commit is contained in:
2026-08-06 05:16:38 +00:00
parent 5b4599f147
commit ee474b8ec8
@@ -2249,26 +2249,29 @@ describe('useImageCanvasProjectPersistence', () => {
);
});
const cachedRaw = globalThis.sessionStorage.getItem(
EDITOR_PROJECT_RECENT_SESSION_CACHE_KEY,
);
expect(cachedRaw).toBeTruthy();
expect(cachedRaw).not.toContain('data:image');
const cached = JSON.parse(cachedRaw ?? '{}') as {
ownerUserId?: string;
project?: EditorProjectSnapshot;
revision?: number;
};
expect(cached.ownerUserId).toBe('user-test');
expect(cached.revision).toBe(1);
expect(cached.project?.resources).toEqual([
expect.objectContaining({
resourceId: 'resource-added-asset-a',
imageSrc: '/generated-character-drafts/editor/assets/asset-a.png',
objectKey: 'generated-character-drafts/editor/assets/asset-a.png',
assetObjectId: 'asset-object-a',
}),
]);
await waitFor(() => {
const cachedRaw = globalThis.sessionStorage.getItem(
EDITOR_PROJECT_RECENT_SESSION_CACHE_KEY,
);
expect(cachedRaw).toBeTruthy();
expect(cachedRaw).not.toContain('data:image');
const cached = JSON.parse(cachedRaw ?? '{}') as {
ownerUserId?: string;
project?: EditorProjectSnapshot;
revision?: number;
};
expect(cached.ownerUserId).toBe('user-test');
expect(cached.revision).toBe(1);
expect(cached.project?.resources).toEqual([
expect.objectContaining({
resourceId: 'resource-added-asset-a',
imageSrc: '/generated-character-drafts/editor/assets/asset-a.png',
objectKey:
'generated-character-drafts/editor/assets/asset-a.png',
assetObjectId: 'asset-object-a',
}),
]);
});
});
it('restores the persisted canvas background color without autosaving on load', async () => {