From 302d88b33dbb2aacf3558313336e145f7328dca7 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Wed, 30 Jul 2025 06:10:06 +0200 Subject: [PATCH] [PR #10511/6ce9f805 backport][stable-11] CI: Add Python 3.14 unit tests (#10516) CI: Add Python 3.14 unit tests (#10511) * Add Python 3.14 unit tests. * Skip test if github cannot be imported. It currently cannot be imported because nacl isn't compatible with Python 3.14 yet, and importing github indirectly tries to import nacl, which fails as it uses a type from typing that got removed in 3.14. * Skip test if paramiko cannot be imported. (cherry picked from commit 6ce9f805a8950911f90c7e6d36ef88d4c556ff86) Co-authored-by: Felix Fontein --- .azure-pipelines/azure-pipelines.yml | 2 +- tests/unit/plugins/connection/test_wsl.py | 3 +++ tests/unit/plugins/modules/test_github_repo.py | 4 ++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.azure-pipelines/azure-pipelines.yml b/.azure-pipelines/azure-pipelines.yml index fd3693aab7..455d0659b4 100644 --- a/.azure-pipelines/azure-pipelines.yml +++ b/.azure-pipelines/azure-pipelines.yml @@ -124,7 +124,7 @@ stages: - test: '3.11' - test: '3.12' - test: '3.13' - # - test: '3.14' + - test: '3.14' - stage: Units_2_19 displayName: Units 2.19 dependsOn: [] diff --git a/tests/unit/plugins/connection/test_wsl.py b/tests/unit/plugins/connection/test_wsl.py index 8b0d6cdd5b..a714e7cf89 100644 --- a/tests/unit/plugins/connection/test_wsl.py +++ b/tests/unit/plugins/connection/test_wsl.py @@ -20,6 +20,9 @@ from pathlib import Path from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch, MagicMock, mock_open +pytest.importorskip('paramiko') + + @pytest.fixture def connection(): play_context = PlayContext() diff --git a/tests/unit/plugins/modules/test_github_repo.py b/tests/unit/plugins/modules/test_github_repo.py index 846f766723..9a76fc4b69 100644 --- a/tests/unit/plugins/modules/test_github_repo.py +++ b/tests/unit/plugins/modules/test_github_repo.py @@ -7,11 +7,15 @@ __metaclass__ = type import re import json +import pytest from httmock import with_httmock, urlmatch, response from ansible_collections.community.internal_test_tools.tests.unit.compat import unittest from ansible_collections.community.general.plugins.modules import github_repo +pytest.importorskip('github') + + @urlmatch(netloc=r'.*') def debug_mock(url, request): print(request.original.__dict__)