upskill-event-manager/wordpress-dev/tests/e2e/debug-event-fields.test.ts

77 lines
No EOL
3.2 KiB
TypeScript

import { STAGING_URL, PATHS, TIMEOUTS } from './config/staging-config';
import { test } from '@playwright/test';
test.describe('Debug Event Fields', () => {
test('Find event form selectors', async ({ page }) => {
// Navigate directly to community-login
const loginUrl = 'https://upskill-staging.measurequick.com/community-login/';
await page.goto(loginUrl);
await page.waitForLoadState('networkidle');
// Login
await page.fill('#user_login', 'test_trainer');
await page.fill('#user_pass', 'Test123!');
await page.click('#wp-submit');
await page.waitForURL((url) => !url.toString().includes('community-login'));
// Navigate to manage event
await page.goto('https://upskill-staging.measurequick.com/manage-event/');
await page.waitForLoadState('networkidle');
// Find all input fields
const inputFields = await page.$$eval('input[type="text"], input[type="date"], input[type="time"], input[type="submit"], input[type="button"]', elements => {
return elements.map(el => ({
type: el.type,
name: el.getAttribute('name'),
id: el.id,
placeholder: el.getAttribute('placeholder'),
value: el.getAttribute('value'),
className: el.className,
visible: (el as HTMLElement).offsetParent !== null
}));
});
console.log('Input fields:', JSON.stringify(inputFields, null, 2));
// Find textarea fields
const textareas = await page.$$eval('textarea', elements => {
return elements.map(el => ({
name: el.getAttribute('name'),
id: el.id,
placeholder: el.getAttribute('placeholder'),
className: el.className,
visible: (el as HTMLElement).offsetParent !== null
}));
});
console.log('Textareas:', JSON.stringify(textareas, null, 2));
// Find select fields
const selects = await page.$$eval('select', elements => {
return elements.map(el => ({
name: el.getAttribute('name'),
id: el.id,
className: el.className,
visible: (el as HTMLElement).offsetParent !== null
}));
});
console.log('Select fields:', JSON.stringify(selects, null, 2));
// Find submit buttons
const buttons = await page.$$eval('button, input[type="submit"], input[type="button"], .button, .btn', elements => {
return elements.map(el => ({
tagName: el.tagName,
type: el.getAttribute('type'),
text: (el as HTMLElement).innerText || '',
value: el.getAttribute('value') || '',
className: el.className,
visible: (el as HTMLElement).offsetParent !== null
}));
});
console.log('Buttons:', JSON.stringify(buttons, null, 2));
await page.screenshot({ path: 'test-results/screenshots/manage-event-fields.png', fullPage: true });
});
});