mirror of
https://anongit.gentoo.org/git/repo/gentoo.git
synced 2025-06-08 14:15:07 +02:00
93 lines
3 KiB
Diff
93 lines
3 KiB
Diff
https://github.com/pallets/flask/issues/5692
|
|
https://github.com/pallets/flask/pull/5702
|
|
|
|
From 41ec5760a2c55a099c3a1733fdd36fbb1258a02b Mon Sep 17 00:00:00 2001
|
|
From: David Lord <davidism@gmail.com>
|
|
Date: Sat, 29 Mar 2025 15:42:58 -0700
|
|
Subject: [PATCH] remove tests about deprecated pkgutil.get_loader
|
|
|
|
---
|
|
tests/conftest.py | 32 --------------------------------
|
|
tests/test_instance_config.py | 6 +++---
|
|
2 files changed, 3 insertions(+), 35 deletions(-)
|
|
|
|
diff --git a/tests/conftest.py b/tests/conftest.py
|
|
index 58cf85d8a5..214f520338 100644
|
|
--- a/tests/conftest.py
|
|
+++ b/tests/conftest.py
|
|
@@ -1,5 +1,4 @@
|
|
import os
|
|
-import pkgutil
|
|
import sys
|
|
|
|
import pytest
|
|
@@ -96,37 +95,6 @@ def leak_detector():
|
|
assert leaks == []
|
|
|
|
|
|
-@pytest.fixture(params=(True, False))
|
|
-def limit_loader(request, monkeypatch):
|
|
- """Patch pkgutil.get_loader to give loader without get_filename or archive.
|
|
-
|
|
- This provides for tests where a system has custom loaders, e.g. Google App
|
|
- Engine's HardenedModulesHook, which have neither the `get_filename` method
|
|
- nor the `archive` attribute.
|
|
-
|
|
- This fixture will run the testcase twice, once with and once without the
|
|
- limitation/mock.
|
|
- """
|
|
- if not request.param:
|
|
- return
|
|
-
|
|
- class LimitedLoader:
|
|
- def __init__(self, loader):
|
|
- self.loader = loader
|
|
-
|
|
- def __getattr__(self, name):
|
|
- if name in {"archive", "get_filename"}:
|
|
- raise AttributeError(f"Mocking a loader which does not have {name!r}.")
|
|
- return getattr(self.loader, name)
|
|
-
|
|
- old_get_loader = pkgutil.get_loader
|
|
-
|
|
- def get_loader(*args, **kwargs):
|
|
- return LimitedLoader(old_get_loader(*args, **kwargs))
|
|
-
|
|
- monkeypatch.setattr(pkgutil, "get_loader", get_loader)
|
|
-
|
|
-
|
|
@pytest.fixture
|
|
def modules_tmp_path(tmp_path, monkeypatch):
|
|
"""A temporary directory added to sys.path."""
|
|
diff --git a/tests/test_instance_config.py b/tests/test_instance_config.py
|
|
index 1918bd999d..835a87844d 100644
|
|
--- a/tests/test_instance_config.py
|
|
+++ b/tests/test_instance_config.py
|
|
@@ -63,7 +63,7 @@ def create_namespace(package):
|
|
|
|
|
|
def test_installed_module_paths(
|
|
- modules_tmp_path, modules_tmp_path_prefix, purge_module, site_packages, limit_loader
|
|
+ modules_tmp_path, modules_tmp_path_prefix, purge_module, site_packages
|
|
):
|
|
(site_packages / "site_app.py").write_text(
|
|
"import flask\napp = flask.Flask(__name__)\n"
|
|
@@ -78,7 +78,7 @@ def test_installed_module_paths(
|
|
|
|
|
|
def test_installed_package_paths(
|
|
- limit_loader, modules_tmp_path, modules_tmp_path_prefix, purge_module, monkeypatch
|
|
+ modules_tmp_path, modules_tmp_path_prefix, purge_module, monkeypatch
|
|
):
|
|
installed_path = modules_tmp_path / "path"
|
|
installed_path.mkdir()
|
|
@@ -97,7 +97,7 @@ def test_installed_package_paths(
|
|
|
|
|
|
def test_prefix_package_paths(
|
|
- limit_loader, modules_tmp_path, modules_tmp_path_prefix, purge_module, site_packages
|
|
+ modules_tmp_path, modules_tmp_path_prefix, purge_module, site_packages
|
|
):
|
|
app = site_packages / "site_package"
|
|
app.mkdir()
|
|
|