wrolpi/pytest.ini
lrnselfreliance bcbc42632d
Remove CircleCI (#796)
GitHub Actions runs every job CircleCI did (#789), so CircleCI only
duplicated them.  The README badge now shows the backend tests on master.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 17:19:38 -06:00

24 lines
1.2 KiB
INI

[pytest]
asyncio_mode = auto
testpaths =
wrolpi
modules
asyncio_default_fixture_loop_scope = function
markers =
allow_unexpected_queries: the test trips the serializer query guard on purpose (see wrolpi.db.no_db_access)
# Do not remove timeout - tests should not run forever.
#
# This is a hang detector, not a performance budget. It was 30s, but the plugin was never
# declared in requirements.txt, so CI installed without it and the limit had never actually been
# applied there. The first run that enforced it failed sixteen tests, every one of them at
# 30.0s and none of them hung: a 4 vCPU CI runner runs this suite in roughly twice the
# wall-clock of a dev machine, and a cluster of refresh/worker tests sits at 28-30s there --
# test_get_refresh_progress passed at 29.9s and test_create_playlist at 29.8s, which is luck
# rather than headroom.
#
# 120s is about four times the slowest legitimate test observed on CI, so it still catches a
# genuine hang long before the CI job times out, while leaving slow-but-working tests alone.
# Raise it if CI grows slower; a named timeout failure is the point, and a limit tight enough to
# fire on healthy tests just trades one unreliable signal for another.
timeout = 120
timeout_method = signal