mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-08 17:06:15 -08:00
feat(playback): slide-in channel list for fullscreen playback (#1519)
This commit is contained in:
1 parent
8eda5370eb
commit
d9d6f49757
85 files changed
+5664
-325
No files matched your search
@@ -675,6 +675,32 @@ test('@stalker ITV full channel list loads via get_all_channels and search cover
|
||||
});
|
||||
await expect(categories.nth(1).locator('.item-count')).toHaveText('40');
|
||||
|
||||
// Starting from All Items leaves the category unset. Its fullscreen
|
||||
// list must still show and window the full cache without a search term.
|
||||
await allItemsGrid.locator('mat-card').first().click();
|
||||
const playerView = page.locator('app-web-player-view');
|
||||
await expect(playerView).toBeVisible();
|
||||
await playerView.hover();
|
||||
await playerView.getByRole('button', { name: 'Enter fullscreen' }).click();
|
||||
await expect(
|
||||
playerView.getByRole('button', { name: 'Exit fullscreen' })
|
||||
).toBeVisible();
|
||||
await page
|
||||
.locator('[data-test-id="fullscreen-channel-panel-hot-zone"]')
|
||||
.hover();
|
||||
const panel = page.locator('[data-test-id="fullscreen-channel-panel"]');
|
||||
await expect(panel).toHaveAttribute('aria-hidden', 'false');
|
||||
const panelRows = panel.locator('[data-test-id="channel-item"]');
|
||||
await expect(panelRows).toHaveCount(100);
|
||||
await panel.locator('.channels-list').evaluate((element) => {
|
||||
element.scrollTop = element.scrollHeight;
|
||||
});
|
||||
await expect(panelRows).toHaveCount(200);
|
||||
await page.evaluate(() => document.exitFullscreen());
|
||||
await expect
|
||||
.poll(() => page.evaluate(() => !!document.fullscreenElement))
|
||||
.toBe(false);
|
||||
|
||||
await categories.nth(1).click();
|
||||
|
||||
const channels = page.locator('[data-test-id="channel-item"]');
|
||||
|
||||
Reference in new issue
Block a user