[Pytest Tooling] Eliminate spurious Pytest warnings about unregistered marks

Open
#2,745 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
python

Research direction

Start by reviewing the Python exercise test layout, including the example dicts_test.py, and the pytest documentation on registering marks. Compare whether pytest.ini or pyproject.toml is appropriate for each exercise. Done means the test suites no longer emit PytestUnknownMarkWarning for the task mark.

Written by the indexing model from the issue text.

Description

bug 🐛 on hold ✋🏽 smolder🍲

When running the test suites for a Python exercise in a local environment, Pytest generates a set of warnings because each of the tests is annotated (decorated) with @pytest.mark.task. Because task isn't registered, the Pytest output includes lines such as

dicts_test.py:50
  /Users/xyz/Exercism/python/inventory-management/dicts_test.py:50: PytestUnknownMarkWarning: Unknown pytest.mark.task - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/mark.html
    @pytest.mark.task(taskno=4)

This output is noisy and of little value to the developer.

Would it be reasonable to add a pytest.ini or pyproject.toml file as described in the link above to each of the exercises?

Dominant language
Python
Stars
2.5k
Forks
1.5k
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from exercism/python

All issues in exercism/python

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.