Skip to content

Commit

Permalink
Using posargs to pass tests as arguments to tests nox session (pyba…
Browse files Browse the repository at this point in the history
…mm-team#4334)

* Using posargs to pass tests as arguments to  nox session

Signed-off-by: Pradyot Ranjan <[email protected]>

* style: pre-commit fixes

* Adding info to docs

Signed-off-by: Pradyot Ranjan <[email protected]>

* style: pre-commit fixes

---------

Signed-off-by: Pradyot Ranjan <[email protected]>
Co-authored-by: Pradyot Ranjan <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Arjun Verma <[email protected]>
  • Loading branch information
4 people authored Aug 13, 2024
1 parent fdab3ef commit 9691d09
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 1 deletion.
5 changes: 5 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,11 @@ If you want to check integration tests as well as unit tests, type
```bash
nox -s tests
```
or, alternatively, you can use posargs to pass the path to the test to `nox`. For example:

```bash
nox -s tests -- tests/unit/test_plotting/test_quick_plot.py::TestQuickPlot::test_simple_ode_model
```

When you commit anything to PyBaMM, these checks will also be run automatically (see [infrastructure](#infrastructure)).

Expand Down
5 changes: 4 additions & 1 deletion noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,10 @@ def run_tests(session):
set_environment_variables(PYBAMM_ENV, session=session)
session.install("setuptools", silent=False)
session.install("-e", ".[all,dev,jax]", silent=False)
session.run("python", "-m", "pytest", "-m", "unit or integration")
specific_test_files = session.posargs if session.posargs else []
session.run(
"python", "-m", "pytest", *specific_test_files, "-m", "unit or integration"
)


@nox.session(name="docs")
Expand Down

0 comments on commit 9691d09

Please sign in to comment.