From 4af5caed7a16cc0aca6b8f2b65ab0d697df139eb Mon Sep 17 00:00:00 2001 From: Timmy Willison Date: Tue, 9 Apr 2024 13:31:27 -0400 Subject: Tests: align test runner with other repos Close gh-2234 --- tests/runner/selenium/queue.js | 97 ------------------------------------------ 1 file changed, 97 deletions(-) delete mode 100644 tests/runner/selenium/queue.js (limited to 'tests/runner/selenium/queue.js') diff --git a/tests/runner/selenium/queue.js b/tests/runner/selenium/queue.js deleted file mode 100644 index de24c5bb0..000000000 --- a/tests/runner/selenium/queue.js +++ /dev/null @@ -1,97 +0,0 @@ -import chalk from "chalk"; -import { getBrowserString } from "../lib/getBrowserString.js"; -import { - checkLastTouches, - createBrowserWorker, - setBrowserWorkerUrl -} from "./browsers.js"; - -const TEST_POLL_TIMEOUT = 1000; - -const queue = []; - -export function getNextBrowserTest( reportId ) { - const index = queue.findIndex( ( test ) => test.id === reportId ); - if ( index === -1 ) { - return; - } - - // Remove the completed test from the queue - const previousTest = queue[ index ]; - queue.splice( index, 1 ); - - // Find the next test for the same browser - for ( const test of queue.slice( index ) ) { - if ( test.fullBrowser === previousTest.fullBrowser ) { - - // Set the URL for our tracking - setBrowserWorkerUrl( test.browser, test.url ); - test.running = true; - - // Return the URL for the next test. - // listeners.js will use this to set the browser URL. - return { url: test.url }; - } - } -} - -export function retryTest( reportId, maxRetries ) { - if ( !maxRetries ) { - return; - } - const test = queue.find( ( test ) => test.id === reportId ); - if ( test ) { - test.retries++; - if ( test.retries <= maxRetries ) { - console.log( - `\nRetrying test ${ reportId } for ${ chalk.yellow( test.options.suite ) }...${ - test.retries - }` - ); - return test; - } - } -} - -export function addRun( url, browser, options ) { - queue.push( { - browser, - fullBrowser: getBrowserString( browser ), - id: options.reportId, - retries: 0, - url, - options, - running: false - } ); -} - -export async function runAll() { - return new Promise( async( resolve, reject ) => { - while ( queue.length ) { - try { - await checkLastTouches(); - } catch ( error ) { - reject( error ); - } - - // Run one test URL per browser at a time - const browsersTaken = []; - for ( const test of queue ) { - if ( browsersTaken.indexOf( test.fullBrowser ) > -1 ) { - continue; - } - browsersTaken.push( test.fullBrowser ); - if ( !test.running ) { - test.running = true; - try { - await createBrowserWorker( test.url, test.browser, test.options ); - } catch ( error ) { - reject( error ); - } - } - } - await new Promise( ( resolve ) => setTimeout( resolve, TEST_POLL_TIMEOUT ) ); - } - resolve(); - } ); -} -- cgit v1.2.3