Baka-Konto-Dialog: Passwort wird jetzt auch getrimmt (wie im Navidrome-Dialog)

Das Passwortfeld im Baka-Konto-Anmelde-Dialog wurde vor dem Absenden und
vor dem Speichern nicht getrimmt — ein durch Autofill eingefügtes
Leerzeichen ließ korrekte Logins scheitern. Gleicher Fix wie bereits in
settings_screen.dart (Commit 3d1e00646a) für denselben Symptom-Typ.
This commit is contained in:
Hermes (Server)
2026-08-29 18:08:19 +02:00
parent e2304b66cd
commit 824f6364e2
3 changed files with 62 additions and 2 deletions
+34
View File
@@ -301,6 +301,40 @@ void main() {
expect(auth.istAngemeldet, isTrue);
});
testWidgets(
'Anmelden trimmt das Passwort — ein unsichtbares Leerzeichen durch '
'Autofill im obscureText-Feld darf den Login nicht scheitern lassen '
'(wie im Navidrome-Dialog, settings_screen.dart)', (tester) async {
late String gesendetesPasswort;
final auth = BakaAuth(
client: MockClient((request) async {
final body = jsonDecode(request.body) as Map<String, dynamic>;
gesendetesPasswort = body['password'] as String;
if (body['password'] == 'geheim') {
return http.Response(jsonEncode({'token': 'jwt-neu'}), 200);
}
return http.Response('', 500);
}),
speicher: _MemorySpeicher(),
);
final nav = NavidromeService()
..setCredentials('https://musik.baka-net.de', 'Tinker', 'altesPasswort');
await tester.pumpWidget(_wrap(auth,
db: db, categories: categories, navidrome: nav));
await tester.pumpAndSettle();
await tester.tap(find.text('Beim Baka-Konto anmelden'));
await tester.pumpAndSettle();
await tester.enterText(find.byType(TextField).last, 'geheim ');
await tester.tap(find.text('Anmelden'));
await tester.pumpAndSettle();
expect(gesendetesPasswort, 'geheim');
expect(nav.passwort, 'geheim');
});
testWidgets(
'Server-User meldet sich im Hintergrund mit denselben Zugangsdaten '
'beim Baka-Konto an', (tester) async {