Skip to content

[V0.8.2] TDD: Failing Tests für die XDG-Kette schreiben #33

Closed

Description

@Toqsick

Hintergrund (Live-Bug)

Das Browser-Werkzeug im Hub startet Google Chrome, obwohl Brave Origin Standard ist (xdg-settings get default-web-browser → brave-origin.desktop). Ursache: AppLauncher prüft eine feste Binary-Liste per which, von der nur google-chrome installiert ist.

Scope (Task 2, Steps 1–2 — RED)

In test/app_launcher_test.dart:

  • import 'dart:io'; ergänzen
  • Gruppen AppLauncher.detectBrowser und AppLauncher.launchApp bleiben wörtlich
  • Gruppe AppLauncher.launchBrowser (Z. 33–83) ersetzen
  • Hermetischen fake()-Helper + zwei neue Gruppen einfügen: defaultBrowserDesktopId (4 Tests) und desktopEntryExistsIn (2 Tests); launchBrowser neu mit 8 Tests (XDG statt Chrome, xdg-open mit URL, preferred_browser gewinnt, Fallbacks, failed)
  • Vollständiger Test-Code: Plan Task 2, Step 1

Gate (RED)

  • flutter test test/app_launcher_test.dart schlägt fehl mit Compile-Fehler No named parameter with the name 'outputReader' — erwartet und gewollt

Quelle: Implementierungsplan V0.8.X, Task 2 (Steps 1–2).

Activity

  1. added
    bugSomething isn't working
    xdg-launcherAppLauncher / XDG-Standardbrowser-Kette
    gate:testGate: automatisierte Tests müssen grün sein
    on Sep 11, 2026
  2. added a commit that references this issue on Oct 19, 2026
  3. Toqsick commented on Oct 23, 2026

    @Toqsick
    OwnerAuthor

    Abnahme — erledigt

    Die XDG-Kette ist getestet, die Tests sind grün. Umsetzung in main als add73e3 (PR #118, Squash).

    Kriterium aus dem Issue Beleg
    import 'dart:io'; ergänzt test/app_launcher_test.dart:1
    Hermetische Test-Umgebung test/app_launcher_test.dart:9-50 (LauncherFake)
    Gruppen detectBrowser / launchApp wörtlich test/app_launcher_test.dart:55 und :270
    defaultBrowserDesktopId — 4 Tests test/app_launcher_test.dart:81
    desktopEntryExistsIn — 2 Tests test/app_launcher_test.dart:113
    launchBrowser neu — 8 Tests laut Spec test/app_launcher_test.dart:139 — 9 vorhanden (Superset)

    Die drei Tests über die Spec hinaus: debug override does not run xdg-settings without an output reader, ignoriert einen Pfad als preferred_browser (WP-B1-Boundary) und übergibt die URL auch an den Binary-Listen-Fallback.

    Zum RED-Gate: Der erwartete Compile-Fehler No named parameter with the name 'outputReader' war ein transientes Working-Tree-Format während der TDD-Phase — kein Commit. Der Branch hardening/0.8.x-browser-xdg enthält nur den GREEN-Stand. Belegt ist damit der GREEN-Stand, nicht der RED-Zustand.

    Gates am 2026-10-23 gegen add73e3 (echte Exitcodes): flutter analyze → No issues found! (28,6 s) · flutter test → 223 Tests grün · dart format --set-exit-if-changed lib test → 123 Dateien, 0 geändert.

    Nachweis: docs/handoff/v0.8.2-xdg-browser-abschluss.md — folgt mit PR #154.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggate:testGate: automatisierte Tests müssen grün seinxdg-launcherAppLauncher / XDG-Standardbrowser-Kette

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions