From 729e4062949eba5c3bb581add1a9190ff0c5d4ba Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Sun, 31 Aug 2025 20:42:40 +0200 Subject: [PATCH] Reworked UnitTesting. --- .github/workflows/UnitTesting.yml | 9 +- doc/JobTemplate/AllInOne/CompletePipeline.rst | 131 +++- .../Documentation/LaTeXDocumentation.rst | 2 +- .../Documentation/SphinxDocumentation.rst | 6 +- .../Setup/ExtractConfiguration.rst | 4 +- doc/JobTemplate/Setup/Parameters.rst | 10 +- doc/JobTemplate/Setup/PrepareJob.rst | 4 +- doc/JobTemplate/Testing/UnitTesting.rst | 698 ++++++++++++++++-- doc/_static/pyTooling-Actions-UnitTesting.png | Bin 0 -> 156375 bytes doc/conf.py | 1 + doc/index.rst | 2 +- 11 files changed, 741 insertions(+), 126 deletions(-) create mode 100644 doc/_static/pyTooling-Actions-UnitTesting.png diff --git a/.github/workflows/UnitTesting.yml b/.github/workflows/UnitTesting.yml index 894b33a..c9fba10 100644 --- a/.github/workflows/UnitTesting.yml +++ b/.github/workflows/UnitTesting.yml @@ -85,12 +85,12 @@ on: default: '' type: string tests_directory: - description: 'Path to the directory containing tests (relative to root_directory).' + description: 'Path to the directory containing tests (relative from root_directory).' required: false default: 'tests' type: string unittest_directory: - description: 'Path to the directory containing unit tests (relative to tests_directory).' + description: 'Path to the directory containing unit tests (relative from tests_directory).' required: false default: 'unit' type: string @@ -127,7 +127,7 @@ on: coverage_report_json_filename: description: 'Filename how the coverage report in JSON format will be named.' required: false - default: 'report/coverage/coverage.json' + default: 'coverage.json' type: string coverage_report_html_directory: description: 'Directory where the coverage report in HTML format will be generated.' @@ -349,7 +349,7 @@ jobs: if: ( matrix.system == 'ubuntu' || matrix.system == 'ubuntu-arm' ) && inputs.ubuntu_before_script != '' run: ${{ inputs.ubuntu_before_script }} - # Windows before script + # TODO: Windows before script - name: 🪟🟦 MinGW64 before scripts if: matrix.system == 'msys2' && matrix.runtime == 'MINGW64' && inputs.mingw64_before_script != '' @@ -361,6 +361,7 @@ jobs: # Run pytests + # TODO: allow configuration of pytest_args - name: ✅ Run unit tests (Ubuntu/macOS) id: pytest_bash if: ( matrix.system != 'windows' && matrix.system != 'windows-arm' ) diff --git a/doc/JobTemplate/AllInOne/CompletePipeline.rst b/doc/JobTemplate/AllInOne/CompletePipeline.rst index a42b1c3..7bef2cb 100644 --- a/doc/JobTemplate/AllInOne/CompletePipeline.rst +++ b/doc/JobTemplate/AllInOne/CompletePipeline.rst @@ -167,6 +167,28 @@ It can be used for simple Python packages as well as namespace packages. * :pypi:`tomli` * :ref:`pyTooling/Actions/.github/workflows/UnitTesting.yml ` + + * :gh:`actions/checkout` + * :gh:`msys2/setup-msys2` + * :gh:`actions/setup-python` + * :gh:`pyTooling/download-artifact` + + * :gh:`actions/download-artifact` + + * :gh:`pyTooling/upload-artifact` + + * :gh:`actions/upload-artifact` + + * apt: Packages specified via :ref:`JOBTMPL/UnitTesting/Input/apt` parameter. + * homebrew: Packages specified via :ref:`JOBTMPL/UnitTesting/Input/brew` parameter. + * MSYS2: Packages specified via :ref:`JOBTMPL/UnitTesting/Input/pacboy` parameter. + * pip + + * :pypi:`wheel` + * :pypi:`tomli` + * Python packages specified via :ref:`JOBTMPL/UnitTesting/Input/requirements` or + :ref:`JOBTMPL/UnitTesting/Input/mingw_requirements` parameter. + * :ref:`pyTooling/Actions/.github/workflows/ApplicationTesting.yml ` * :ref:`pyTooling/Actions/.github/workflows/CheckDocumentation.yml ` * :ref:`pyTooling/Actions/.github/workflows/StaticTypeCheck.yml ` @@ -174,7 +196,40 @@ It can be used for simple Python packages as well as namespace packages. * :ref:`pyTooling/Actions/.github/workflows/PublishTestResults.yml ` * :ref:`pyTooling/Actions/.github/workflows/PublishCoverageResults.yml ` * :ref:`pyTooling/Actions/.github/workflows/SphinxDocumentation.yml ` + + * :gh:`actions/checkout` + * :gh:`actions/setup-python` + * :gh:`pyTooling/download-artifact` + + * :gh:`actions/download-artifact` + + * :gh:`pyTooling/upload-artifact` + + * :gh:`actions/upload-artifact` + + * apt + + * `graphviz `__ + + * pip + + * :pypi:`wheel` + * Python packages specified via :ref:`JOBTMPL/SphinxDocumentation/Input/requirements` parameter. + * :ref:`pyTooling/Actions/.github/workflows/LaTeXDocumentation.yml ` + + * :gh:`pyTooling/download-artifact` + + * :gh:`actions/download-artifact` + + * :gh:`pyTooling/upload-artifact` + + * :gh:`actions/upload-artifact` + + * :gh:`addnab/docker-run-action` + + * :dockerhub:`pytooling/miktex ` + * :ref:`pyTooling/Actions/.github/workflows/PublishToGitHubPages.yml ` * :ref:`pyTooling/Actions/.github/workflows/PublishOnPyPI.yml ` * :ref:`pyTooling/Actions/.github/workflows/TagReleaseCommit.yml ` @@ -193,7 +248,7 @@ It can be used for simple Python packages as well as namespace packages. Instantiation ************* -The following instantiation example creates a job ``Params`` derived from job template ``Parameters`` version ``@r5``. +The following instantiation example creates a ``Params`` job derived from job template ``Parameters`` version ``@r5``. It only requires a `name` parameter to create the artifact names. .. code-block:: yaml @@ -218,45 +273,45 @@ Parameter Summary .. rubric:: Goto :ref:`input parameters ` -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| Parameter Name | Required | Type | Default | -+=====================================================================+==========+==========+=================================================+ -| :ref:`JOBTMPL/CompletePipeline/Input/package_namespace` | no | string | ``''`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/package_name` | yes | string | — — — — | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version` | no | string | ``'3.13'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version_list` | no | string | ``'3.9 3.10 3.11 3.12 3.13'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/unittest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/unittest_include_list` | no | string | ``''`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/unittest_exclude_list` | no | string | ``'windows-arm:3.9 windows-arm:3.10'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| Parameter Name | Required | Type | Default | ++=====================================================================+==========+==========+===================================================+ +| :ref:`JOBTMPL/CompletePipeline/Input/package_namespace` | no | string | ``''`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/package_name` | yes | string | — — — — | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version` | no | string | ``'3.13'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/unittest_python_version_list` | no | string | ``'3.9 3.10 3.11 3.12 3.13'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/unittest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/unittest_include_list` | no | string | ``''`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/unittest_exclude_list` | no | string | ``'windows-arm:3.9 windows-arm:3.10'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ | :ref:`JOBTMPL/CompletePipeline/Input/unittest_disable_list` | no | string | ``'windows-arm:pypy-3.10 windows-arm:pypy-3.11'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version` | no | string | ``'3.13'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version_list` | no | string | ``''`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/apptest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/apptest_include_list` | no | string | ``''`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/apptest_exclude_list` | no | string | ``'windows-arm:3.9 windows-arm:3.10'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version` | no | string | ``'3.13'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/apptest_python_version_list` | no | string | ``''`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/apptest_system_list` | no | string | ``'ubuntu windows macos macos-arm ucrt64'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/apptest_include_list` | no | string | ``''`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/apptest_exclude_list` | no | string | ``'windows-arm:3.9 windows-arm:3.10'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ | :ref:`JOBTMPL/CompletePipeline/Input/apptest_disable_list` | no | string | ``'windows-arm:pypy-3.10 windows-arm:pypy-3.11'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/codecov` | no | string | ``'false'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/codacy` | no | string | ``'false'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/dorny` | no | string | ``'false'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ -| :ref:`JOBTMPL/CompletePipeline/Input/cleanup` | no | string | ``'true'`` | -+---------------------------------------------------------------------+----------+----------+-------------------------------------------------+ ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/codecov` | no | string | ``'false'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/codacy` | no | string | ``'false'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/dorny` | no | string | ``'false'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ +| :ref:`JOBTMPL/CompletePipeline/Input/cleanup` | no | string | ``'true'`` | ++---------------------------------------------------------------------+----------+----------+---------------------------------------------------+ .. rubric:: Goto :ref:`secrets ` diff --git a/doc/JobTemplate/Documentation/LaTeXDocumentation.rst b/doc/JobTemplate/Documentation/LaTeXDocumentation.rst index ac308ee..9f55521 100644 --- a/doc/JobTemplate/Documentation/LaTeXDocumentation.rst +++ b/doc/JobTemplate/Documentation/LaTeXDocumentation.rst @@ -40,7 +40,7 @@ The ``LatexDocumentation`` job template ................ Instantiation ************* -The following instantiation example creates a job `Params` derived from job template `Parameters` version `r0`. It only +The following instantiation example creates a ``Params`` job derived from job template ``Parameters`` version ``@r5``. It only requires a `name` parameter to create the artifact names. .. code-block:: yaml diff --git a/doc/JobTemplate/Documentation/SphinxDocumentation.rst b/doc/JobTemplate/Documentation/SphinxDocumentation.rst index 94a8ee2..466ecee 100644 --- a/doc/JobTemplate/Documentation/SphinxDocumentation.rst +++ b/doc/JobTemplate/Documentation/SphinxDocumentation.rst @@ -46,7 +46,7 @@ The ``SphinxDocumentation`` job template .......... * pip * :pypi:`wheel` - * Python packages specified via :ref:`JOBTMPL/SphinxDocumentation/Input/requirements`. + * Python packages specified via :ref:`JOBTMPL/SphinxDocumentation/Input/requirements` parameter. .. _JOBTMPL/SphinxDocumentation/Instantiation: @@ -54,7 +54,7 @@ The ``SphinxDocumentation`` job template .......... Instantiation ************* -The following instantiation example creates a job `Params` derived from job template `Parameters` version `r0`. It only +The following instantiation example creates a ``Params`` job derived from job template ``Parameters`` version ``@r5``. It only requires a `name` parameter to create the artifact names. .. code-block:: yaml @@ -177,7 +177,7 @@ requirements :Possible Values: Any valid list of parameters for ``pip install``. |br| Either a requirements file can be referenced using ``'-r path/to/requirements.txt'``, or a list of packages can be specified using a space separated list like ``'Sphinx sphinx_rtd_theme sphinxcontrib-mermaid'``. -:Description: Python dependencies to be installed through pip. +:Description: Python dependencies to be installed through *pip*. .. _JOBTMPL/SphinxDocumentation/Input/doc_directory: diff --git a/doc/JobTemplate/Setup/ExtractConfiguration.rst b/doc/JobTemplate/Setup/ExtractConfiguration.rst index 874cb03..2771040 100644 --- a/doc/JobTemplate/Setup/ExtractConfiguration.rst +++ b/doc/JobTemplate/Setup/ExtractConfiguration.rst @@ -42,7 +42,7 @@ The ``ExtractConfiguration`` job template is a ..... Instantiation ************* -The following instantiation example creates a job ``ConfigParams`` derived from job template ``ExtractConfiguration`` +The following instantiation example creates a ``ConfigParams`` job derived from job template ``ExtractConfiguration`` version ``@r5``. It only requires a :ref:`JOBTMPL/ExtractConfiguration/Input/package_name` parameter to extract unit test (pytest) and code coverage (Coverage.py) settings. @@ -594,7 +594,7 @@ coverage_report_json output = "report/coverage/coverage.json" -.. _JOBTMPL/LatexDocumentation/Optimizations: +.. _JOBTMPL/ExtractConfiguration/Optimizations: Optimizations ************* diff --git a/doc/JobTemplate/Setup/Parameters.rst b/doc/JobTemplate/Setup/Parameters.rst index 2a318d6..b3f9894 100644 --- a/doc/JobTemplate/Setup/Parameters.rst +++ b/doc/JobTemplate/Setup/Parameters.rst @@ -37,7 +37,7 @@ Simple Example .. grid-item:: :columns: 5 - The following instantiation example creates a job ``Params`` derived from job template ``Parameters`` version + The following instantiation example creates a ``Params`` job derived from job template ``Parameters`` version ``@r5``. It only requires a :ref:`JOBTMPL/Parameters/Input/package_name` parameter to create the artifact names. .. grid-item:: @@ -74,15 +74,15 @@ Complex Example The following instantiation example creates 3 jobs from the same template, but with differing input parameters. - The first job ``UnitTestingParams`` might be used to create a job matrix of unit tests. It creates the cross of + The first ``UnitTestingParams`` job might be used to create a job matrix of unit tests. It creates the cross of default systems (Windows, Ubuntu, macOS, macOS-ARM, MinGW64, UCRT64) and the given list of Python versions including some mypy versions. In addition a list of excludes (marked as :deletion:`deletions`) and includes (marked as :addition:`additions`) is handed over resulting in the following combinations. - The second job ``PerformanceTestingParams`` might be used to create a job matrix for performance tests. Here a + The second ``PerformanceTestingParams`` job might be used to create a job matrix for performance tests. Here a pipeline might be limited to the latest two Python versions on a selected list of platforms. - The third job ``PlatformTestingParams`` might be used to create a job matrix for platform compatibility tests. + The third ``PlatformTestingParams`` job might be used to create a job matrix for platform compatibility tests. Here a pipeline might be limited to the latest Python version, but all available platforms. .. grid-item:: @@ -742,7 +742,7 @@ params * ``params['doc']`` |rarr| ``artifact_names['documentation_html']`` -.. _JOBTMPL/LatexDocumentation/Optimizations: +.. _JOBTMPL/Parameters/Optimizations: Optimizations ************* diff --git a/doc/JobTemplate/Setup/PrepareJob.rst b/doc/JobTemplate/Setup/PrepareJob.rst index 06f0739..828e3e9 100644 --- a/doc/JobTemplate/Setup/PrepareJob.rst +++ b/doc/JobTemplate/Setup/PrepareJob.rst @@ -55,7 +55,7 @@ The job template generates various output parameters derived from Instantiation ************* -The following instantiation example creates a job ``Prepare`` derived from job template ``PrepareJob`` version ``@r5``. +The following instantiation example creates a ``Prepare`` job derived from job template ``PrepareJob`` version ``@r5``. In a default usecase, no input parameters need to be specified for the job template assuming a main-branch and release-branch called ``main``, a development-branch called ``dev``, as well as semantic versioning for tags and pull-request titles. @@ -451,7 +451,7 @@ pr_number empty string ``''``. -.. _JOBTMPL/LatexDocumentation/Optimizations: +.. _JOBTMPL/PrepareJob/Optimizations: Optimizations ************* diff --git a/doc/JobTemplate/Testing/UnitTesting.rst b/doc/JobTemplate/Testing/UnitTesting.rst index a8ac926..17865b1 100644 --- a/doc/JobTemplate/Testing/UnitTesting.rst +++ b/doc/JobTemplate/Testing/UnitTesting.rst @@ -9,19 +9,61 @@ XML format is optionally uploaded as an artifact. Configuration options to ``pytest`` should be given via section ``[tool.pytest.ini_options]`` in a ``pyproject.toml`` file. -**Behavior:** +.. topic:: Features -1. Checkout repository -2. Setup Python and install dependencies -3. Run unit tests using ``pytest``. -4. Upload junit test summary as an artifact + * Execute unit tests using `pytest `__. -**Dependencies:** + * Provide unit test results as JUnit XML file (pyTest XML dialect). -* :gh:`actions/checkout` -* :gh:`msys2/setup-msys2` -* :gh:`actions/setup-python` -* :gh:`actions/upload-artifact` + * Collect code coverage using `Coverage.py `__. + + * Provide code coverage results as pytest SQLite database. + * Provide code coverage results as Cobertura XML file. + * Provide code coverage results as pytest JSON file. + * Provide code coverage results as HTML report. + +.. topic:: Behavior: + + .. todo:: UnitTesting:Behavior needs documentation. + + 1. Checkout repository. + 2. Setup environment and install dependencies (``apt``, ``homebrew``, ``pacman``, ...). + 3. Setup Python and install dependencies (``pip``). + 4. Run instructions from ``*_before_script`` parameter. + 5. Run unit tests using *pytest* and if enabled in combination with *Coverage.py*. + 6. Convert gathered results to other formats. + 7. Upload results (test reports, code coverage reports, ...) as an artifacts. + +.. topic:: Job Execution + + .. image:: ../../_static/pyTooling-Actions-UnitTesting.png + :width: 600px + +.. topic:: Dependencies + + * :gh:`actions/checkout` + * :gh:`msys2/setup-msys2` + * :gh:`actions/setup-python` + * :gh:`pyTooling/download-artifact` + + * :gh:`actions/download-artifact` + + * :gh:`pyTooling/upload-artifact` + + * :gh:`actions/upload-artifact` + + * apt: Packages specified via :ref:`JOBTMPL/UnitTesting/Input/apt` parameter. + * homebrew: Packages specified via :ref:`JOBTMPL/UnitTesting/Input/brew` parameter. + * MSYS2: Packages specified via :ref:`JOBTMPL/UnitTesting/Input/pacboy` parameter. + * pip + + * :pypi:`wheel` + * :pypi:`tomli` + * Python packages specified via :ref:`JOBTMPL/UnitTesting/Input/requirements` or + :ref:`JOBTMPL/UnitTesting/Input/mingw_requirements` parameter. + + +.. _JOBTMPL/UnitTesting/Instantiation: Instantiation ************* @@ -29,6 +71,43 @@ Instantiation Simple Example ============== +The following instantiation example creates a ``UnitTesting`` job derived from job template ``UnitTesting`` version +`@r5`. For providing the job matrix as a JSON string, the :ref:`JOBTMPL/Parameters` job template is used. Additionally, +the job needs configuration settings, which are stored in :file:`pyproject.toml`. Instead of duplicating these settings, +the :ref:`JOBTMPL/ExtractConfiguration` job template is used to extract these settings. + +.. code-block:: yaml + + name: Pipeline + + on: + push: + workflow_dispatch: + + jobs: + ConfigParams: + uses: pyTooling/Actions/.github/workflows/ExtractConfiguration.yml@r5 + with: + package_name: myPackage + + UnitTestingParams: + uses: pyTooling/Actions/.github/workflows/Parameters.yml@r5 + with: + package_name: myPackage + + UnitTesting: + uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@r5 + needs: + - ConfigParams + - UnitTestingParams + with: + jobs: ${{ needs.UnitTestingParams.outputs.python_jobs }} + requirements: "-r tests/unit/requirements.txt" + unittest_report_xml_directory: ${{ needs.ConfigParams.outputs.unittest_report_xml_directory }} + unittest_report_xml_filename: ${{ needs.ConfigParams.outputs.unittest_report_xml_filename }} + unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }} + coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }} + .. code-block:: yaml jobs: @@ -44,116 +123,595 @@ Simple Example artifact: ${{ fromJson(needs.Params.outputs.artifact_names).unittesting }} -Complex Example -=============== +.. seealso:: -.. code-block:: yaml + :ref:`JOBTMPL/Parameters` + ``Parameters`` is usually used to pre-compute the job matrix as a JSON string with all system |times| environment + |times| Python version combinations. + :ref:`JOBTMPL/PublishTestResults` + ``PublishTestResults`` can be used to merge all JUnit test reports into one file. + :ref:`JOBTMPL/PublishCoverageResults` + ``PublishCoverageResults`` can be used to merge all code coverage reports into one file. - TBD -Parameters -********** +.. _JOBTMPL/UnitTesting/Parameters: + +Parameter Summary +***************** + +.. rubric:: Goto :ref:`input parameters ` + ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| Parameter Name | Required | Type | Default | ++=========================================================================+==========+==========+===================================================================+ +| :ref:`JOBTMPL/UnitTesting/Input/jobs` | yes | string | — — — — | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/apt` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/brew` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/pacboy` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/requirements` | no | string | ``'-r tests/requirements.txt'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/mingw_requirements` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/macos_before_script` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/macos_arm_before_script` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/ubuntu_before_script` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/mingw64_before_script` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/ucrt64_before_script` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/root_directory` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/tests_directory` | no | string | ``'tests'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/unittest_directory` | no | string | ``'unit'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/unittest_report_xml_directory` | no | string | ``'report/unit'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/unittest_report_xml_filename` | no | string | ``'TestReportSummary.xml'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_config` | no | string | ``'pyproject.toml'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_report_xml_directory` | no | string | ``'report/coverage'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_report_xml_filename` | no | string | ``'coverage.xml'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_report_json_directory` | no | string | ``'report/coverage'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_report_json_filename` | no | string | ``'coverage.json'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_report_html_directory` | no | string | ``'report/coverage/html'`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/unittest_xml_artifact` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/unittest_html_artifact` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_sqlite_artifact` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_xml_artifact` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_json_artifact` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ +| :ref:`JOBTMPL/UnitTesting/Input/coverage_html_artifact` | no | string | ``''`` | ++-------------------------------------------------------------------------+----------+----------+-------------------------------------------------------------------+ + +.. rubric:: Goto :ref:`secrets ` + +This job template needs no secrets. + +.. rubric:: Goto :ref:`output parameters ` + +This job template has no output parameters. + + +.. _JOBTMPL/UnitTesting/Inputs: + +Input Parameters +**************** + +.. _JOBTMPL/UnitTesting/Input/jobs: jobs ==== -+----------------+----------+----------+--------------+ -| Parameter Name | Required | Type | Default | -+================+==========+==========+==============+ -| jobs | yes | string | — — — — | -+----------------+----------+----------+--------------+ +:Type: string +:Required: yes +:Default Value: — — — — +:Possible Values: A JSON string with an array of dictionaries with the following key-value pairs: -JSON list with environment fields, telling the system and Python versions to run tests with. + * ``sysicon`` - icon to display + * ``system`` - name of the system + * ``runs-on`` - virtual machine image and base operating system + * ``runtime`` - name of the runtime environment if not running natively on the VM image + * ``shell`` - name of the shell + * ``pyicon`` - icon for CPython or pypy + * ``python`` - Python version + * ``envname`` - full name of the selected environment +:Description: A JSON encoded job matrix to run multiple Python job variations. -requirements -============ +.. _JOBTMPL/UnitTesting/Input/apt: -+----------------+----------+----------+---------------------------------+ -| Parameter Name | Required | Type | Default | -+================+==========+==========+=================================+ -| requirements | optional | string | ``-r tests/requirements.txt`` | -+----------------+----------+----------+---------------------------------+ +apt +=== -Python dependencies to be installed through pip. +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid list of parameters for ``apt install``. |br| + Packages are specified as a space separated list like ``'graphviz curl gzip'``. +:Description: Additional Ubuntu system dependencies to be installed through *apt*. +:Example: + .. code-block:: yaml + UnitTests: + ... + with: + apt: >- + graphviz + curl + gzip + +.. _JOBTMPL/UnitTesting/Input/brew: + +brew +==== + +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid list of parameters for ``brew install``. |br| + Packages are specified as a space separated list. +:Description: Additional macOS system dependencies to be installed through *brew*. + + +.. _JOBTMPL/UnitTesting/Input/pacboy: pacboy ====== -+----------------+----------+----------+-----------+ -| Parameter Name | Required | Type | Default | -+================+==========+==========+===========+ -| pacboy | optional | string | ``""`` | -+----------------+----------+----------+-----------+ +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid list of parameters for ``pacboy``. |br| + Packages are specified as a space separated list like ``'python-lxml:p python-numpy:p'``. +:Description: Additional MSYS2 system dependencies to be installed through *pacboy* (*pacman*). |br| + Usually, Python packages start with ``python-``. The suffix ``:p`` ensures pacboy figures out the + correct package repository prefix for MinGW64, UCRT64, ... -Additional MSYS2 dependencies to be installed through pacboy (pacman). + .. note:: -Internally, a workflow step reads the requirements file for Python and compares requested packages with a list of -packages that should be installed through pacman/pacboy compared to installation via pip. These are mainly core packages -or packages with embedded C code. + Internally, a dedicated workflow step reads the :ref:`JOBTMPL/UnitTesting/Input/requirements` file + for Python and compares requested packages with a list of packages that should be installed through + *pacman*/*pacboy* compared to installation via *pip*. These are mainly core packages or packages + with embedded C code. |br| + The list of identified packages is handed over to *pacboy* for preinstallation. Otherwise *pip* + will later raise an error. |br| + The packages listed by this parameter will be installed in addition to the identified packages. -.. code-block:: yaml + .. attention:: - pacboy: >- - python-lxml:p + Ensure your Python requirements match the available version from MSYS2 packages list, otherwise + if your :file:`requirements.txt` requests a newer version then provided by MSYS2, such a dependency + will fail. +:Example: + .. code-block:: yaml + UnitTests: + ... + with: + pacboy: >- + python-lxml:p +:Packages: The following list of Python packages is identified to be installed via *pacboy*: + + * :ucrt64:`python-coverage` |rarr| :pypi:`coverage` + * :ucrt64:`igraph` |rarr| :pypi:`igraph` + * :ucrt64:`python-lxml` |rarr| :pypi:`lxml` + * :ucrt64:`python-markupsafe` |rarr| :pypi:`markupsafe` + * :ucrt64:`python-numpy` |rarr| :pypi:`numpy` + * :ucrt64:`python-pip` |rarr| :pypi:`pip` + * :ucrt64:`python-pyaml` |rarr| :pypi:`pyaml` + * :ucrt64:`python-ruamel-yaml` |rarr| :pypi:`ruamel-yaml` + * :ucrt64:`python-wheel` |rarr| :pypi:`wheel` + * :ucrt64:`python-tomli` |rarr| :pypi:`tomli` + * :ucrt64:`python-types-pyyaml` |rarr| :pypi:`types.pyyaml` + + +.. _JOBTMPL/UnitTesting/Input/requirements: + +requirements +============ + +:Type: string +:Required: no +:Default Value: ``'-r tests/requirements.txt'`` +:Possible Values: Any valid list of parameters for ``pip install``. |br| + Either a requirements file can be referenced using ``'-r path/to/requirements.txt'``, or a list of + packages can be specified using a space separated list like ``'coverage pytest'``. +:Description: Python dependencies to be installed through *pip*. + + +.. _JOBTMPL/UnitTesting/Input/mingw_requirements: mingw_requirements ================== -+--------------------+----------+----------+----------+ -| Parameter Name | Required | Type | Default | -+====================+==========+==========+==========+ -| mingw_requirements | optional | string | ``""`` | -+--------------------+----------+----------+----------+ +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid list of parameters for ``pip install``. |br| + Either a requirements file can be referenced using ``'-r path/to/requirements.txt'``, or a list of + packages can be specified using a space separated list like ``'coverage pytest'``. +:Description: Override Python dependencies to be installed through *pip* in MSYS2 (MinGW64/UCRT64) only. -Override Python dependencies to be installed through pip on MSYS2 (MINGW64) only. +.. _JOBTMPL/UnitTesting/Input/macos_before_script: + +macos_before_script +=================== + +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid *Bash* instructions as single-line or multi-line string suitable for macOS (Intel platform). +:Description: These optional *Bash* instructions for macOS are executed after setting up the environment and + installing the platform specific dependencies and before running the unit test. + + +.. _JOBTMPL/UnitTesting/Input/macos_arm_before_script: + +macos_arm_before_script +======================= + +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid *Bash* instructions as single-line or multi-line string suitable for macOS (ARM platform). +:Description: These optional *Bash* instructions for macOS are executed after setting up the environment and + installing the platform specific dependencies and before running the unit test. + + +.. _JOBTMPL/UnitTesting/Input/ubuntu_before_script: + +ubuntu_before_script +==================== + +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid *Bash* instructions as single-line or multi-line string suitable for Ubuntu. +:Description: These optional *Bash* instructions for Ubuntu are executed after setting up the environment and + installing the platform specific dependencies and before running the unit test. + + +.. _JOBTMPL/UnitTesting/Input/mingw64_before_script: + +mingw64_before_script +===================== + +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid *Bash* instructions as single-line or multi-line string suitable for MinGW64 on Windows. +:Description: These optional *Bash* instructions for MinGW64 on Windows are executed after setting up the + environment and installing the platform specific dependencies and before running the unit test. + + +.. _JOBTMPL/UnitTesting/Input/ucrt64_before_script: + +ucrt64_before_script +==================== + +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid *Bash* instructions as single-line or multi-line string suitable for UCRT64 on Windows. +:Description: These optional *Bash* instructions for UCRT64 on Windows are executed after setting up the + environment and installing the platform specific dependencies and before running the unit test. + +.. hint:: + + The next parameters allow running different test kinds (unit tests, performance tests, platform tests, ...) with the + same job template, but isolated in sub-directories, thus pytest only discovers a subset of tests. The following code + blocks showcase how the job template uses these parameters and how it relates to a proposed directory structure. + + .. grid:: 3 + + .. grid-item:: + :columns: 5 + + .. card:: Relation between :ref:`JOBTMPL/UnitTesting/Input/root_directory`, :ref:`JOBTMPL/UnitTesting/Input/tests_directory` and :ref:`JOBTMPL/UnitTesting/Input/unittest_directory` + + .. code-block:: bash + + cd + cd ${root_directory} + + python -m \ + pytest -raP \ + --color=yes ..... \ + "${tests_directory}/${unittest_directory}" + + .. grid-item:: + :columns: 3 + + .. card:: Directory Structure + + .. code-block:: + + / + doc/ + myPackage/ + __init__.py + tests/ + unit/ + myTests.py + + .. grid-item:: + :columns: 3 + + .. card:: Example for Default Values + + .. code-block:: bash + + cd + cd . + + python -m \ + pytest -raP \ + --color=yes ..... \ + "tests/unit" + + +.. _JOBTMPL/UnitTesting/Input/root_directory: + +root_directory +============== + +:Type: string +:Required: no +:Default Value: ``''`` +:Possible Values: Any valid directory or sub-directory. +:Description: Working directory for running tests. |br| + Usually, this is the repository's root directory. Tests are called relatively from here. See + :ref:`JOBTMPL/UnitTesting/Input/tests_directory` and :ref:`JOBTMPL/UnitTesting/Input/unittest_directory`. + + +.. _JOBTMPL/UnitTesting/Input/tests_directory: tests_directory =============== -+-----------------+----------+----------+-----------+ -| Parameter Name | Required | Type | Default | -+=================+==========+==========+===========+ -| tests_directory | optional | string | ``tests`` | -+-----------------+----------+----------+-----------+ +:Type: string +:Required: no +:Default Value: ``'tests'`` +:Possible Values: Any valid directory or sub-directory. +:Description: Path to the directory containing tests (relative from :ref:`JOBTMPL/UnitTesting/Input/root_directory`). -Path to the directory containing tests (test working directory). +.. _JOBTMPL/UnitTesting/Input/unittest_directory: unittest_directory ================== -+--------------------+----------+----------+----------+ -| Parameter Name | Required | Type | Default | -+====================+==========+==========+==========+ -| unittest_directory | optional | string | ``unit`` | -+--------------------+----------+----------+----------+ - -Path to the directory containing unit tests (relative to tests_directory). +:Type: string +:Required: no +:Default Value: ``'unit'`` +:Possible Values: Any valid directory or sub-directory. +:Description: Path to the directory containing unit tests (relative from :ref:`JOBTMPL/UnitTesting/Input/tests_directory`). -artifact -======== +.. _JOBTMPL/UnitTesting/Input/unittest_report_xml_directory: -+----------------+----------+----------+----------+ -| Parameter Name | Required | Type | Default | -+================+==========+==========+==========+ -| artifact | optional | string | ``""`` | -+----------------+----------+----------+----------+ +unittest_report_xml_directory +============================= -Generate unit test report with junitxml and upload results as an artifact. +:Type: string +:Required: no +:Default Value: ``'report/unit'`` +:Possible Values: Any valid directory or sub-directory. +:Description: Directory or sub-directory where the unittest summary report in XML format will be saved. |br| + This path is configured in :file:`pyproject.toml` and can be extracted by :ref:`JOBTMPL/ExtractConfiguration`. +.. _JOBTMPL/UnitTesting/Input/unittest_report_xml_filename: + +unittest_report_xml_filename +============================ + +:Type: string +:Required: no +:Default Value: ``'TestReportSummary.xml'`` +:Possible Values: Any valid filename accepted by ``pytest ... --junitxml=${unittest_report_xml_filename}``. +:Description: Filename of the generated JUnit XML report. |br| + This filename is configured in :file:`pyproject.toml` and can be extracted by :ref:`JOBTMPL/ExtractConfiguration`. + + +.. _JOBTMPL/UnitTesting/Input/coverage_config: + +coverage_config +=============== + +:Type: string +:Required: no +:Default Value: ``'pyproject.toml'`` +:Possible Values: TBD + + +.. _JOBTMPL/UnitTesting/Input/coverage_report_xml_directory: + +coverage_report_xml_directory +============================= + +:Type: string +:Required: no +:Default Value: ``'report/coverage'`` +:Possible Values: Any valid directory or sub-directory. +:Description: Directory or sub-directory where the code covergae report in XML format will be saved. |br| + This path is configured in :file:`pyproject.toml` and can be extracted by :ref:`JOBTMPL/ExtractConfiguration`. + + +.. _JOBTMPL/UnitTesting/Input/coverage_report_xml_filename: + +coverage_report_xml_filename +============================ + +:Type: string +:Required: no +:Default Value: ``'coverage.xml'`` +:Possible Values: Any valid XML filename. +:Description: Filename of the generated code coverage report in Cobertura format. |br| + This filename is configured in :file:`pyproject.toml` and can be extracted by :ref:`JOBTMPL/ExtractConfiguration`. + + +.. _JOBTMPL/UnitTesting/Input/coverage_report_json_directory: + +coverage_report_json_directory +============================== + +:Type: string +:Required: no +:Default Value: ``'report/coverage'`` +:Possible Values: Any valid directory or sub-directory. +:Description: Directory or sub-directory where the code covergae report in JSON format will be saved. |br| + This path is configured in :file:`pyproject.toml` and can be extracted by :ref:`JOBTMPL/ExtractConfiguration`. + + +.. _JOBTMPL/UnitTesting/Input/coverage_report_json_filename: + +coverage_report_json_filename +============================= + +:Type: string +:Required: no +:Default Value: ``'coverage.json'`` +:Possible Values: Any valid JSON filename. +:Description: Filename of the generated code coverage report in Coverage.py JSON format. |br| + This filename is configured in :file:`pyproject.toml` and can be extracted by :ref:`JOBTMPL/ExtractConfiguration`. + + +.. _JOBTMPL/UnitTesting/Input/coverage_report_html_directory: + +coverage_report_html_directory +============================== + +:Type: string +:Required: no +:Default Value: ``'report/coverage/html'`` +:Possible Values: Any valid directory or sub-directory. +:Description: Directory or sub-directory where the code covergae report in HTML format will be saved. |br| + This path is configured in :file:`pyproject.toml` and can be extracted by :ref:`JOBTMPL/ExtractConfiguration`. + + +.. _JOBTMPL/UnitTesting/Input/unittest_xml_artifact: + +unittest_xml_artifact +===================== + +:Type: string +:Required: no +:Possible Values: Any valid artifact name. +:Description: Name of the artifact containing the unittest report summary in XML format. + + +.. _JOBTMPL/UnitTesting/Input/unittest_html_artifact: + +unittest_html_artifact +====================== + +:Type: string +:Required: no +:Possible Values: Any valid artifact name. +:Description: Name of the artifact containing the unittest report in HTML format. + + +.. _JOBTMPL/UnitTesting/Input/coverage_sqlite_artifact: + +coverage_sqlite_artifact +======================== + +:Type: string +:Required: no +:Possible Values: Any valid artifact name. +:Description: Name of the artifact containing the code coverage report as SQLite database. + + +.. _JOBTMPL/UnitTesting/Input/coverage_xml_artifact: + +coverage_xml_artifact +===================== + +:Type: string +:Required: no +:Possible Values: Any valid artifact name. +:Description: Name of the artifact containing the code coverage report in XML format. + + +.. _JOBTMPL/UnitTesting/Input/coverage_json_artifact: + +coverage_json_artifact +====================== + +:Type: string +:Required: no +:Possible Values: Any valid artifact name. +:Description: Name of the artifact containing the code coverage report in JSON format. + + +.. _JOBTMPL/UnitTesting/Input/coverage_html_artifact: + +coverage_html_artifact +====================== + +:Type: string +:Required: no +:Possible Values: Any valid artifact name. +:Description: Name of the artifact containing the code coverage report in HTML format. + + +.. _JOBTMPL/UnitTesting/Secrets: + Secrets ******* This job template needs no secrets. -Results +.. _JOBTMPL/UnitTesting/Outputs: + +Outputs ******* This job template has no output parameters. + + +.. _JOBTMPL/UnitTesting/Optimizations: + +Optimizations +************* + +The following optimizations can be used to reduce the template's runtime. + +Disable unit test XML generation + If parameter :ref:`JOBTMPL/UnitTesting/Input/unittest_xml_artifact` is empty, no unit test summary report will be + generated and no JUnit XML artifact will be uploaded. +Disabled code coverage collection + If parameter :ref:`JOBTMPL/UnitTesting/Input/coverage_config` is empty, no code coverage will be collected. +Disable code coverage SQLite database artifact upload + If parameter :ref:`JOBTMPL/UnitTesting/Input/coverage_sqlite_artifact` is empty, the collected code coverage database + (SQLlite format) wont be uploaded as an artifact. +Disable code coverage report conversion to the Cobertura XML format. + If parameter :ref:`JOBTMPL/UnitTesting/Input/coverage_xml_artifact` is empty, no Cobertura XML file will be generated + from code coverage report. As no Cobertura XML file exists, no code coverage XML artifact will be uploaded. +Disable code coverage report conversion to the *Coverage.py* JSON format. + If parameter :ref:`JOBTMPL/UnitTesting/Input/coverage_json_artifact` is empty, no *Coverage.py* JSON file will be + generated from code coverage report. As no JSON file exists, no code coverage JSON artifact will be uploaded. +Disable code coverage report conversion to an HTML website. + If parameter :ref:`JOBTMPL/UnitTesting/Input/coverage_html_artifact` is empty, no coverage report HTML report will be + generated from code coverage report. As no HTML report exists, no code coverage HTML artifact will be uploaded. diff --git a/doc/_static/pyTooling-Actions-UnitTesting.png b/doc/_static/pyTooling-Actions-UnitTesting.png new file mode 100644 index 0000000000000000000000000000000000000000..016ec9cdc36e240d1206a2c6499f9d076aadc7e2 GIT binary patch literal 156375 zcmdqIXH?To)Gr!Du^`|hD$+zLB2t1>rQ1NdqJVUf-aCO%f(zuRBhjZ_IN&d5@?3vwuvuDq%yJiMF$Apdn z0017tJGU$V0M20m;P9&>T^{{v+oL949l~>eK|d?N6$` zFiuMKvr(Hk%b7W7X)md8;KJKaUs|VF{;|sBYv7^uoaKdo+6e{!Kmi2<=`^jJqUgft z&Do=(|D`z0kY?M&hDZKOxvhCX<-fLioeVHF_|GNlgM{Abf9X`Va%4F4zZ4mb|HFsz z|ISGnv||QW!VENkPKVii0zB$JI|7JV+>yuQJ0+a3QRivvQSjY;rUK$*oWCDv%+&IU z2$$af27Gy-_?W}C+K(ZHy28(~U-PJ5_%on(>uY5*&;Dn2mA;x@ugU&jKwM=U;BTeg zv4fs}Yb?&|aqjh`lLa-fjBR81-8}t!yB{1wW&0CB{Sx zQ9iD?NuGLEbggger+aFS(f4A*nhe`X!K4EK0RA8L#@zo_rfKaq>S0$#{jOiB12?NO ztI1gI1UM|dSk4V`jG#UZ@w4vq?U*{hrJYwgx8&}%f)j_%?uNPAv-dXW$nX`j{7zZO zJ+MApoA6E~0s%xrK5SzoS{4yZ-fKpnKqe*_7kTr&n0&6{~3o-Au$!c}^#-m&c!Nko_^vlRrP3uA0Hm zTlRV{w53#+ZboF(;6J7|d8q$r=MHm>h`s07I({Aq{z@;ivvVUC)Yg|l@_Yp+6s7|@ z#nso%v9pZmi^xcBmzxkMrK1vI4L(O)&B;X|0gC6!P2)&yVNPm@842Ckoeszo=cmg> zyT2QE*Cx&Oes>+OcK%6mvY0(Bh`DtojbnpoS$HadieV%0A@xs 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