From 411a10722663e9eed35638446b70a2f8ccc06c42 Mon Sep 17 00:00:00 2001 From: soulgalore Date: Wed, 20 Mar 2024 13:21:02 +0100 Subject: [PATCH] more test --- lib/firefox/firefoxBidi.js | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/lib/firefox/firefoxBidi.js b/lib/firefox/firefoxBidi.js index f12954856..5800e8d61 100644 --- a/lib/firefox/firefoxBidi.js +++ b/lib/firefox/firefoxBidi.js @@ -30,20 +30,33 @@ export class FirefoxBidi { } async blockUrls(blockers) { + // bin/browsertime.js --block upload.wikimedia.org https://en.wikipedia.org/wiki/Barack_Obama -n 1 -b firefox + const patterns = []; const block = toArray(blockers); + for (let b of block) { + // Block a specific URL + if (b.startsWith('http')) { + patterns.push({ type: 'string', pattern: b }); + } else { + // Block by domain + patterns.push({ type: 'pattern', hostname: b }); + } + } + const bidi = new Bidi(this.driver, this.options.browser); - console.log(blockers); const command = { method: 'network.addIntercept', params: { phases: ['beforeRequestSent'], - // urlPatters: [{ type: 'pattern', hostname: blockers }] - urlPatterns: [{ type: 'string', pattern: blockers }] + urlPatterns: patterns } }; const result = await bidi.send(command); - console.log(result); + if (result.type != 'success') { + log.error(result); + } + await bidi.subscribe('network.beforeRequestSent'); await bidi.onMessage(async function (event) { @@ -58,16 +71,10 @@ export class FirefoxBidi { request: parsedEvent.params.request.request } }; - const a = await bidi.send(fail); - } else if (parsedEvent.method === 'network.beforeRequestSent') { - const continueReq = { - method: 'network.continueRequest', - params: { - request: parsedEvent.params.request.request - } - }; - const a = await bidi.send(continueReq); - // console.log(a); + const result = await bidi.send(fail); + if (result.type != 'success') { + log.error(result); + } } }); }