From 01ff41fd71ee596c8516764c7c7db4488b9fe487 Mon Sep 17 00:00:00 2001 From: Scarriffle Date: Sun, 4 Oct 2026 11:42:09 +0200 Subject: [PATCH] =?UTF-8?q?Der=20Testhelfer=20wartet=20dreissig=20Sekunden?= =?UTF-8?q?=20statt=20f=C3=BCnf?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Die alte Grenze war für zwei, drei Dateien bemessen. Der neue Test über 120 Dateien schaffte sie allein, fiel aber durch, sobald die ganze Suite nebenher lief — kein Fehler im Scan, sondern zu knappe Geduld. Co-Authored-By: Claude Opus 5 --- server/tests/Flaro.Api.Tests/ScanTests.cs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/server/tests/Flaro.Api.Tests/ScanTests.cs b/server/tests/Flaro.Api.Tests/ScanTests.cs index 2ec6b2b..62ed69c 100644 --- a/server/tests/Flaro.Api.Tests/ScanTests.cs +++ b/server/tests/Flaro.Api.Tests/ScanTests.cs @@ -43,14 +43,21 @@ public class ScanTests var angestossen = await client.PostAsync($"/api/v1/libraries/{bibliothek}/scan", null); Assert.That(angestossen.StatusCode, Is.EqualTo(HttpStatusCode.Accepted)); - for (var versuch = 0; versuch < 100; versuch++) + // **Dreissig Sekunden, nicht fünf.** Die alte Grenze war für zwei, + // drei Dateien bemessen. Der Test über 120 Dateien schaffte sie + // allein, fiel aber durch, sobald die ganze Suite nebenher lief — + // und das war kein Fehler im Scan, sondern eine zu knappe Geduld. + // Teurer wird es nur, wenn wirklich etwas hängt. + const int schritte = 600, abstand = 50; + + for (var versuch = 0; versuch < schritte; versuch++) { var stand = await client.GetFromJsonAsync($"/api/v1/libraries/{bibliothek}/scan"); if (stand!.State is "finished") return stand; if (stand.State is "failed") Assert.Fail($"Der Scan ist gescheitert: {stand.Error}"); - await Task.Delay(50); + await Task.Delay(abstand); } - Assert.Fail("Der Scan wurde in fünf Sekunden nicht fertig."); + Assert.Fail($"Der Scan wurde in {schritte * abstand / 1000} Sekunden nicht fertig."); return null!; }