You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
827 B
26 lines
827 B
# Testing conventions constraint (YAML)
|
|
|
|
rules:
|
|
- name: test_naming
|
|
rule: "Use pytest and name tests test_*.py and test_* functions."
|
|
examples:
|
|
- good: "tests/test_text_pipeline.py"
|
|
- bad: "tests/text_pipeline_test.py"
|
|
|
|
- name: fixtures_and_conftest
|
|
rule: "Place shared fixtures in tests/conftest.py or tests/fixtures/ for reuse."
|
|
examples:
|
|
- good: "use fixtures declared in tests/conftest.py"
|
|
|
|
- name: assert_raises
|
|
rule: "Explicitly assert expected exceptions with pytest.raises for invalid input."
|
|
examples:
|
|
- good: |
|
|
import pytest
|
|
|
|
def test_invalid_input():
|
|
with pytest.raises(ValueError):
|
|
function_under_test('bad')
|
|
|
|
enforcement_examples:
|
|
- "Run pytest in CI; fail if tests don't run or if there are regressions."
|
|
|