Files
open-design/e2e/lib/playwright/resources.ts
shangxinyu1andGitHub f650a043d9 test(e2e): align entry coverage with redesigned flows (#2101)
* Migrate entry E2E coverage and split CI

* test(e2e): relax connectors auth error assertions

* ci: route scenario registry changes to extended e2e

* ci: decouple packaged smoke jobs from validate gate

* ci: restore pre-split workflow

* test(e2e): slim critical ui smoke coverage

* test(e2e): move broader entry flows out of critical

* test(e2e): restore entry chrome coverage to ci

* ci: parallelize workspace validation jobs

* test(web): stabilize media palette bridge assertion

* ci: cache e2e playwright browsers
2026-05-19 11:26:40 +08:00

61 lines
1.7 KiB
TypeScript

import { playwrightUiScenarios } from '../../resources/playwright.ts';
export type ScenarioKind = 'prototype' | 'deck' | 'hyperframes' | 'image' | 'audio' | 'template' | 'workspace';
export interface MockArtifactScenario {
identifier: string;
title: string;
html: string;
fileName: string;
heading: string;
}
export interface UiScenario {
id: string;
title: string;
kind: ScenarioKind;
flow?:
| 'standard'
| 'design-system-selection'
| 'example-use-prompt'
| 'conversation-persistence'
| 'file-mention'
| 'deep-link-preview'
| 'file-upload-send'
| 'design-files-upload'
| 'design-files-delete'
| 'design-files-tab-persistence'
| 'conversation-delete-recovery'
| 'question-form-selection-limit'
| 'question-form-submit-persistence'
| 'generation-does-not-create-extra-file'
| 'comment-attachment-flow'
| 'deck-pagination-next-prev-correctness'
| 'deck-pagination-per-file-isolated'
| 'uploaded-image-renders-in-preview'
| 'python-source-preview'
| 'hyperframes-project-routing'
| 'image-project-routing'
| 'video-project-routing'
| 'audio-project-routing'
| 'live-artifact-project-routing'
| 'plugin-create-import';
automated: boolean;
description: string;
create: {
projectName: string;
tab?: 'prototype' | 'live-artifact' | 'deck' | 'template' | 'media' | 'other';
mediaSurface?: 'image' | 'video' | 'audio';
videoModel?: string;
audioKind?: 'speech' | 'sfx';
};
prompt: string;
secondaryPrompt?: string;
mockArtifact?: MockArtifactScenario;
notes?: string[];
}
export function automatedUiScenarios(): UiScenario[] {
return playwrightUiScenarios.filter((scenario) => scenario.automated);
}