Fix #44: Differenzierte Icons fuer alle Verarbeitungsstatus
Die beiden SKIPPED-Statuswerte teilten sich bisher Icon und Farbe. Jeder Status erhaelt jetzt ein eigenes Unicode-Icon und passende Farbe: SUCCESS gruen, FAILED_RETRYABLE orange, FAILED_PERMANENT rot, SKIPPED_ALREADY_PROCESSED blau (Naechster-Track), SKIPPED_FINAL_FAILURE grau (Durchgestrichener Kreis). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
+5
-5
@@ -205,11 +205,11 @@ public record GuiBatchRunResultRow(
|
||||
return RESET_PENDING_ICON;
|
||||
}
|
||||
return switch (status) {
|
||||
case SUCCESS -> "\u2714"; // ✔ HEAVY CHECK MARK
|
||||
case FAILED_RETRYABLE -> "\u26A0"; // ⚠ WARNING SIGN
|
||||
case FAILED_PERMANENT -> "\u2718"; // ✘ HEAVY BALLOT X
|
||||
case SKIPPED_ALREADY_PROCESSED,
|
||||
SKIPPED_FINAL_FAILURE -> "\u25BA"; // ► BLACK RIGHT-POINTING POINTER
|
||||
case SUCCESS -> "\u2714"; // ✔ HEAVY CHECK MARK
|
||||
case FAILED_RETRYABLE -> "\u26A0"; // ⚠ WARNING SIGN
|
||||
case FAILED_PERMANENT -> "\u2718"; // ✘ HEAVY BALLOT X
|
||||
case SKIPPED_ALREADY_PROCESSED -> "\u23ED"; // ⏭ NEXT TRACK BUTTON
|
||||
case SKIPPED_FINAL_FAILURE -> "\u2298"; // ⊘ CIRCLED DIVISION SLASH
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
+2
-1
@@ -1425,7 +1425,8 @@ public final class GuiBatchRunTab {
|
||||
case SUCCESS -> "#2e7d32";
|
||||
case FAILED_RETRYABLE -> "#e65100";
|
||||
case FAILED_PERMANENT -> "#c62828";
|
||||
case SKIPPED_ALREADY_PROCESSED, SKIPPED_FINAL_FAILURE -> "#757575";
|
||||
case SKIPPED_ALREADY_PROCESSED -> "#1565c0";
|
||||
case SKIPPED_FINAL_FAILURE -> "#757575";
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -290,7 +290,7 @@ class GuiBatchRunCoordinatorTest {
|
||||
assertEquals("\u2714", row(DocumentCompletionStatus.SUCCESS).statusIcon());
|
||||
assertEquals("\u26A0", row(DocumentCompletionStatus.FAILED_RETRYABLE).statusIcon());
|
||||
assertEquals("\u2718", row(DocumentCompletionStatus.FAILED_PERMANENT).statusIcon());
|
||||
assertEquals("\u25BA", row(DocumentCompletionStatus.SKIPPED_ALREADY_PROCESSED).statusIcon());
|
||||
assertEquals("\u23ED", row(DocumentCompletionStatus.SKIPPED_ALREADY_PROCESSED).statusIcon());
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
+12
-4
@@ -109,13 +109,21 @@ class GuiBatchRunResultRowTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void statusIcon_skippedAlreadyProcessed_isPointer() {
|
||||
assertEquals("\u25BA", row(DocumentCompletionStatus.SKIPPED_ALREADY_PROCESSED).statusIcon());
|
||||
void statusIcon_skippedAlreadyProcessed_isNextTrack() {
|
||||
assertEquals("\u23ED", row(DocumentCompletionStatus.SKIPPED_ALREADY_PROCESSED).statusIcon());
|
||||
}
|
||||
|
||||
@Test
|
||||
void statusIcon_skippedFinalFailure_isPointer() {
|
||||
assertEquals("\u25BA", row(DocumentCompletionStatus.SKIPPED_FINAL_FAILURE).statusIcon());
|
||||
void statusIcon_skippedFinalFailure_isCircledDivisionSlash() {
|
||||
assertEquals("\u2298", row(DocumentCompletionStatus.SKIPPED_FINAL_FAILURE).statusIcon());
|
||||
}
|
||||
|
||||
@Test
|
||||
void statusIcon_skippedValues_areDifferentFromEachOther() {
|
||||
String alreadyProcessed = row(DocumentCompletionStatus.SKIPPED_ALREADY_PROCESSED).statusIcon();
|
||||
String finalFailure = row(DocumentCompletionStatus.SKIPPED_FINAL_FAILURE).statusIcon();
|
||||
assertFalse(alreadyProcessed.equals(finalFailure),
|
||||
"SKIPPED_ALREADY_PROCESSED und SKIPPED_FINAL_FAILURE müssen unterschiedliche Icons haben");
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
+2
-2
@@ -140,10 +140,10 @@ class GuiBatchRunTabSmokeTest {
|
||||
tab().resultTable().getSelectionModel().select(1);
|
||||
assertTrue(tab().detailArea().getText().contains(GuiBatchRunTab.NO_REASONING_TEXT));
|
||||
|
||||
// SKIPPED row must carry the ► icon, not ✘.
|
||||
// SKIPPED_ALREADY_PROCESSED muss das Weiterspulen-Icon ⏭ tragen, nicht ✘.
|
||||
GuiBatchRunResultRow skippedRow = tab().resultTable().getItems().get(2);
|
||||
assertEquals(DocumentCompletionStatus.SKIPPED_ALREADY_PROCESSED, skippedRow.status());
|
||||
assertEquals("\u25BA", skippedRow.statusIcon());
|
||||
assertEquals("\u23ED", skippedRow.statusIcon());
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user