-
Notifications
You must be signed in to change notification settings - Fork 286
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Hi, i have small test with Jest, Puppeteer the following lightpanda instance:
➜ ./lightpanda serve
info(telemetry): telemetry enabled
info(server): accepting new conn...
info(server): client connected
warning(cookie): Couldn't parse cookie 'XSRF-TOKEN=eyJpdiI6IlhxbWdmRWNqa0lQUzZHVEUyaEFiVUE9PSIsInZhbHVlIjoidFB5eVcreGtBejJRSVU0SHZsY2IrNmp5djVqajM0VncxekdkY3p3d3BzOGY1RXBmenRManZIN1ZqRGFtR3hOVHZ5NzFscUZKUGs3Y3kvVXhGeDV4cmFEcUw0Znh1OXZydnBDMjZyb3JWUXRFTDJOS3lweTVCcU5hZEVjcWo2ODAiLCJtYWMiOiJhMDY3YzcyZjQ2N2ExZTEzZTVmNzFmYTI4MTllMTdkNDMwZDY3OWZhZjYyNTdiYWNiZTA5NjJlMTkyNjVkNGMwIiwidGFnIjoiIn0%3D; expires=Tue, 27 May 2025 10:23:10 GMT; Max-Age=7200; path=/; domain=localhost; samesite=lax': error.InvalidDomain
warning(cookie): Couldn't parse cookie 'app_session=eyJpdiI6IjlLUSsrdHlNbGVFTVh2b0E4aytLR2c9PSIsInZhbHVlIjoiUjhQNjFTNTFjQjlSeFBJUTMzWlVZWkJ4K3owQWRQOWphWEhYNFBLWGU5ZkVJTkZGR0JhT3NKWkFKdERseWpyZVVIQ2NYVmtzWUR5NDh1a2hFaCtmRHdiS2tSY0V2VURQWjduV010enJTYkh1MkNlc01rd2NqN3BiSmU1THdlVzMiLCJtYWMiOiJiZDEyZTAzNGYyMThjZjBlYmU2MzNlNDAwMTM1NjI3NzQyNWY3OGFjYzAwZDc3NTFkYzgxMmMxYzVmZjk1ODE1IiwidGFnIjoiIn0%3D; expires=Tue, 27 May 2025 10:23:10 GMT; Max-Age=7200; path=/; domain=localhost; httponly; samesite=lax': error.InvalidDomain
info(browser): GET http://localhost:8000/login 200
info(browser): fetch http://localhost:8000/js/app.js: 200
info(server): accepting new conn...and the Jest script
import {BrowserContext, Page} from "puppeteer";
describe('Create Role Tests', () => {
let page: Page;
let context: BrowserContext
let url: string
let credentials: { email: string, password: string }
afterAll(async () => {
await page.close()
await context.close()
});
beforeAll(async () => {
credentials = {
password: '12345678',
email: 'team@gmail.com',
}
url = 'http://localhost:8000'
context = await globalThis.__BROWSER_GLOBAL__.createBrowserContext()
page = await context.newPage()
await page.goto('http://localhost:8000/login', {
waitUntil: 'networkidle2'
});
await page.click('#email', {count: 3});
await page.type('#email', credentials.email);
await page.click('#password', {count: 3});
await page.type('#password', credentials.password);
await Promise.all([
page.waitForNavigation({waitUntil: 'networkidle2'}),
page.click('button[type="submit"]'),
]);
})
it('can click new role dropdown and redirect to create role page', async () => {
await page.evaluate(() => {
const button = document.querySelector('[data-test="create_role_dropdown"]') as HTMLElement;
const dropdown = new (window as any).bootstrap.Dropdown(button);
dropdown.show();
});
await page.evaluate(() => {
const element = document.querySelector('#create-perm-role-button') as HTMLAnchorElement;
if (element) {
element.click();
}
});
await page.waitForNavigation({ waitUntil: 'networkidle2' });
expect(page.url()).toBe(`${url}/roles/create?type=2`)
});
})My setup test:
import { promises } from 'fs';
import os from 'os'
import path from 'path'
import puppeteer from 'puppeteer'
const DIR = path.join(os.tmpdir(), 'jest_puppeteer_global_setup');
module.exports = async function () {
console.log('Setting up browser...');
try {
const browser = await puppeteer.connect({
browserWSEndpoint: "ws://127.0.0.1:9222",
})
globalThis.__BROWSER_GLOBAL__ = browser;
await promises.mkdir(DIR, {recursive: true});
await promises.writeFile(path.join(DIR, 'wsEndpoint'), browser.wsEndpoint());
console.log('Browser setup complete');
} catch (error) {
console.error('Browser setup failed:', error);
throw error;
}
};What i can do to fix this error? Thanks
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working