60 lines
No EOL
2.5 KiB
TypeScript
60 lines
No EOL
2.5 KiB
TypeScript
import { test, expect } from '@playwright/test';
|
|
import { LoginPage } from './LoginPage';
|
|
import { DashboardPage } from './DashboardPage';
|
|
import { TEST_USERS } from '../data/test-users';
|
|
|
|
test.describe('Debug Create Event Simple', () => {
|
|
test('Find event title field', async ({ page }) => {
|
|
const loginPage = new LoginPage(page);
|
|
const dashboardPage = new DashboardPage(page);
|
|
const trainer = TEST_USERS.trainer;
|
|
|
|
// Login and navigate to create event
|
|
await loginPage.navigateToLogin();
|
|
await loginPage.login(trainer.username, trainer.password);
|
|
await dashboardPage.clickCreateEvent();
|
|
|
|
// Wait for form to load
|
|
await page.waitForTimeout(3000);
|
|
|
|
console.log(`Current URL: ${page.url()}`);
|
|
|
|
// Try multiple selectors for title field
|
|
const titleSelectors = [
|
|
'#title',
|
|
'#EventTitle',
|
|
'input[name="EventTitle"]',
|
|
'input[name="post_title"]',
|
|
'input[placeholder*="title"]',
|
|
'input[placeholder*="Title"]',
|
|
'input[placeholder*="name"]',
|
|
'input[placeholder*="Name"]',
|
|
'input:near(label:has-text("Title"))',
|
|
'#tribe-events-edit-meta input[type="text"]:first-of-type'
|
|
];
|
|
|
|
for (const selector of titleSelectors) {
|
|
try {
|
|
const element = page.locator(selector);
|
|
if (await element.isVisible()) {
|
|
const name = await element.getAttribute('name');
|
|
const id = await element.getAttribute('id');
|
|
const placeholder = await element.getAttribute('placeholder');
|
|
const value = await element.inputValue();
|
|
console.log(`Found title field with selector "${selector}": name="${name}", id="${id}", placeholder="${placeholder}", value="${value}"`);
|
|
|
|
// Try to fill it
|
|
await element.fill('Test Event Title');
|
|
console.log('Successfully filled the field');
|
|
break;
|
|
}
|
|
} catch (e) {
|
|
console.log(`Selector "${selector}" failed: ${e.message}`);
|
|
}
|
|
}
|
|
|
|
// Take screenshot
|
|
await page.screenshot({ path: 'create-event-simple-debug.png', fullPage: true });
|
|
console.log('\nScreenshot saved as create-event-simple-debug.png');
|
|
});
|
|
}); |