Cleaned up Log Out script

This commit is contained in:
jhuerta
2026-10-16 11:32:25 -07:00
parent 2e0d791286
commit 9f1cbb7b2e

View File

@@ -2508,45 +2508,51 @@ const steps = [
}, },
*/ */
//LOG OUT //NEXT ACTION
//NEXT ACTION - Log out
{ description: 'Click Username dropdown', action: async () => await driver.findElement(By.css('#navbarDropdown > span')).click() },
{ description: 'Wait for action to complete', action: async () => await driver.sleep(2000) },
//Log Out icon
{ {
description: 'Verify Log Out icon is present', description: 'Log Out',
action: async () =>
{ const expectedIcon = await driver.wait(until.elementLocated(By.css('.fa-sign-out')), 5000).catch(() => false);
if (!expectedIcon) {
throw new Error('Log Out icon not found');
}
console.log('Passed: Log Out icon present');
}
},
{ description: 'Click Log Out link', action: async () => await driver.findElement(By.linkText('Log Out')).click() },
//Wait for login screen to load
{
description: 'Wait for log out process to complete',
action: async () => { action: async () => {
return await driver.wait(until.elementLocated(By.css('.login')), 10000).catch(() => false); const multipleChecks = 'Log Out';
}
},
//Log Out button //Track all errors
{ const errors = [];
description: 'Verify Log Out button is present',
action: async () => await driver.findElement(By.css('#navbarDropdown > span')).click();
{ const expectedIcon = await driver.wait(until.elementLocated(By.css('.login')), 5000).catch(() => false); await driver.sleep(2000);
if (!expectedIcon) { await driver.findElement(By.linkText('Log Out')).click();
throw new Error('Log Out button not found'); console.log('----->| NEXT ACTION: Clicked User Profile and Logged Out');
//Wait until the element exists in the DOM
const exactLogo = await driver.wait(
until.elementLocated(By.css('.logo')),
30000
);
//Wait until it becomes visible
await driver.wait(
until.elementIsVisible(exactLogo),
30000
);
//Wait for page to load completely
await driver.wait(async () => {
const readyState = await driver.executeScript('return document.readyState');
return readyState === 'complete';
}, 30000, 'ExACT Langing page did not fully load within 30 seconds');
console.log('Passed: ExACT Landing Page loaded successfully');
//Throw summary if any validation failed
if (errors.length > 0) {
//Add summary line only when multiple checks failed
if (errors.length > 1) {
errors.unshift(`${multipleChecks} - Multiple validation checks did not pass`);
}
//Throw collected messages — catch() will prefix with "FAILED:"
throw new Error(errors.join('\n'));
} }
console.log('Passed: Log Out button present; Script completed');
} }
}, },
]; ];
const logStep = (worksheet, stepDescription, status, stepIndex, timestamp, screenshotPath) => { const logStep = (worksheet, stepDescription, status, stepIndex, timestamp, screenshotPath) => {
@@ -2641,7 +2647,6 @@ try {
} }
//Check if log out was successful //Check if log out was successful
//const loginButton = await driver.wait(until.elementLocated(By.css('.login')), 5000).catch(() => false);
if (allStepsPassed) { if (allStepsPassed) {
console.log('------------->| THE END |<-------------'); console.log('------------->| THE END |<-------------');