From 695b3a228632dc56764c054810cdae80126fc11d Mon Sep 17 00:00:00 2001 From: thoffman Date: Tue, 19 Nov 2024 10:50:23 +0100 Subject: [PATCH] adding easyconfigs: pytest-xdist-3.6.1-GCCcore-13.3.0.eb, pytest-8.3.3-GCCcore-13.3.0.eb --- .../pytest-xdist-3.6.1-GCCcore-13.3.0.eb | 64 +++++++++++++++++ .../p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb | 72 +++++++++++++++++++ 2 files changed, 136 insertions(+) create mode 100644 easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb create mode 100644 easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb diff --git a/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..254e2c6a8b9 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.6.1-GCCcore-13.3.0.eb @@ -0,0 +1,64 @@ +easyblock = 'PythonBundle' + +name = 'pytest-xdist' +version = '3.6.1' + +homepage = 'https://github.com/pytest-dev/pytest-xdist' +description = """xdist: pytest distributed testing plugin + +The pytest-xdist plugin extends pytest with some unique test execution modes: + + * test run parallelization: if you have multiple CPUs or hosts you + can use those for a combined test run. This allows to speed up + development or to use special resources of remote machines. + + * --looponfail: run your tests repeatedly in a subprocess. After + each run pytest waits until a file in your project changes and + then re-runs the previously failing tests. This is repeated + until all tests pass after which again a full run is + performed. + + * Multi-Platform coverage: you can specify different Python + interpreters or different platforms and run tests in parallel on + all of them. + +Before running tests remotely, pytest efficiently “rsyncs” your +program source code to the remote place. All test results are reported +back and displayed to your local terminal. You may specify different +Python versions and interpreters.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('pytest', '8.3.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('apipkg', '3.0.2', { + 'checksums': ['c7aa61a4f82697fdaa667e70af1505acf1f7428b1c27b891d204ba7a8a3c5e0d'], + }), + ('execnet', '2.1.1', { + 'checksums': ['5189b52c6121c24feae288166ab41b32549c7e2348652736540b9e6e7d4e72e3'], + }), + (name, version, { + 'modulename': 'xdist', + 'source_tmpl': 'pytest_xdist-%(version)s.tar.gz', + 'checksums': ['ead156a4db231eec769737f57668ef58a2084a34b2e55c4a8fa20d861107300d'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..0701b7af348 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest/pytest-8.3.3-GCCcore-13.3.0.eb @@ -0,0 +1,72 @@ +easyblock = 'PythonBundle' + +name = 'pytest' +version = '8.3.3' + +homepage = 'https://docs.pytest.org/en/latest/' +description = """The pytest framework makes it easy to write small, +readable tests, and can scale to support complex functional testing for +applications and libraries.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('hatchling', '1.24.2'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_LOWER_SOURCE]} + +# Note! Some of the file system related tests may fail on shared file systems. +# Notably TestPOSIXLocalPath.test_copy_stat_file, TestPOSIXLocalPath.test_copy_stat_dir +# and test_source_mtime_long_long are known to fail on GPFS +# Build with buildpath and tmpdir set to a local file system to avoid this +# or use --ignore-test-failures +_skip_tests = [ + 'testing/io/test_terminalwriter.py', + 'testing/test_terminal.py', + 'testing/test_debugging.py', + 'testing/test_config.py', + 'testing/test_helpconfig.py', +] +_ignore_tests = ' --ignore='.join(_skip_tests) + +exts_list = [ + ('setuptools-scm', '8.1.0', { + 'source_tmpl': 'setuptools_scm-%(version)s.tar.gz', + 'checksums': ['42dea1b65771cba93b7a515d65a65d8246e560768a66b9106a592c8e7f26c8a7'], + }), + ('flit-core', '3.10.1', { + 'source_tmpl': 'flit_core-%(version)s.tar.gz', + 'checksums': ['66e5b87874a0d6e39691f0e22f09306736b633548670ad3c09ec9db03c5662f7'], + }), + ('hypothesis', '6.119.0', { + 'checksums': ['ca441c6ef55d17f27f642fa08657e80f9c13d9da7ae191c8ad58fbc2f16acd1b'], + }), + ('elementpath', '4.6.0', { + 'checksums': ['ba46bf07f66774927727ade55022b6c435fac06b2523cb3cd7689a1884d33468'], + }), + ('xmlschema', '3.4.3', { + 'checksums': ['0c638dac81c7d6c9da9a8d7544402c48cffe7ee0e13cc47fc0c18794d1395dfb'], + }), + (name, version, { + 'checksums': ['70b98107bd648308a7952b06e6ca9a50bc660be218d53c257cc1fc94fda10181'], + }), +] + +sanity_check_commands = [ + "python -c 'import pytest'", + 'cd %%(builddir)s/%%(name)s/%%(name)s-%%(version)s && %%(installdir)s/bin/pytest --ignore=%s testing' + % _ignore_tests, +] + +sanity_pip_check = True + +moduleclass = 'lib'