Skip to content

Commit a155382

Browse files
stable tests
1 parent c0326a4 commit a155382

File tree

4 files changed

+30
-5
lines changed

4 files changed

+30
-5
lines changed

src/McpContext.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -465,4 +465,21 @@ export class McpContext implements Context {
465465

466466
return locator.wait();
467467
}
468+
469+
/**
470+
* We need to ignore favicon request as they make our test flaky
471+
*/
472+
async setUpNetworkCollectorForTesting() {
473+
this.#networkCollector = new NetworkCollector(this.browser, collect => {
474+
return {
475+
request: req => {
476+
if (req.url().includes('favicon.ico')) {
477+
return;
478+
}
479+
collect(req);
480+
},
481+
} as ListenerMap;
482+
});
483+
await this.#networkCollector.init();
484+
}
468485
}

src/PageCollector.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,14 +173,19 @@ export class PageCollector<T> {
173173
}
174174

175175
export class NetworkCollector extends PageCollector<HTTPRequest> {
176-
constructor(browser: Browser) {
177-
super(browser, collect => {
176+
constructor(
177+
browser: Browser,
178+
listeners: (
179+
collector: (item: HTTPRequest) => void,
180+
) => ListenerMap<PageEvents> = collect => {
178181
return {
179182
request: req => {
180183
collect(req);
181184
},
182185
} as ListenerMap;
183-
});
186+
},
187+
) {
188+
super(browser, listeners);
184189
}
185190
override splitAfterNavigation(page: Page) {
186191
const navigations = this.storage.get(page) ?? [];

tests/tools/network.test.js.snapshot

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ exports[`network > network_list_requests > list requests form current navigation
2121
# list_request response
2222
## Network requests
2323
Showing 1-1 of 1 (Page 1 of 1).
24-
reqid=4 GET http://localhost:<port>/three [success - 200]
24+
reqid=3 GET http://localhost:<port>/three [success - 200]
2525
`;
2626

2727
exports[`network > network_list_requests > list requests from previous navigations 1`] = `

tests/tools/network.test.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ describe('network', () => {
3030
server.addHtmlRoute('/three', html`<main>Third</main>`);
3131

3232
await withBrowser(async (response, context) => {
33+
await context.setUpNetworkCollectorForTesting();
3334
const page = context.getSelectedPage();
3435
await page.goto(server.getRoute('/one'));
3536
await page.goto(server.getRoute('/two'));
@@ -52,6 +53,7 @@ describe('network', () => {
5253
server.addHtmlRoute('/three', html`<main>Third</main>`);
5354

5455
await withBrowser(async (response, context) => {
56+
await context.setUpNetworkCollectorForTesting();
5557
const page = context.getSelectedPage();
5658
await page.goto(server.getRoute('/one'));
5759
await page.goto(server.getRoute('/two'));
@@ -96,12 +98,13 @@ describe('network', () => {
9698
assert(!response.includeNetworkRequests);
9799
});
98100
});
99-
it.only('should get request from previous navigations', async t => {
101+
it('should get request from previous navigations', async t => {
100102
server.addHtmlRoute('/one', html`<main>First</main>`);
101103
server.addHtmlRoute('/two', html`<main>Second</main>`);
102104
server.addHtmlRoute('/three', html`<main>Third</main>`);
103105

104106
await withBrowser(async (response, context) => {
107+
await context.setUpNetworkCollectorForTesting();
105108
const page = context.getSelectedPage();
106109
await page.goto(server.getRoute('/one'));
107110
await page.goto(server.getRoute('/two'));

0 commit comments

Comments
 (0)