-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
45 lines (42 loc) · 2.47 KB
/
Copy pathpyproject.toml
File metadata and controls
45 lines (42 loc) · 2.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
[build-system]
requires = [
"setuptools>=45,<69",
"wheel"
]
build-backend = "setuptools.build_meta"
[tool.pytest.ini_options]
# Register custom marks so the connectivity test files' `@pytest.mark.integration`
# decorations stop logging `PytestUnknownMarkWarning` per occurrence per
# xdist worker. Each unregistered mark was emitting four-plus warning
# blocks in performance.md — pure noise.
markers = [
"integration: integration tests that exercise the live VFB upstream (Neo4j, SOLR, owlery). Skip via -m 'not integration'.",
"data_health: live SOLR content-completeness checks (the '*_live' variants of the term_info tests). These assert on the external indexer's built 'vfb_json' documents, not this repo's render code, so an empty/incomplete production document fails them. Run on the schedule; deselected on PRs via -m 'not data_health'. See TESTING.md.",
]
# Ceiling on any single test. The upstream Neo4j intermittently stops answering
# for minutes at a time; with no per-test bound one test caught in that absorbs
# the whole job, and the run is killed by the runner's own limit with nothing to
# say which test was stuck. This turns that into one named failure. It is a
# backstop, not a performance target — a healthy connectivity query returns in a
# couple of seconds, so anything near this is already a fault. Needs
# pytest-timeout; without it pytest warns about the unknown option and carries
# on, so it degrades to the old behaviour rather than breaking the run.
timeout = 300
# Silence the marshmallow deprecation warnings that bubble up from inside
# the library itself (marshmallow/fields.py:582,776,986,1218). Our own
# code calls to `missing=`/`fields.Field()` have been migrated to
# `load_default=`/`fields.Raw()`, but transitive deps (e.g. via
# vfb_connect / dataclasses-json) still trigger them. Hiding the
# library-internal noise — but NOT user-code DeprecationWarnings —
# keeps performance.md readable.
#
# Filtered by category + source module rather than by naming marshmallow's
# own warning classes: pytest resolves a named class at startup and ERRORS
# (exit 4, nothing collected) when it does not exist — which is what broke
# the Python 3.8 examples job, whose older marshmallow predates
# ChangedInMarshmallow4Warning. Both classes subclass DeprecationWarning,
# and the module field pins the filter to warnings raised from inside
# marshmallow, so user-code DeprecationWarnings still show.
filterwarnings = [
"ignore::DeprecationWarning:marshmallow.*",
]