23 lines
1.3 KiB
JavaScript
23 lines
1.3 KiB
JavaScript
import { chromium } from 'playwright';
|
|
const browser=await chromium.launch({headless:true});
|
|
const page=await browser.newPage();
|
|
const events=[];
|
|
page.on('console',m=>events.push({type:'console',level:m.type(),text:m.text()}));
|
|
page.on('pageerror',e=>events.push({type:'pageerror',text:String(e)}));
|
|
page.on('requestfailed',r=>events.push({type:'requestfailed',url:r.url(),failure:r.failure()}));
|
|
page.on('response',r=>{if(/performance|data-layer-v1771|server-automation/.test(r.url()))events.push({type:'response',url:r.url(),status:r.status()})});
|
|
await page.goto('http://127.0.0.1:4173/index.html',{waitUntil:'domcontentloaded'});
|
|
await page.waitForTimeout(1500);
|
|
const state=await page.evaluate(async()=>({
|
|
readyState:document.readyState,
|
|
performanceLoaded:Boolean(window.SunPerformance),
|
|
data1771:Boolean(window.CateriumDataV1771),
|
|
data1770:Boolean(window.CateriumDataV1770),
|
|
dataCurrent:Boolean(window.CateriumData),
|
|
perfScript:document.querySelector('script[src*="core/performance.js"]')?.src||null,
|
|
dataScript:document.getElementById('cateriumDataV1771Script')?.src||null,
|
|
dataFetch:await fetch('core/data-layer-v1771.js').then(async r=>({status:r.status,ok:r.ok,head:(await r.text()).slice(0,80)})).catch(e=>({error:String(e)}))
|
|
}));
|
|
console.log(JSON.stringify({state,events},null,2));
|
|
await browser.close();
|