- Add 26 documentation files including test reports, deployment guides, and troubleshooting documentation - Include 3 CSV data files for trainer imports and user registration tracking - Add 43 JavaScript test files covering mobile optimization, Safari compatibility, and E2E testing - Include 18 PHP utility files for debugging, geocoding, and data analysis - Add 12 shell scripts for deployment verification, user management, and database operations - Update .gitignore with whitelist patterns for development files, documentation, and CSV data 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
113 lines
No EOL
5.4 KiB
JavaScript
113 lines
No EOL
5.4 KiB
JavaScript
const { chromium } = require('playwright');
|
|
|
|
async function testProfileFixes() {
|
|
console.log('🔍 TESTING PROFILE SYSTEM FIXES POST-DEPLOYMENT');
|
|
console.log('================================================================================');
|
|
|
|
const browser = await chromium.launch({ headless: false });
|
|
const context = await browser.newContext();
|
|
const page = await context.newPage();
|
|
|
|
try {
|
|
// Login as test trainer
|
|
console.log('📝 Logging in as test trainer...');
|
|
await page.goto('https://upskill-staging.measurequick.com/wp-login.php');
|
|
await page.fill('#user_login', 'test_trainer');
|
|
await page.fill('#user_pass', 'TestTrainer123!');
|
|
await page.click('#wp-submit');
|
|
await page.waitForURL('**/trainer/dashboard/**', { timeout: 15000 });
|
|
console.log('✅ Login successful');
|
|
|
|
// Test profile view page
|
|
console.log('🔍 Testing profile view page...');
|
|
await page.goto('https://upskill-staging.measurequick.com/trainer/profile/');
|
|
await page.waitForLoadState('networkidle');
|
|
|
|
const profileContent = await page.evaluate(() => {
|
|
return {
|
|
hasProfileView: document.querySelector('.hvac-trainer-profile-view') !== null,
|
|
hasPageHeader: document.querySelector('.hvac-page-header') !== null,
|
|
hasEditButton: document.querySelector('a[href*="edit"]') !== null,
|
|
hasProfileSections: document.querySelectorAll('.hvac-profile-section').length,
|
|
hasPlaceholderText: document.body.innerText.includes('Updated template will handle display'),
|
|
contentPreview: document.body.innerText.slice(200, 500).replace(/\\s+/g, ' ').trim()
|
|
};
|
|
});
|
|
|
|
console.log('📊 Profile view results:', profileContent);
|
|
|
|
if (profileContent.hasProfileView) {
|
|
console.log('✅ Profile view shortcode is now rendering content!');
|
|
} else if (profileContent.hasPlaceholderText) {
|
|
console.log('❌ Still showing placeholder text');
|
|
} else {
|
|
console.log('⚠️ Different content, need to investigate');
|
|
}
|
|
|
|
await page.screenshot({ path: 'profile-view-post-fix.png', fullPage: true });
|
|
|
|
// Test profile edit page
|
|
console.log('🔍 Testing profile edit page...');
|
|
await page.goto('https://upskill-staging.measurequick.com/trainer/profile/edit/');
|
|
await page.waitForLoadState('networkidle');
|
|
|
|
const editContent = await page.evaluate(() => {
|
|
return {
|
|
hasEditForm: document.querySelector('form') !== null,
|
|
hasFormFields: document.querySelectorAll('input, select, textarea').length,
|
|
hasSaveButton: document.querySelector('button[type="submit"], input[type="submit"]') !== null,
|
|
hasPlaceholderText: document.body.innerText.includes('Updated template will handle editing'),
|
|
formPreview: document.querySelector('form') ?
|
|
document.querySelector('form').innerText.slice(0, 300).replace(/\\s+/g, ' ').trim() : 'No form found'
|
|
};
|
|
});
|
|
|
|
console.log('📊 Profile edit results:', editContent);
|
|
|
|
if (editContent.hasEditForm && editContent.hasFormFields > 0) {
|
|
console.log('✅ Profile edit form is now working!');
|
|
} else if (editContent.hasPlaceholderText) {
|
|
console.log('❌ Still showing placeholder text');
|
|
} else {
|
|
console.log('⚠️ Different content, need to investigate');
|
|
}
|
|
|
|
await page.screenshot({ path: 'profile-edit-post-fix.png', fullPage: true });
|
|
|
|
// Test profile data display
|
|
if (profileContent.hasProfileView) {
|
|
console.log('🔍 Testing profile data display...');
|
|
await page.goto('https://upskill-staging.measurequick.com/trainer/profile/');
|
|
await page.waitForLoadState('networkidle');
|
|
|
|
const profileData = await page.evaluate(() => {
|
|
const nameElement = document.querySelector('.hvac-detail-value');
|
|
const emailElement = document.evaluate(
|
|
"//span[contains(@class, 'hvac-detail-value') and contains(text(), '@')]",
|
|
document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null
|
|
).singleNodeValue;
|
|
|
|
return {
|
|
hasName: nameElement !== null,
|
|
hasEmail: emailElement !== null,
|
|
nameText: nameElement ? nameElement.textContent : 'none',
|
|
emailText: emailElement ? emailElement.textContent : 'none',
|
|
visibleSections: [...document.querySelectorAll('.hvac-profile-section h2')].map(h => h.textContent)
|
|
};
|
|
});
|
|
|
|
console.log('👤 Profile data display:', profileData);
|
|
}
|
|
|
|
console.log('================================================================================');
|
|
console.log('🎯 PROFILE FIXES TEST COMPLETE');
|
|
|
|
} catch (error) {
|
|
console.error('❌ Error during profile fixes test:', error);
|
|
await page.screenshot({ path: 'profile-fixes-error.png', fullPage: true });
|
|
} finally {
|
|
await browser.close();
|
|
}
|
|
}
|
|
|
|
testProfileFixes(); |