Make tests that wait for concurrent work wait on the event or a condition with a long deadline (issue 1814)
A test that slept a fixed time and then asserted what a goroutine, process or watcher did failed under the checker's load. Each now waits for its positive evidence (a started baseline, a call counted, a state reached) within 30 s, and the concurrency-limit tests meet at a barrier instead of overlapping by sleep. Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
This commit is contained in:
@@ -140,7 +140,7 @@ func TestARetiredItemIsDeletedOnlyAfterALastRestorePoint(t *testing.T) {
|
||||
|
||||
wait := func(path string) Deletion {
|
||||
t.Helper()
|
||||
for i := 0; i < 200; i++ {
|
||||
for i := 0; i < 6000; i++ {
|
||||
if d, err := b.DeletedOutcome(path); err == nil && d.Done {
|
||||
return d
|
||||
}
|
||||
|
||||
@@ -229,7 +229,7 @@ func TestANightWaitsForAnotherProcesssNight(t *testing.T) {
|
||||
release()
|
||||
select {
|
||||
case <-done:
|
||||
case <-time.After(5 * time.Second):
|
||||
case <-time.After(30 * time.Second):
|
||||
t.Fatal("the night did not run once the other let go")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user