109 lines
4.9 KiB
Diff
109 lines
4.9 KiB
Diff
From 52a56f3c0594cf76b3061260711536c23385ee75 Mon Sep 17 00:00:00 2001
|
|
From: Jordan Borean <jborean93@gmail.com>
|
|
Date: Fri, 7 Jan 2022 09:53:18 +1000
|
|
Subject: [PATCH 1/2] Fix pytest 7 failures with leaky fixture
|
|
|
|
---
|
|
changelogs/fragments/ansible-test-pytest7.yml | 2 ++
|
|
test/units/galaxy/test_role_install.py | 17 +++++++++--------
|
|
2 files changed, 11 insertions(+), 8 deletions(-)
|
|
create mode 100644 changelogs/fragments/ansible-test-pytest7.yml
|
|
|
|
diff --git a/changelogs/fragments/ansible-test-pytest7.yml b/changelogs/fragments/ansible-test-pytest7.yml
|
|
new file mode 100644
|
|
index 0000000000000..305dddb181b4e
|
|
--- /dev/null
|
|
+++ b/changelogs/fragments/ansible-test-pytest7.yml
|
|
@@ -0,0 +1,2 @@
|
|
+bugfixes:
|
|
+- ansible-test - Fix tests that were broken with ``pytest 7`` - https://github.com/ansible/ansible/issues/76577
|
|
diff --git a/test/units/galaxy/test_role_install.py b/test/units/galaxy/test_role_install.py
|
|
index cf990b55a6d90..687fcac1e53fb 100644
|
|
--- a/test/units/galaxy/test_role_install.py
|
|
+++ b/test/units/galaxy/test_role_install.py
|
|
@@ -8,6 +8,7 @@
|
|
|
|
|
|
import os
|
|
+import functools
|
|
import pytest
|
|
import tempfile
|
|
|
|
@@ -59,9 +60,9 @@ def mock_NamedTemporaryFile(mocker, **args):
|
|
return mock_ntf
|
|
|
|
|
|
-@pytest.fixture(autouse=True)
|
|
-def init_test(monkeypatch):
|
|
- monkeypatch.setattr(tempfile, 'NamedTemporaryFile', mock_NamedTemporaryFile)
|
|
+@pytest.fixture
|
|
+def init_mock_temp_file(mocker, monkeypatch):
|
|
+ monkeypatch.setattr(tempfile, 'NamedTemporaryFile', functools.partial(mock_NamedTemporaryFile, mocker))
|
|
|
|
|
|
@pytest.fixture(autouse=True)
|
|
@@ -74,7 +75,7 @@ def mock_role_download_api(mocker, monkeypatch):
|
|
return mock_role_api
|
|
|
|
|
|
-def test_role_download_github(mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
+def test_role_download_github(init_mock_temp_file, mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
mock_api = mocker.MagicMock()
|
|
mock_api.side_effect = [
|
|
StringIO(u'{"available_versions":{"v1":"v1/"}}'),
|
|
@@ -89,7 +90,7 @@ def test_role_download_github(mocker, galaxy_server, mock_role_download_api, mon
|
|
assert mock_role_download_api.mock_calls[0][1][0] == 'https://github.com/test_owner/test_role/archive/0.0.1.tar.gz'
|
|
|
|
|
|
-def test_role_download_github_default_version(mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
+def test_role_download_github_default_version(init_mock_temp_file, mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
mock_api = mocker.MagicMock()
|
|
mock_api.side_effect = [
|
|
StringIO(u'{"available_versions":{"v1":"v1/"}}'),
|
|
@@ -104,7 +105,7 @@ def test_role_download_github_default_version(mocker, galaxy_server, mock_role_d
|
|
assert mock_role_download_api.mock_calls[0][1][0] == 'https://github.com/test_owner/test_role/archive/0.0.2.tar.gz'
|
|
|
|
|
|
-def test_role_download_github_no_download_url_for_version(mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
+def test_role_download_github_no_download_url_for_version(init_mock_temp_file, mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
mock_api = mocker.MagicMock()
|
|
mock_api.side_effect = [
|
|
StringIO(u'{"available_versions":{"v1":"v1/"}}'),
|
|
@@ -119,7 +120,7 @@ def test_role_download_github_no_download_url_for_version(mocker, galaxy_server,
|
|
assert mock_role_download_api.mock_calls[0][1][0] == 'https://github.com/test_owner/test_role/archive/0.0.1.tar.gz'
|
|
|
|
|
|
-def test_role_download_url(mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
+def test_role_download_url(init_mock_temp_file, mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
mock_api = mocker.MagicMock()
|
|
mock_api.side_effect = [
|
|
StringIO(u'{"available_versions":{"v1":"v1/"}}'),
|
|
@@ -135,7 +136,7 @@ def test_role_download_url(mocker, galaxy_server, mock_role_download_api, monkey
|
|
assert mock_role_download_api.mock_calls[0][1][0] == 'http://localhost:8080/test_owner/test_role/0.0.1.tar.gz'
|
|
|
|
|
|
-def test_role_download_url_default_version(mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
+def test_role_download_url_default_version(init_mock_temp_file, mocker, galaxy_server, mock_role_download_api, monkeypatch):
|
|
mock_api = mocker.MagicMock()
|
|
mock_api.side_effect = [
|
|
StringIO(u'{"available_versions":{"v1":"v1/"}}'),
|
|
|
|
From 47c1f8f5bf3e27103a9320d42b8b1c602b5c27f0 Mon Sep 17 00:00:00 2001
|
|
From: Matt Davis <nitzmahone@users.noreply.github.com>
|
|
Date: Fri, 7 Jan 2022 15:35:54 -0800
|
|
Subject: [PATCH 2/2] zap changelog
|
|
|
|
---
|
|
changelogs/fragments/ansible-test-pytest7.yml | 2 --
|
|
1 file changed, 2 deletions(-)
|
|
delete mode 100644 changelogs/fragments/ansible-test-pytest7.yml
|
|
|
|
diff --git a/changelogs/fragments/ansible-test-pytest7.yml b/changelogs/fragments/ansible-test-pytest7.yml
|
|
deleted file mode 100644
|
|
index 305dddb181b4e..0000000000000
|
|
--- a/changelogs/fragments/ansible-test-pytest7.yml
|
|
+++ /dev/null
|
|
@@ -1,2 +0,0 @@
|
|
-bugfixes:
|
|
-- ansible-test - Fix tests that were broken with ``pytest 7`` - https://github.com/ansible/ansible/issues/76577
|