Skip to content
This repository was archived by the owner on Jan 12, 2024. It is now read-only.

Commit be687b9

Browse files
committed
chore: cleanup browser-service-worker test
1 parent bcbc1d8 commit be687b9

File tree

1 file changed

+7
-67
lines changed
  • examples/browser-service-worker/tests

1 file changed

+7
-67
lines changed

examples/browser-service-worker/tests/test.js

Lines changed: 7 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,13 @@ import { playwright } from 'test-util-ipfs-example';
44

55
// Setup
66
const play = test.extend({
7-
...playwright.servers([], true),
7+
...playwright.servers(),
88
});
99

10-
/**
11-
* attempt to prevent net::ERR_ABORTED error
12-
*/
13-
play.setTimeout(120 * 1000)
14-
1510
play.describe('browser service worker:', () => {
1611
// DOM
1712
const linkDOM = "a"
1813
const textDOM = "body"
19-
const debugDOM = "#debug"
2014

2115
play.beforeEach(async ({servers, page}) => {
2216
await page.goto(`http://localhost:${servers[0].port}/`);
@@ -27,12 +21,15 @@ play.describe('browser service worker:', () => {
2721
page.on("pageerror", (err) => {
2822
console.trace(`pageerror: ${err.message}`)
2923
})
30-
// await page.waitForSelector(textDOM)
31-
// await page.waitForSelector(linkDOM)
3224

3325
expect(await page.textContent(textDOM)).toContain("Load content by adding IPFS path to the URL")
3426
expect(await page.textContent(linkDOM)).toContain("/ipfs/bafy")
3527

28+
/**
29+
* Request /view path directly, as this is still handled by the service worker but doesn't break tests in github CI.
30+
* @see https://github.com/ipfs-examples/js-ipfs-examples/blob/master/examples/browser-service-worker/src/service.js#L48-L52
31+
* @see https://github.com/ipfs-examples/js-ipfs-examples/pull/527
32+
*/
3633
const ipfsRequestUrl = `http://localhost:${servers[0].port}/view/ipfs/Qmf412jQZiuVUtdgnB36FXFX7xg5V6KEbSJ4dpQuhkLyfD`
3734

3835
/**
@@ -52,76 +49,19 @@ play.describe('browser service worker:', () => {
5249
})
5350
}));
5451
});
55-
// await page.waitForSelector(`${debugDOM}:has-text("SW is ready")`, {
56-
// state: 'attached'
57-
// })
5852

59-
context.on('request', (request) => {
60-
console.log(`request.url(): ${request.url()}`)
61-
})
62-
context.on('requestfailed', (request) => {
63-
console.log(`context.requestfailed: ${request.url()}`)
64-
console.log(`context.requestfailed request?.failure()?.errorText: `, request?.failure()?.errorText);
65-
})
66-
page.on('requestfailed', (request) => {
67-
console.log(`page.requestfailed: ${request.url()}`)
68-
console.log(`page.requestfailed request?.failure()?.errorText: `, request?.failure()?.errorText);
69-
})
70-
const serviceWorkerResponsePromise = new Promise((resolve, reject) => {
53+
const serviceWorkerResponsePromise = new Promise((resolve) => {
7154
context.on('response', async (response) => {
72-
console.log(`context.response response.url(): ${response.url()}`)
7355
if (response.url() === ipfsRequestUrl && response.fromServiceWorker()) {
7456
resolve(response);
7557
}
7658
})
7759
})
7860

79-
// const currentURL = await page.url();
8061
await page.goto(ipfsRequestUrl, {waitUntil: 'commit'});
8162
const serviceWorkerResponse = await serviceWorkerResponsePromise
82-
page.on('request', async (request) => {
83-
try {
84-
console.log(`page.request request.url(): ${request.url()}`)
85-
console.log(`page.request (await request.response())?.status(): ${(await request.response())?.status()}`)
86-
console.log(`page.request await (await request.response())?.text(): ${await (await request.response())?.text()}`)
87-
console.log(`request.serviceWorker(): `, request.serviceWorker());
88-
} catch {}
89-
});
9063

9164
expect(await serviceWorkerResponse.status()).toBe(200)
9265
expect(await serviceWorkerResponse.text()).toContain("hello world")
93-
// await page.waitForSelector('#viewer', {state: 'visible'})
94-
95-
// const frameText2 = page.frameLocator('#viewer').locator(textDOM)
96-
// // await frameText2.waitFor({state: 'visible'})
97-
98-
// // loop over all of the frames and log their content
99-
// const frames = await page.frames();
100-
// for (const frame of frames) {
101-
// console.log('page.frames textContent: ', await frame.textContent(textDOM));
102-
// console.log('page.frames innerText: ', await frame.innerText(textDOM));
103-
// }
104-
105-
// expect(await frameText2.textContent()).toContain("hello world")
106-
107-
// const elementFrame = await page.waitForSelector("iframe")
108-
// /**
109-
// * @type {import('playwright').Frame}
110-
// */
111-
// // @ts-ignore
112-
// const frame = await elementFrame.contentFrame()
113-
// if (frame == null) {
114-
// throw new Error('frame is null')
115-
// }
116-
// const frameText = await frame.textContent(textDOM)
117-
118-
// expect(frameText).toContain("hello world")
11966
});
120-
121-
play.afterAll(async ({servers}) => {
122-
// now stop all servers
123-
for (const server of servers) {
124-
await server.stop()
125-
}
126-
})
12767
});

0 commit comments

Comments
 (0)