补齐场景产物可见类型映射

补充场景产物在图片信息与导出元数据中的类型映射
增加场景元数据弹窗与导出清单回归测试
This commit is contained in:
2026-08-05 17:58:20 +08:00
parent 01b31e67ec
commit 68fab3b6ce
3 changed files with 26 additions and 0 deletions
@@ -172,6 +172,15 @@ describe('ImageCanvasExportModel', () => {
});
});
it('preserves game scene semantics in exported layer metadata', () => {
const metadata = buildLayerExportMetadata(
buildLayer({ assetKind: 'scene' }),
'images/001-scene.png',
);
expect(metadata.visible.type).toBe('游戏场景');
});
it('filters built-in prompts from exported visible generation inputs', () => {
const metadata = buildLayerExportMetadata(
buildLayer({
@@ -734,6 +734,9 @@ export function formatLayerImageType(layer: CanvasLayer) {
if (layer.assetKind === 'ui-design') {
return 'UI设计图';
}
if (layer.assetKind === 'scene') {
return '游戏场景';
}
if (layer.assetKind === 'video' || layer.mediaType === 'video') {
return '生成视频';
}
@@ -89,6 +89,20 @@ describe('ImageCanvasMetadataModalView', () => {
expect(within(dialog).getByText('123')).toBeTruthy();
});
it('renders game scene semantics for generated scene metadata', () => {
render(
<ImageCanvasMetadataModalView
layer={createLayer({ assetKind: 'scene' })}
onClose={vi.fn()}
/>,
);
const dialog = screen.getByRole('dialog', { name: '图片信息' });
expect(within(dialog).getByText('游戏场景')).toBeTruthy();
expect(within(dialog).queryByText('生成图片')).toBeNull();
});
it('keeps the generation model while hiding internal processing models', () => {
const generationInputsWithInternalMattingMetadata = {
fields: [