Research-Stack/4-Infrastructure/k3s-flake/tests/jellyfin-check.spec.ts
Brandon Schneider bc0f10db40 feat(infra): Jellyfin wizard complete, SSO-Auth plugin files deployed
- Jellyfin setup wizard completed, admin account created (admin/jellyfin-admin)
- SSO-Auth plugin v4.0.0.3 downloaded and placed in plugins directory
- Authentik OIDC provider for Jellyfin updated with correct redirect URI
- All services verified running

Build: 3313 jobs, 0 errors (lake build Compiler)
2026-05-31 14:14:20 -05:00

31 lines
1.2 KiB
TypeScript

import { test, expect } from '@playwright/test';
test('Check Jellyfin with auth-state', async ({ browser }) => {
const context = await browser.newContext({ storageState: 'auth-state.json' });
const page = await context.newPage();
console.log('Navigating to Jellyfin...');
await page.goto('https://media.researchstack.info/');
await page.waitForLoadState('networkidle');
await page.waitForTimeout(6000);
console.log('Current URL:', page.url());
await page.screenshot({ path: 'jellyfin-check-initial.png' });
// If on consent page
if (page.url().includes('consent') || page.url().includes('authorize')) {
console.log('On consent/authorize page. Clicking Continue/Submit...');
const btn = page.locator('button:has-text("Continue"), button:has-text("Authorize"), input[type="submit"]').first();
if (await btn.isVisible()) {
await btn.click();
await page.waitForTimeout(6000);
console.log('Clicked. New URL:', page.url());
await page.screenshot({ path: 'jellyfin-check-after-consent.png' });
}
}
const textContent = await page.evaluate(() => document.body.innerText);
console.log('Jellyfin body text:', textContent.slice(0, 1000));
await context.close();
});