mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-01-30 06:12:03 +00:00
- Refactored test utilities by consolidating and organizing helper functions into dedicated modules for better maintainability and clarity. - Introduced new utility functions for interactions, waiting, and element retrieval, improving the readability of test cases. - Updated context view tests to utilize the new utility functions, enhancing test reliability and reducing code duplication. - Removed deprecated utility functions and ensured all tests are aligned with the new structure.
76 lines
2.0 KiB
TypeScript
76 lines
2.0 KiB
TypeScript
import { Page, Locator } from "@playwright/test";
|
|
import { getByTestId } from "../core/elements";
|
|
import { waitForElement } from "../core/waiting";
|
|
import { setupFirstRun } from "../project/setup";
|
|
|
|
/**
|
|
* Wait for setup view to be visible
|
|
*/
|
|
export async function waitForSetupView(page: Page): Promise<Locator> {
|
|
return waitForElement(page, "setup-view", { timeout: 10000 });
|
|
}
|
|
|
|
/**
|
|
* Click "Get Started" button on setup welcome step
|
|
*/
|
|
export async function clickSetupGetStarted(page: Page): Promise<void> {
|
|
const button = await getByTestId(page, "setup-start-button");
|
|
await button.click();
|
|
}
|
|
|
|
/**
|
|
* Click continue on Claude setup step
|
|
*/
|
|
export async function clickClaudeContinue(page: Page): Promise<void> {
|
|
const button = await getByTestId(page, "claude-next-button");
|
|
await button.click();
|
|
}
|
|
|
|
/**
|
|
* Click finish on setup complete step
|
|
*/
|
|
export async function clickSetupFinish(page: Page): Promise<void> {
|
|
const button = await getByTestId(page, "setup-finish-button");
|
|
await button.click();
|
|
}
|
|
|
|
/**
|
|
* Enter Anthropic API key in setup
|
|
*/
|
|
export async function enterAnthropicApiKey(
|
|
page: Page,
|
|
apiKey: string
|
|
): Promise<void> {
|
|
// Click "Use Anthropic API Key Instead" button
|
|
const useApiKeyButton = await getByTestId(page, "use-api-key-button");
|
|
await useApiKeyButton.click();
|
|
|
|
// Enter the API key
|
|
const input = await getByTestId(page, "anthropic-api-key-input");
|
|
await input.fill(apiKey);
|
|
|
|
// Click save button
|
|
const saveButton = await getByTestId(page, "save-anthropic-key-button");
|
|
await saveButton.click();
|
|
}
|
|
|
|
/**
|
|
* Enter OpenAI API key in setup
|
|
*/
|
|
export async function enterOpenAIApiKey(
|
|
page: Page,
|
|
apiKey: string
|
|
): Promise<void> {
|
|
// Click "Enter OpenAI API Key" button
|
|
const useApiKeyButton = await getByTestId(page, "use-openai-key-button");
|
|
await useApiKeyButton.click();
|
|
|
|
// Enter the API key
|
|
const input = await getByTestId(page, "openai-api-key-input");
|
|
await input.fill(apiKey);
|
|
|
|
// Click save button
|
|
const saveButton = await getByTestId(page, "save-openai-key-button");
|
|
await saveButton.click();
|
|
}
|