Files
zeekay d6423729c2 Complete rebrand from ComfyUI to Hanzo Studio
- Replace all ComfyUI references with Hanzo Studio
- Update comfy.org URLs to hanzo.ai/studio.hanzo.ai
- Change comfyanonymous to hanzoai
- Update Comfy-Org to hanzo-studio
- Rename files and directories
- Update package names and configurations
- Update documentation and README files

This is a comprehensive rebranding to align with Hanzo AI's
product suite and company identity.
2025-11-23 20:50:10 -08:00

53 lines
1.7 KiB
TypeScript

import type { Page } from '@playwright/test';
/* CI is slow. */
const getStartedTimeout = process.env.CI ? { timeout: 60 * 1000 } : undefined;
export class TestInstallWizard {
readonly getStartedButton;
readonly nextButton;
readonly installButton;
readonly cpuToggle;
readonly installLocationInput;
readonly selectGpuTitle;
readonly installLocationTitle;
readonly migrateTitle;
readonly desktopSettingsTitle;
constructor(readonly window: Page) {
this.nextButton = this.getButton('Next');
this.getStartedButton = this.getButton('Get Started');
this.installButton = this.getButton('Install');
// Updated selectors for frontend v1.27.x
this.cpuToggle = this.window.getByRole('button', { name: 'CPU' });
// The install path input is the visible textbox on Step 2
// Prefer placeholder to avoid ambiguity with hidden inputs
this.installLocationInput = this.window.getByPlaceholder(/Hanzo Studio/).first();
this.selectGpuTitle = this.window.getByText('Choose your hardware setup');
this.installLocationTitle = this.window.getByText('Choose where to install Hanzo Studio');
// Migration is now an accordion section on the install location step
this.migrateTitle = this.window.getByText('Migrate from existing installation');
this.desktopSettingsTitle = this.window.getByText('Desktop App Settings');
}
async clickNext() {
await this.nextButton.click();
}
async clickGetStarted() {
await this.getStartedButton.click(getStartedTimeout);
}
getButton(name: string) {
return this.window.getByRole('button', { name });
}
getInput(name: string, exact?: boolean) {
return this.window.getByRole('textbox', { name, exact });
}
}