doc/example/parametrize: a few fixes/improvements
Remove "Indirect" from a few section names -- not actually indirect. Also few minor updates to the related multipython.py example.
This commit is contained in:
parent
1de0923e83
commit
497a1d798a
|
@ -1,14 +1,13 @@
|
||||||
"""
|
"""Module containing a parametrized tests testing cross-python serialization
|
||||||
module containing a parametrized tests testing cross-python
|
via the pickle module."""
|
||||||
serialization via the pickle module.
|
|
||||||
"""
|
|
||||||
import shutil
|
import shutil
|
||||||
import subprocess
|
import subprocess
|
||||||
import textwrap
|
import textwrap
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
pythonlist = ["python3.5", "python3.6", "python3.7"]
|
|
||||||
|
pythonlist = ["python3.9", "python3.10", "python3.11"]
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture(params=pythonlist)
|
@pytest.fixture(params=pythonlist)
|
||||||
|
@ -43,7 +42,7 @@ class Python:
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
subprocess.check_call((self.pythonpath, str(dumpfile)))
|
subprocess.run((self.pythonpath, str(dumpfile)), check=True)
|
||||||
|
|
||||||
def load_and_is_true(self, expression):
|
def load_and_is_true(self, expression):
|
||||||
loadfile = self.picklefile.with_name("load.py")
|
loadfile = self.picklefile.with_name("load.py")
|
||||||
|
@ -63,7 +62,7 @@ class Python:
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
print(loadfile)
|
print(loadfile)
|
||||||
subprocess.check_call((self.pythonpath, str(loadfile)))
|
subprocess.run((self.pythonpath, str(loadfile)), check=True)
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize("obj", [42, {}, {1: 3}])
|
@pytest.mark.parametrize("obj", [42, {}, {1: 3}])
|
||||||
|
|
|
@ -483,8 +483,8 @@ argument sets to use for each test function. Let's run it:
|
||||||
FAILED test_parametrize.py::TestClass::test_equals[1-2] - assert 1 == 2
|
FAILED test_parametrize.py::TestClass::test_equals[1-2] - assert 1 == 2
|
||||||
1 failed, 2 passed in 0.12s
|
1 failed, 2 passed in 0.12s
|
||||||
|
|
||||||
Indirect parametrization with multiple fixtures
|
Parametrization with multiple fixtures
|
||||||
--------------------------------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
Here is a stripped down real-life example of using parametrized
|
Here is a stripped down real-life example of using parametrized
|
||||||
testing for testing serialization of objects between different python
|
testing for testing serialization of objects between different python
|
||||||
|
@ -509,8 +509,8 @@ Running it results in some skips if we don't have all the python interpreters in
|
||||||
SKIPPED [9] multipython.py:69: 'python3.7' not found
|
SKIPPED [9] multipython.py:69: 'python3.7' not found
|
||||||
27 skipped in 0.12s
|
27 skipped in 0.12s
|
||||||
|
|
||||||
Indirect parametrization of optional implementations/imports
|
Parametrization of optional implementations/imports
|
||||||
--------------------------------------------------------------------
|
---------------------------------------------------
|
||||||
|
|
||||||
If you want to compare the outcomes of several implementations of a given
|
If you want to compare the outcomes of several implementations of a given
|
||||||
API, you can write test functions that receive the already imported implementations
|
API, you can write test functions that receive the already imported implementations
|
||||||
|
|
Loading…
Reference in New Issue