51 lines
2.5 KiB
JavaScript
51 lines
2.5 KiB
JavaScript
const { chromium } = require('playwright');
|
|
|
|
(async () => {
|
|
const browser = await chromium.launch({ headless: false, slowMo: 800 });
|
|
const context = await browser.newContext({
|
|
viewport: { width: 1920, height: 1080 }
|
|
});
|
|
const page = await context.newPage();
|
|
|
|
console.log('📄 Loading English page...\n');
|
|
await page.goto('http://localhost:1999/?lang=en');
|
|
await page.waitForLoadState('networkidle');
|
|
|
|
console.log('✅ Checking initial state:');
|
|
const enActive1 = await page.locator('button[aria-label="English"]').evaluate(el => el.classList.contains('active'));
|
|
const esActive1 = await page.locator('button[aria-label="Español"]').evaluate(el => el.classList.contains('active'));
|
|
console.log(` EN button active: ${enActive1} (expected: true)`);
|
|
console.log(` ES button active: ${esActive1} (expected: false)\n`);
|
|
|
|
console.log('🌍 Clicking Spanish button...');
|
|
await page.click('button[aria-label="Español"]');
|
|
await page.waitForTimeout(1000);
|
|
|
|
console.log('✅ Checking after Spanish click:');
|
|
const enActive2 = await page.locator('button[aria-label="English"]').evaluate(el => el.classList.contains('active'));
|
|
const esActive2 = await page.locator('button[aria-label="Español"]').evaluate(el => el.classList.contains('active'));
|
|
console.log(` EN button active: ${enActive2} (expected: false)`);
|
|
console.log(` ES button active: ${esActive2} (expected: true)\n`);
|
|
|
|
console.log('🌍 Clicking English button...');
|
|
await page.click('button[aria-label="English"]');
|
|
await page.waitForTimeout(1000);
|
|
|
|
console.log('✅ Checking after English click:');
|
|
const enActive3 = await page.locator('button[aria-label="English"]').evaluate(el => el.classList.contains('active'));
|
|
const esActive3 = await page.locator('button[aria-label="Español"]').evaluate(el => el.classList.contains('active'));
|
|
console.log(` EN button active: ${enActive3} (expected: true)`);
|
|
console.log(` ES button active: ${esActive3} (expected: false)\n`);
|
|
|
|
const allCorrect = enActive1 && !esActive1 && !enActive2 && esActive2 && enActive3 && !esActive3;
|
|
console.log(`\n${allCorrect ? '✅ ALL TESTS PASSED!' : '❌ SOME TESTS FAILED'}`);
|
|
console.log('\n📊 FIXES:');
|
|
console.log(' ✅ Language buttons now update automatically');
|
|
console.log(' ✅ Only CV content fades (not the white paper)');
|
|
console.log(' ✅ Navigation bar stays solid');
|
|
console.log(' ✅ Smooth, professional transition!');
|
|
|
|
await page.waitForTimeout(2000);
|
|
await browser.close();
|
|
})();
|