Skip to content

Commit 2f3da2b

Browse files
committed
Fix queue navigation test
1 parent 4734b7f commit 2f3da2b

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

tests/integration/queue.ts

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -116,26 +116,31 @@ describe('queue', () => {
116116
const t = await page.evaluate((sel, n) => document.querySelector(`${sel} .element:nth-child(${n}) .title`).textContent, queueSelector, num);
117117
// titles in nebula are weird...
118118
// e.g. https://nebula.app/videos/extra-history-vlad-the-impaler-lies-extra-history contains extra space that is stripped in document title
119-
await page.waitForFunction(() => document.title.indexOf('Loading') === -1 && document.title !== 'Nebula', { timeout: 5000 });
119+
await page.waitForFunction(() => document.title.indexOf('Loading') === -1 && document.title !== 'Nebula' && document.title !== 'Videos | Nebula', { timeout: 5000 });
120120
await expect(page.title()).resolves.toContain(t.replace(/\s+/g, ' '));
121121
await expect(page.evaluate(sel => document.querySelector(`${sel} .top .title`).textContent, queueSelector)).resolves.toBe(t);
122122
await expect(page.evaluate(sel => document.querySelector(`${sel} .top .no`).textContent, queueSelector)).resolves.toBe(`${num}`);
123123
};
124+
const changed = async (promise: Promise<any>) => {
125+
const prev = await page.title();
126+
await promise;
127+
await page.waitForFunction(prev => document.title !== prev, { timeout: 5000 }, prev);
128+
};
124129

125130
await addToQueue(5);
126131
await page.evaluate(sel => document.querySelector<HTMLDivElement>(`${sel} .element:nth-child(3)`).click(), queueSelector);
127132
await correct(3);
128-
await page.click(`${queueSelector} .top .prev`);
133+
await changed(page.click(`${queueSelector} .top .prev`));
129134
await correct(2);
130-
await page.click(`${queueSelector} .top .prev`);
135+
await changed(page.click(`${queueSelector} .top .prev`));
131136
await correct(1);
132137
await page.click(`${queueSelector} .top .prev`);
133138
await correct(1);
134-
await page.click(`${queueSelector} .top .next`);
139+
await changed(page.click(`${queueSelector} .top .next`));
135140
await correct(2);
136-
await page.click(`${queueSelector} .top .next`);
137-
await page.click(`${queueSelector} .top .next`);
138-
await page.click(`${queueSelector} .top .next`);
141+
await changed(page.click(`${queueSelector} .top .next`));
142+
await changed(page.click(`${queueSelector} .top .next`));
143+
await changed(page.click(`${queueSelector} .top .next`));
139144
await correct(5);
140145
await page.click(`${queueSelector} .top .next`);
141146
await correct(5);

0 commit comments

Comments
 (0)