Cleanup: restore the interrupt flag in TestRail / Xray clients

Offen Anfängerfreundlich
#256 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
84/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
java
Bereich
testing-qa

Rechercherichtung

Beginne in src/main/java/com/seleniumboot/testmanagement/TestRailClient.java etwa in Zeile 79 und in XrayClient.java in den Zeilen 90 und 110, wo InterruptedException abgefangen und verschluckt wird. Füge an jeder dieser Stellen einen separaten catch-Block für InterruptedException hinzu, der Thread.currentThread().interrupt() aufruft und die bestehende Behandlung beibehält. Fertig ist es, wenn diese Stellen das Interrupt-Flag wiederherstellen, sonst nichts geändert wurde und mvn test erfolgreich durchläuft.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

good first issue

Part of the cleanup cycle from #251. SonarCloud rule java:S2142 flags these spots.

These places catch InterruptedException (often inside catch (Exception e)) and carry on without restoring the thread's interrupt flag. Anything further up that checks Thread.interrupted() (a parallel runner shutting down, a timeout) never sees the interrupt.

Where (line numbers as of master 2a07bba):

  • src/main/java/com/seleniumboot/testmanagement/TestRailClient.java: line 79
  • src/main/java/com/seleniumboot/testmanagement/XrayClient.java: lines 90, 110

Fix: restore the flag and keep the existing behaviour. For a combined catch, split it out:

} catch (InterruptedException e) {
    Thread.currentThread().interrupt();
    // then the same handling the old catch did (log / wrap / return)
} catch (Exception e) {
    ...
}

Done when: the listed spots restore the interrupt flag, the behaviour is otherwise unchanged, and mvn test passes. Keep this PR to this package. SonarCloud reruns on the PR.

Vorherrschende Sprache
Java
Sterne
12
Forks
6
Ø Merge
10 Std.
Gemergte PRs (30 T.)
76

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus seleniumboot/selenium-boot

Alle Issues in seleniumboot/selenium-boot

Ähnliche Issues

Weitere Issues zu Java

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.