|
2 | 2 | """
|
3 | 3 | A pytest plugin for test driven data-wrangling with datatest.
|
4 | 4 |
|
5 |
| -This plugin is bundled with the ``datatest`` package however, |
6 |
| -it's developed separately as ``pytest_datatest``. |
7 |
| -
|
8 | 5 | IMPORTANT: Users of Datatest should only install ``datatest``
|
9 |
| -itself, not this separate package. But developers of the Datatest |
10 |
| -project should install both ``datatest`` and ``pytest_datatest``. |
11 |
| -
|
12 |
| -When both packages are installed, ``pytest_datatest`` is used |
13 |
| -in place of the bundled version. |
14 |
| -
|
15 |
| -This is done for a few reasons: |
16 |
| -
|
17 |
| -1. It's desirable for the plugin to follow the Pytest project's |
18 |
| - plugin submission guidelines. Even if this plugin is never |
19 |
| - submitted to the pytest-dev organisation, it's still good |
20 |
| - practice to follow the guidelines used by official plugins. |
21 |
| -2. Datatest should work as expected out-of-the-box and the extra |
22 |
| - code (a single script) is easy to bundle and it's so small |
23 |
| - that there is no impact on user experience. |
24 |
| -3. Datatest supports more version of Python than does Pytest |
25 |
| - or tox. It is helpful to keep the testing of the larger |
26 |
| - datatest project separate from the testing of the pytest |
27 |
| - plugin component. |
| 6 | +itself, not the ``pytest_datatest`` development package. |
| 7 | +
|
| 8 | +This plugin is bundled with the datatest however, it's developed |
| 9 | +separately. This is done for a few reasons: |
| 10 | +
|
| 11 | +1. Datatest should work as expected out-of-the-box. The plugin |
| 12 | + code is small enough that including it does not impact the |
| 13 | + user experience for non-pytest users. Offering the plugin as |
| 14 | + an optional dependency would add a step to the installation |
| 15 | + process for no real benefit. |
| 16 | +2. Following pytest's plugin submission guidelines seems like |
| 17 | + good practice for long-term maintenance. But the guidelines |
| 18 | + aren't easily implemented for datatest as a whole. Maintaining |
| 19 | + the plugin in a separate repository makes it easier to follow |
| 20 | + the guidelines without having to retool the main datatest |
| 21 | + project. |
| 22 | +3. Datatest supports more versions of Python than does Pytest |
| 23 | + or tox. The separate repository provides a clean separation |
| 24 | + between the two sets of test requirements. |
| 25 | +
|
| 26 | +Developers of the Datatest project should install both |
| 27 | +``datatest`` and ``pytest_datatest``. When both packages |
| 28 | +are installed, ``pytest_datatest`` is used in place of |
| 29 | +the bundled version. |
28 | 30 | """
|
29 | 31 |
|
30 | 32 | import re
|
|
0 commit comments