==> Building on manectric ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list ./ .SRCINFO 544 100% 0.00kB/s 0:00:00 544 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=2/4) PKGBUILD 980 100% 957.03kB/s 0:00:00 980 100% 957.03kB/s 0:00:00 (xfr#2, to-chk=1/4) python-pytest-mpi-0.6-5.log 328 100% 320.31kB/s 0:00:00 328 100% 320.31kB/s 0:00:00 (xfr#3, to-chk=0/4) sent 1,175 bytes received 88 bytes 842.00 bytes/sec total size is 1,720 speedup is 1.36 ==> Running extra-riscv64-build -- -d /home/felix/packages/riscv64-pkg-cache:/var/cache/pacman/pkg -l root31 on remote host... [?25l:: Synchronizing package databases... core downloading... extra downloading... :: Starting full system upgrade... there is nothing to do [?25h==> Building in chroot for [extra] (riscv64)... ==> Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [root31]...done ==> Making package: python-pytest-mpi 0.6-5 (Fri May 31 12:12:23 2024) ==> Retrieving sources...  -> Found pytest-mpi-0.6.tar.gz ==> Validating source files with sha256sums... pytest-mpi-0.6.tar.gz ... Passed ==> Making package: python-pytest-mpi 0.6-5 (Fri May 31 12:12:34 2024) ==> Checking runtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (4) New Version Net Change extra/python-iniconfig 2.0.0-5 0.04 MiB extra/python-packaging 24.0-1 0.50 MiB extra/python-pluggy 1.5.0-1 0.20 MiB extra/python-pytest 1:8.1.2-1 3.89 MiB Total Installed Size: 4.63 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-iniconfig... installing python-packaging... installing python-pluggy... installing python-pytest... [?25h==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (26) New Version Net Change Download Size extra/hwloc 2.9.1-1 1.31 MiB extra/libfabric 1.21.0-1 3.34 MiB core/libnl 3.9.0-1 1.73 MiB extra/libpciaccess 0.18.1-2 0.05 MiB extra/numactl 2.0.18-1 0.19 MiB extra/openpmix 5.0.2-1 3.34 MiB extra/prrte 3.0.5-3 1.66 MiB extra/python-autocommand 2.2.2-6 0.08 MiB extra/python-fastjsonschema 2.19.1-3 0.26 MiB extra/python-inflect 7.2.1-2 0.36 MiB extra/python-jaraco.context 4.3.0-4 0.03 MiB extra/python-jaraco.functools 4.0.1-1 0.07 MiB extra/python-jaraco.text 3.12.0-3 0.08 MiB extra/python-more-itertools 10.2.0-2 0.61 MiB extra/python-ordered-set 4.1.0-5 0.06 MiB extra/python-platformdirs 4.2.0-3 0.23 MiB extra/python-tomli 2.0.1-4 0.10 MiB extra/python-trove-classifiers 2024.5.22-1 0.12 MiB extra/python-typeguard 4.2.1-2 0.40 MiB extra/python-typing_extensions 4.12.0-1 0.41 MiB extra/python-validate-pyproject 0.16-1 0.31 MiB extra/openmpi 5.0.3-1 6.10 MiB extra/python-mpi4py 3.1.5-5 1.91 MiB 0.53 MiB extra/python-pytest-mpi 0.6-3.1 0.04 MiB 0.01 MiB extra/python-setuptools 1:69.0.3-6 4.39 MiB extra/python-sybil 6.0.3-2 0.30 MiB 0.06 MiB Total Download Size: 0.60 MiB Total Installed Size: 27.49 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-mpi4py-3.1.5-5-riscv64 downloading... python-sybil-6.0.3-2-any downloading... python-pytest-mpi-0.6-3.1-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing python-typing_extensions... installing python-typeguard... installing python-inflect... installing python-jaraco.text... installing python-ordered-set... installing python-platformdirs... installing python-tomli... installing python-fastjsonschema... installing python-trove-classifiers... installing python-validate-pyproject... installing python-setuptools... installing libpciaccess... installing hwloc... Optional dependencies for hwloc cairo libxml2 [installed] pciutils libx11 installing numactl... installing libfabric... installing libnl... installing openpmix... Optional dependencies for openpmix openpmix-docs: for documentation installing prrte... Optional dependencies for prrte openssh: for execution on remote hosts via plm_ssh_agent prrte-docs: for documentation installing openmpi... Optional dependencies for openmpi hip-runtime-amd: ROCm support gcc-fortran: fortran support openssh: for execution on remote hosts via plm_ssh_agent openucc: for UCC accelerated collectives installing python-mpi4py... installing python-sybil... installing python-pytest-mpi... [?25h==> Retrieving sources...  -> Found pytest-mpi-0.6.tar.gz ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Extracting pytest-mpi-0.6.tar.gz with bsdtar ==> Starting build()... running build running build_py creating build creating build/lib creating build/lib/pytest_mpi copying src/pytest_mpi/__init__.py -> build/lib/pytest_mpi copying src/pytest_mpi/_helpers.py -> build/lib/pytest_mpi copying src/pytest_mpi/_version.py -> build/lib/pytest_mpi UPDATING build/lib/pytest_mpi/_version.py set build/lib/pytest_mpi/_version.py to '0.6' ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.12.3, pytest-8.1.2, pluggy-1.5.0 -- /usr/bin/python cachedir: .pytest_cache rootdir: /build/python-pytest-mpi/src/pytest-mpi-0.6 plugins: typeguard-4.2.1 collecting ... collected 10 items tests/test_fixtures.py::test_mpi_file_name FAILED [ 10%] tests/test_fixtures.py::test_mpi_tmpdir FAILED [ 20%] tests/test_fixtures.py::test_mpi_tmp_path FAILED [ 30%] tests/test_markers.py::test_mpi FAILED [ 40%] tests/test_markers.py::test_mpi_with_mpi FAILED [ 50%] tests/test_markers.py::test_mpi_only_mpi FAILED [ 60%] tests/test_markers.py::test_mpi_skip PASSED [ 70%] tests/test_markers.py::test_mpi_skip_under_mpi FAILED [ 80%] tests/test_markers.py::test_mpi_xfail PASSED [ 90%] tests/test_markers.py::test_mpi_xfail_under_mpi FAILED [100%] =================================== FAILURES =================================== ______________________________ test_mpi_file_name ______________________________ mpi_testdir = , has_mpi4py = True def test_mpi_file_name(mpi_testdir, has_mpi4py): mpi_testdir.makepyfile(MPI_FILE_NAME_TEST_CODE) result = mpi_testdir.runpytest("--with-mpi", timeout=5) if has_mpi4py: > result.assert_outcomes(passed=1) /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_fixtures.py:59: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/_pytest/pytester.py:573: in parseoutcomes return self.parse_summary_nouns(self.outlines) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cls = , lines = [] @classmethod def parse_summary_nouns(cls, lines) -> Dict[str, int]: """Extract the nouns from a pytest terminal summary line. It always returns the plural noun for consistency:: ======= 1 failed, 1 passed, 1 warning, 1 error in 0.13s ==== Will return ``{"failed": 1, "passed": 1, "warnings": 1, "errors": 1}``. """ for line in reversed(lines): if rex_session_duration.search(line): outcomes = rex_outcome.findall(line) ret = {noun: int(count) for (count, noun) in outcomes} break else: > raise ValueError("Pytest terminal summary report not found") E ValueError: Pytest terminal summary report not found /usr/lib/python3.12/site-packages/_pytest/pytester.py:591: ValueError ----------------------------- Captured stdout call ----------------------------- running: mpirun -n 2 /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi_file_name0/runpytest-0 --with-mpi in: /tmp/pytest-of-builduser/pytest-0/test_mpi_file_name0 ----------------------------- Captured stderr call ----------------------------- ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_file_name0 -------------------------------------------------------------------------- prterun detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was: Process name: [prterun-arch-nspawn-3917109-2572@1,0] Exit code: 4 -------------------------------------------------------------------------- _______________________________ test_mpi_tmpdir ________________________________ mpi_testdir = , has_mpi4py = True def test_mpi_tmpdir(mpi_testdir, has_mpi4py): mpi_testdir.makepyfile(MPI_TMPDIR_TEST_CODE) result = mpi_testdir.runpytest("--with-mpi", timeout=5) if has_mpi4py: > result.assert_outcomes(passed=1) /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_fixtures.py:70: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/_pytest/pytester.py:573: in parseoutcomes return self.parse_summary_nouns(self.outlines) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cls = , lines = [] @classmethod def parse_summary_nouns(cls, lines) -> Dict[str, int]: """Extract the nouns from a pytest terminal summary line. It always returns the plural noun for consistency:: ======= 1 failed, 1 passed, 1 warning, 1 error in 0.13s ==== Will return ``{"failed": 1, "passed": 1, "warnings": 1, "errors": 1}``. """ for line in reversed(lines): if rex_session_duration.search(line): outcomes = rex_outcome.findall(line) ret = {noun: int(count) for (count, noun) in outcomes} break else: > raise ValueError("Pytest terminal summary report not found") E ValueError: Pytest terminal summary report not found /usr/lib/python3.12/site-packages/_pytest/pytester.py:591: ValueError ----------------------------- Captured stdout call ----------------------------- running: mpirun -n 2 /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi_tmpdir0/runpytest-0 --with-mpi in: /tmp/pytest-of-builduser/pytest-0/test_mpi_tmpdir0 ----------------------------- Captured stderr call ----------------------------- ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_tmpdir0 -------------------------------------------------------------------------- prterun detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was: Process name: [prterun-arch-nspawn-3917109-2584@1,0] Exit code: 4 -------------------------------------------------------------------------- ______________________________ test_mpi_tmp_path _______________________________ mpi_testdir = , has_mpi4py = True def test_mpi_tmp_path(mpi_testdir, has_mpi4py): mpi_testdir.makepyfile(MPI_TMP_PATH_TEST_CODE) result = mpi_testdir.runpytest("--with-mpi", timeout=5) if has_mpi4py: > result.assert_outcomes(passed=1) /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_fixtures.py:81: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/_pytest/pytester.py:573: in parseoutcomes return self.parse_summary_nouns(self.outlines) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cls = , lines = [] @classmethod def parse_summary_nouns(cls, lines) -> Dict[str, int]: """Extract the nouns from a pytest terminal summary line. It always returns the plural noun for consistency:: ======= 1 failed, 1 passed, 1 warning, 1 error in 0.13s ==== Will return ``{"failed": 1, "passed": 1, "warnings": 1, "errors": 1}``. """ for line in reversed(lines): if rex_session_duration.search(line): outcomes = rex_outcome.findall(line) ret = {noun: int(count) for (count, noun) in outcomes} break else: > raise ValueError("Pytest terminal summary report not found") E ValueError: Pytest terminal summary report not found /usr/lib/python3.12/site-packages/_pytest/pytester.py:591: ValueError ----------------------------- Captured stdout call ----------------------------- running: mpirun -n 2 /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi_tmp_path0/runpytest-0 --with-mpi in: /tmp/pytest-of-builduser/pytest-0/test_mpi_tmp_path0 ----------------------------- Captured stderr call ----------------------------- ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_tmp_path0 ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_tmp_path0 -------------------------------------------------------------------------- prterun detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was: Process name: [prterun-arch-nspawn-3917109-2596@1,1] Exit code: 4 -------------------------------------------------------------------------- ___________________________________ test_mpi ___________________________________ testdir = def test_mpi(testdir): testdir.makepyfile(MPI_TEST_CODE) result = testdir.runpytest() > result.assert_outcomes(skipped=4, passed=1) E AssertionError: assert {'passed': 3, 'skipped': 0, 'failed': 2, 'errors': 0, 'xpassed': 0, 'xfailed': 0} == {'passed': 1, 'skipped': 4, 'failed': 0, 'errors': 0, 'xpassed': 0, 'xfailed': 0} E  E Common items: E {'errors': 0, 'xfailed': 0, 'xpassed': 0} E Differing items: E {'failed': 2} != {'failed': 0} E {'passed': 3} != {'passed': 1} E {'skipped': 0} != {'skipped': 4} E  E Full diff: E { E 'errors': 0, E - 'failed': 0, E ? ^ E + 'failed': 2, E ? ^ E - 'passed': 1, E ? ^ E + 'passed': 3, E ? ^ E - 'skipped': 4, E ? ^ E + 'skipped': 0, E ? ^ E 'xfailed': 0, E 'xpassed': 0, E } /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_markers.py:63: AssertionError ----------------------------- Captured stdout call ----------------------------- running: /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi0/runpytest-0 --basetemp=/tmp/pytest-of-builduser/pytest-0/basetemp in: /tmp/pytest-of-builduser/pytest-0/test_mpi0 ============================= test session starts ============================== platform linux -- Python 3.12.3, pytest-8.1.2, pluggy-1.5.0 rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi0 plugins: typeguard-4.2.1 collected 5 items test_mpi.py .FF.. [100%] =================================== FAILURES =================================== _______________________________ test_size_min_2 ________________________________ @pytest.mark.mpi(min_size=2) def test_size_min_2(): from mpi4py import MPI comm = MPI.COMM_WORLD > assert comm.size >= 2 E assert 1 >= 2 E + where 1 = .size test_mpi.py:15: AssertionError _______________________________ test_size_min_4 ________________________________ @pytest.mark.mpi(min_size=4) def test_size_min_4(): from mpi4py import MPI comm = MPI.COMM_WORLD > assert comm.size >= 4 E assert 1 >= 4 E + where 1 = .size test_mpi.py:22: AssertionError =============================== warnings summary =============================== test_mpi.py:3 /tmp/pytest-of-builduser/pytest-0/test_mpi0/test_mpi.py:3: PytestUnknownMarkWarning: Unknown pytest.mark.mpi - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.mpi test_mpi.py:10 /tmp/pytest-of-builduser/pytest-0/test_mpi0/test_mpi.py:10: PytestUnknownMarkWarning: Unknown pytest.mark.mpi - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.mpi(min_size=2) test_mpi.py:17 /tmp/pytest-of-builduser/pytest-0/test_mpi0/test_mpi.py:17: PytestUnknownMarkWarning: Unknown pytest.mark.mpi - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.mpi(min_size=4) test_mpi.py:24 /tmp/pytest-of-builduser/pytest-0/test_mpi0/test_mpi.py:24: PytestUnknownMarkWarning: Unknown pytest.mark.mpi - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.mpi(2) -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED test_mpi.py::test_size_min_2 - assert 1 >= 2 FAILED test_mpi.py::test_size_min_4 - assert 1 >= 4 =================== 2 failed, 3 passed, 4 warnings in 1.39s ==================== ______________________________ test_mpi_with_mpi _______________________________ mpi_testdir = , has_mpi4py = True def test_mpi_with_mpi(mpi_testdir, has_mpi4py): mpi_testdir.makepyfile(MPI_TEST_CODE) result = mpi_testdir.runpytest("--with-mpi") if has_mpi4py: > result.assert_outcomes(**_fix_plural(passed=3, errors=1, skipped=1)) /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_markers.py:72: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/_pytest/pytester.py:573: in parseoutcomes return self.parse_summary_nouns(self.outlines) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cls = , lines = [] @classmethod def parse_summary_nouns(cls, lines) -> Dict[str, int]: """Extract the nouns from a pytest terminal summary line. It always returns the plural noun for consistency:: ======= 1 failed, 1 passed, 1 warning, 1 error in 0.13s ==== Will return ``{"failed": 1, "passed": 1, "warnings": 1, "errors": 1}``. """ for line in reversed(lines): if rex_session_duration.search(line): outcomes = rex_outcome.findall(line) ret = {noun: int(count) for (count, noun) in outcomes} break else: > raise ValueError("Pytest terminal summary report not found") E ValueError: Pytest terminal summary report not found /usr/lib/python3.12/site-packages/_pytest/pytester.py:591: ValueError ----------------------------- Captured stdout call ----------------------------- running: mpirun -n 2 /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi_with_mpi0/runpytest-0 --with-mpi in: /tmp/pytest-of-builduser/pytest-0/test_mpi_with_mpi0 ----------------------------- Captured stderr call ----------------------------- ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_with_mpi0 ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_with_mpi0 -------------------------------------------------------------------------- prterun detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was: Process name: [prterun-arch-nspawn-3917109-2612@1,0] Exit code: 4 -------------------------------------------------------------------------- ______________________________ test_mpi_only_mpi _______________________________ mpi_testdir = , has_mpi4py = True def test_mpi_only_mpi(mpi_testdir, has_mpi4py): mpi_testdir.makepyfile(MPI_TEST_CODE) result = mpi_testdir.runpytest("--only-mpi") if has_mpi4py: > result.assert_outcomes(**_fix_plural(passed=2, errors=1, skipped=2)) /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_markers.py:83: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/_pytest/pytester.py:573: in parseoutcomes return self.parse_summary_nouns(self.outlines) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cls = , lines = [] @classmethod def parse_summary_nouns(cls, lines) -> Dict[str, int]: """Extract the nouns from a pytest terminal summary line. It always returns the plural noun for consistency:: ======= 1 failed, 1 passed, 1 warning, 1 error in 0.13s ==== Will return ``{"failed": 1, "passed": 1, "warnings": 1, "errors": 1}``. """ for line in reversed(lines): if rex_session_duration.search(line): outcomes = rex_outcome.findall(line) ret = {noun: int(count) for (count, noun) in outcomes} break else: > raise ValueError("Pytest terminal summary report not found") E ValueError: Pytest terminal summary report not found /usr/lib/python3.12/site-packages/_pytest/pytester.py:591: ValueError ----------------------------- Captured stdout call ----------------------------- running: mpirun -n 2 /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi_only_mpi0/runpytest-0 --only-mpi in: /tmp/pytest-of-builduser/pytest-0/test_mpi_only_mpi0 ----------------------------- Captured stderr call ----------------------------- ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --only-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_only_mpi0 -------------------------------------------------------------------------- prterun detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was: Process name: [prterun-arch-nspawn-3917109-2624@1,1] Exit code: 4 -------------------------------------------------------------------------- ___________________________ test_mpi_skip_under_mpi ____________________________ mpi_testdir = def test_mpi_skip_under_mpi(mpi_testdir): mpi_testdir.makepyfile(MPI_SKIP_TEST_CODE) result = mpi_testdir.runpytest("--with-mpi") > result.assert_outcomes(skipped=1) /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_markers.py:101: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/_pytest/pytester.py:573: in parseoutcomes return self.parse_summary_nouns(self.outlines) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cls = , lines = [] @classmethod def parse_summary_nouns(cls, lines) -> Dict[str, int]: """Extract the nouns from a pytest terminal summary line. It always returns the plural noun for consistency:: ======= 1 failed, 1 passed, 1 warning, 1 error in 0.13s ==== Will return ``{"failed": 1, "passed": 1, "warnings": 1, "errors": 1}``. """ for line in reversed(lines): if rex_session_duration.search(line): outcomes = rex_outcome.findall(line) ret = {noun: int(count) for (count, noun) in outcomes} break else: > raise ValueError("Pytest terminal summary report not found") E ValueError: Pytest terminal summary report not found /usr/lib/python3.12/site-packages/_pytest/pytester.py:591: ValueError ----------------------------- Captured stdout call ----------------------------- running: mpirun -n 2 /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi_skip_under_mpi0/runpytest-0 --with-mpi in: /tmp/pytest-of-builduser/pytest-0/test_mpi_skip_under_mpi0 ----------------------------- Captured stderr call ----------------------------- ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_skip_under_mpi0 ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_skip_under_mpi0 -------------------------------------------------------------------------- prterun detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was: Process name: [prterun-arch-nspawn-3917109-2639@1,1] Exit code: 4 -------------------------------------------------------------------------- ___________________________ test_mpi_xfail_under_mpi ___________________________ mpi_testdir = , has_mpi4py = True def test_mpi_xfail_under_mpi(mpi_testdir, has_mpi4py): mpi_testdir.makepyfile(MPI_XFAIL_TEST_CODE) result = mpi_testdir.runpytest("--with-mpi") if has_mpi4py: > result.assert_outcomes(xfailed=1) /build/python-pytest-mpi/src/pytest-mpi-0.6/tests/test_markers.py:118: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/_pytest/pytester.py:573: in parseoutcomes return self.parse_summary_nouns(self.outlines) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cls = , lines = [] @classmethod def parse_summary_nouns(cls, lines) -> Dict[str, int]: """Extract the nouns from a pytest terminal summary line. It always returns the plural noun for consistency:: ======= 1 failed, 1 passed, 1 warning, 1 error in 0.13s ==== Will return ``{"failed": 1, "passed": 1, "warnings": 1, "errors": 1}``. """ for line in reversed(lines): if rex_session_duration.search(line): outcomes = rex_outcome.findall(line) ret = {noun: int(count) for (count, noun) in outcomes} break else: > raise ValueError("Pytest terminal summary report not found") E ValueError: Pytest terminal summary report not found /usr/lib/python3.12/site-packages/_pytest/pytester.py:591: ValueError ----------------------------- Captured stdout call ----------------------------- running: mpirun -n 2 /usr/bin/python -mpytest --basetemp=/tmp/pytest-of-builduser/pytest-0/test_mpi_xfail_under_mpi0/runpytest-0 --with-mpi in: /tmp/pytest-of-builduser/pytest-0/test_mpi_xfail_under_mpi0 ----------------------------- Captured stderr call ----------------------------- ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_xfail_under_mpi0 ERROR: usage: __main__.py [options] [file_or_dir] [file_or_dir] [...] __main__.py: error: unrecognized arguments: --with-mpi inifile: None rootdir: /tmp/pytest-of-builduser/pytest-0/test_mpi_xfail_under_mpi0 -------------------------------------------------------------------------- prterun detected that one or more processes exited with non-zero status, thus causing the job to be terminated. The first process to do so was: Process name: [prterun-arch-nspawn-3917109-2655@1,1] Exit code: 4 -------------------------------------------------------------------------- =========================== short test summary info ============================ FAILED tests/test_fixtures.py::test_mpi_file_name - ValueError: Pytest terminal summary report not found FAILED tests/test_fixtures.py::test_mpi_tmpdir - ValueError: Pytest terminal summary report not found FAILED tests/test_fixtures.py::test_mpi_tmp_path - ValueError: Pytest terminal summary report not found FAILED tests/test_markers.py::test_mpi - AssertionError: assert {'passed': 3, 'skipped': 0, 'failed': 2, 'errors': 0... FAILED tests/test_markers.py::test_mpi_with_mpi - ValueError: Pytest terminal summary report not found FAILED tests/test_markers.py::test_mpi_only_mpi - ValueError: Pytest terminal summary report not found FAILED tests/test_markers.py::test_mpi_skip_under_mpi - ValueError: Pytest terminal summary report not found FAILED tests/test_markers.py::test_mpi_xfail_under_mpi - ValueError: Pytest terminal summary report not found ========================= 8 failed, 2 passed in 25.34s ========================= ==> ERROR: A failure occurred in check().  Aborting... ==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/root31/build [?25h[?25hreceiving incremental file list python-pytest-mpi-0.6-5-riscv64-build.log python-pytest-mpi-0.6-5-riscv64-check.log sent 62 bytes received 3,094 bytes 2,104.00 bytes/sec total size is 27,257 speedup is 8.64