mirror of
https://github.com/allaunthefox/Research-Stack.git
synced 2026-07-31 03:05:21 +00:00
- Libraries created via API (204 on creation + path update) - Paths: /media/movies, /media/tv, /media/music - SSO-Auth plugin Active, SSO button on login page - Paths may need manual setting through Dashboard UI Build: 3313 jobs, 0 errors
30 lines
1 KiB
TypeScript
30 lines
1 KiB
TypeScript
import { test } from '@playwright/test';
|
|
test('Jellyfin libraries', async ({ page }) => {
|
|
test.setTimeout(60000);
|
|
|
|
// Login
|
|
await page.goto('http://100.88.57.96:30091/web/', { timeout: 10000 });
|
|
await page.waitForTimeout(2000);
|
|
await page.locator('#txtUsername').fill('admin');
|
|
await page.locator('#txtPassword').fill('jellyfin-admin');
|
|
await page.locator('.button-submit').first().click();
|
|
await page.waitForTimeout(3000);
|
|
|
|
// Navigate to library page via hash
|
|
await page.evaluate(() => { window.location.hash = '#/dashboard/library'; });
|
|
await page.waitForTimeout(5000);
|
|
console.log('URL:', page.url());
|
|
|
|
// Take screenshot for debug
|
|
await page.screenshot({ path: '/tmp/jf-lib-page.png' });
|
|
|
|
// Check for "Add Media Library" button
|
|
const buttons = await page.locator('button').all();
|
|
for (const b of buttons) {
|
|
const text = await b.textContent();
|
|
if (text?.includes('Add') || text?.includes('Media')) {
|
|
console.log(`Button: "${text}" visible=${await b.isVisible()}`);
|
|
}
|
|
}
|
|
console.log('Done');
|
|
});
|