Docker Compose mit drei Services (nginx auf Port 8000), Migrationsmechanik, Update- und Backup-Skript. Anwendung: Router mit CSRF-Prüfung, Anmeldung und Ersteinrichtung, zentraler Einstellungsdialog mit Reitern, ein- und ausschaltbares Debug-Log mit Maskierung von Zugangsdaten. Layout nach Vorbild des FinanzManagers: feste Navigation links, Werkzeugleiste oben, Tab-Leiste; Farbschema hell/dunkel/System. Tests: 51 PHP-Prüfungen und 7 Playwright-Tests, alle grün.
34 lines
880 B
PHP
Executable file
34 lines
880 B
PHP
Executable file
#!/usr/bin/env php
|
|
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/**
|
|
* Legt den Testnutzer für die E2E-Tests an (oder setzt sein Passwort zurück).
|
|
*
|
|
* docker compose exec -u www-data php php scripts/e2e-benutzer.php
|
|
*
|
|
* Zugangsdaten lassen sich über E2E_USER und E2E_PASSWORD überschreiben; sie
|
|
* müssen dann beim Testlauf ebenso gesetzt sein.
|
|
*/
|
|
|
|
require dirname(__DIR__) . '/vendor/autoload.php';
|
|
|
|
use Finanzmanager\Config;
|
|
use Finanzmanager\Models\Benutzer;
|
|
|
|
Config::load();
|
|
|
|
$name = getenv('E2E_USER') ?: 'e2e';
|
|
$passwort = getenv('E2E_PASSWORD') ?: 'e2e-testpasswort';
|
|
|
|
$vorhanden = Benutzer::findByName($name);
|
|
|
|
if ($vorhanden !== null) {
|
|
Benutzer::passwortSetzen((int)$vorhanden['id'], $passwort);
|
|
echo "Passwort für '{$name}' zurückgesetzt.\n";
|
|
exit(0);
|
|
}
|
|
|
|
Benutzer::anlegen($name, $passwort, 'E2E-Testnutzer');
|
|
echo "Testnutzer '{$name}' angelegt.\n";
|