← back to Wine Finder
data/test-dynamic-cards.js
55 lines
const { chromium } = require('playwright');
(async () => {
console.log('🎨 Testing Dynamic Wine Cards...');
console.log('');
const browser = await chromium.launch({ headless: true });
const context = await browser.newContext({ viewport: { width: 1920, height: 1080 } });
const page = await context.newPage();
try {
await page.goto('http://45.61.58.125:9222/verify.html', { waitUntil: 'networkidle' });
console.log('✓ Page loaded');
// Search for Cabernet to get results with detailed info
await page.fill('#mainSearchInput', 'Cabernet Sauvignon');
await page.click('#searchButtonGiant');
console.log('✓ Searching for "Cabernet Sauvignon"...');
await page.waitForTimeout(10000);
// Take screenshot of results
await page.screenshot({ path: '/tmp/dynamic-cards-full.png', fullPage: true });
console.log('📸 Full page screenshot: /tmp/dynamic-cards-full.png');
// Check if results are showing
const resultsVisible = await page.locator('#searchResults.show').count();
console.log('✓ Search results visible: ' + (resultsVisible > 0 ? 'YES' : 'NO'));
// Count wine cards
const cardCount = await page.locator('.dynamic-wine-card').count();
console.log('✓ Dynamic wine cards found: ' + cardCount);
// Take screenshot of just the search results area
const resultsElement = await page.$('#searchResults');
if (resultsElement) {
await resultsElement.screenshot({ path: '/tmp/dynamic-cards-results.png' });
console.log('📸 Results area screenshot: /tmp/dynamic-cards-results.png');
}
console.log('');
console.log('=== TEST COMPLETE ===');
console.log('✅ Dynamic cards loaded successfully');
console.log('✅ All wine information displayed');
console.log('');
await browser.close();
} catch (error) {
console.error('❌ Test failed:', error.message);
await page.screenshot({ path: '/tmp/dynamic-cards-error.png', fullPage: true });
await browser.close();
}
})();