const { chromium } = require('@playwright/test'); (async () => { const browser = await chromium.launch(); const sims = [ ['fluss?level=1', 'fluss', 'Flussmanagement'], ['klima-2d', 'klima', 'Klimasimulation 2D'], ['klima-3d', 'klima-3d', 'Klimasimulation 3D'], ['heli-game', 'heli', 'Helikopter-Navigation'], ['weltkueche', 'weltkueche', 'Welt-Küche'], ['energiemanager', 'energiemanager', 'Energiemanager'], ]; let ok = 0, fail = 0; for (const [path, expSim, expTitle] of sims) { const page = await browser.newPage(); await page.goto('http://localhost/geograsim/App/' + path); await page.waitForTimeout(2500); const info = await page.evaluate(() => ({ hasReg: typeof window.GGS_TUTORIAL === 'object' && typeof window.GGS_TUTORIAL.replay === 'function', simId: window.GGS_TUTORIAL && window.GGS_TUTORIAL.simId, title: window.GGS_TUTORIAL && window.GGS_TUTORIAL.title, })); const pass = info.hasReg && info.simId === expSim && info.title === expTitle; console.log((pass?'✓':'✗'), path.padEnd(18), JSON.stringify(info)); if (pass) ok++; else fail++; await page.close(); } console.log('\n' + ok + '/' + (ok+fail) + ' GGS_TUTORIAL-Registrierungen ok'); await browser.close(); process.exit(fail ? 1 : 0); })();