Unit tests: three tests pass only when the machine is idle #719
Labels
No labels
accessibility
authentication
breaking change
bug
documentation
enhancement
interface
internationalisation
observability
performance
security
tier
1
tier
2
tier
3
tier/4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Postulo/postulo#719
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Measured from Forgejo's task API and job logs, runs 561–710 (24 Sep – 4 Oct 2026): wall time per push about 52–55 min, up from about 15; the browser suite grew from 149 to 645 tests in five days and runs serially (29 min); the runner takes two jobs at a time, in the order the workflow file lists them, so the browser job starts 19–22 min after the push; and Forgejo cancels the older push run when a newer push lands, which stopped 18 of 56 browser jobs before they gave a verdict.
tests/security/test_outbound.py:1135-1146). The deadline is patched to 0.15 s and the test assertsasked == ["/robots.txt"], but the server thread appends toaskedonly after it has read the whole request (:1058-1065). On a loaded machine the client gives up first, the fetch allows, andaskedis still empty. Seen failing while other suites ran (0.6.0 bug sweep). The server should say when it has the request, and the test wait for that rather than race it.tests/test_mfa.py:19-34). The helper accepts only the current code and sleeps up to 5.5 s to keep clear of a 30-second boundary. That is slow on every run and still fails if more than the margin passes between making and posting the code. It builds the code from a clock the test controls instead.tests/test_tables.py:689-691). A full GET must finish in 1 s, on the leg that measures coverage, on a shared host. What it protects is that the page does not do work per row; a bound on the number of queries says that without depending on the machine.Done when