Die Leiste nimmt ihre Breite links weg; dieselbe Breite kommt rechts als Abstand dazu, soweit Platz ist (die Spalte wird dafür nie schmaler). Beides gleitet gleichzeitig, der Text bleibt stehen. Neu berechnet beim Öffnen und Schließen der Leiste, bei Fenstergröße und Zeilenlänge/Schrift. e2e: Test dafür (breit: Spalte bleibt, schmal: weicht aus, bleibt gleich breit, liegt nicht unter der Leiste); Service Worker in den Tests aus (sein Neuladen störte mitten im Test). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
41 lines
1.3 KiB
JavaScript
41 lines
1.3 KiB
JavaScript
// Playwright config for diora's e2e smoke tests.
|
|
//
|
|
// Tests run against a real `manage.py runserver` instance backed by its own
|
|
// throwaway SQLite database (DIORA_DB_NAME), so they never touch the dev
|
|
// database at data/db.sqlite3. See e2e/global-setup.js for how that DB is
|
|
// migrated and seeded with a test user.
|
|
const path = require('path');
|
|
const { defineConfig, devices } = require('@playwright/test');
|
|
const { BASE_URL, PORT, PYTHON, SERVER_ENV } = require('./e2e/env');
|
|
|
|
module.exports = defineConfig({
|
|
testDir: './e2e',
|
|
fullyParallel: false,
|
|
workers: 1,
|
|
reporter: [['list']],
|
|
timeout: 30_000,
|
|
use: {
|
|
baseURL: BASE_URL,
|
|
trace: 'retain-on-failure',
|
|
screenshot: 'only-on-failure',
|
|
// A new service worker taking over reloads the page (28-serviceworker.js),
|
|
// mid-test. It isn't what these tests are about.
|
|
serviceWorkers: 'block',
|
|
},
|
|
projects: [
|
|
{
|
|
name: 'chromium',
|
|
use: { ...devices['Desktop Chrome'] },
|
|
},
|
|
],
|
|
globalSetup: require.resolve('./e2e/global-setup.js'),
|
|
webServer: {
|
|
command: `${PYTHON} manage.py runserver 127.0.0.1:${PORT} --noreload`,
|
|
url: BASE_URL + '/accounts/login/',
|
|
// Never reuse: a server already on the port has someone's real database behind it.
|
|
reuseExistingServer: false,
|
|
timeout: 30_000,
|
|
cwd: path.join(__dirname),
|
|
env: SERVER_ENV,
|
|
},
|
|
});
|