Skip to content

Commit fdc6cf0

Browse files
committed
Better handle backported importlib
1 parent 131f9b0 commit fdc6cf0

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

src/pyapp/extensions/registry.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@
66
extensions.
77
88
"""
9-
from importlib import metadata
9+
try:
10+
import importlib_metadata as metadata
11+
except ImportError:
12+
from importlib import metadata
1013
from typing import Iterator
1114
from typing import List
1215
from typing import NamedTuple

tests/unit/extensions/test_registry.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,18 +66,18 @@ def _make_entry_point(name: str, project_name, version):
6666
name=name,
6767
value=f"{name.replace('-', '_')}:Extension",
6868
)
69-
entry_point.load = mock.Mock(
69+
entry_point.__dict__["load"] = mock.Mock(
7070
return_value=f"{project_name.replace(' ', '')}Instance"
7171
)
72-
entry_point.dist = mock.Mock()
72+
entry_point.__dict__["dist"] = mock.Mock()
7373
entry_point.dist.name = project_name
7474
entry_point.dist.version = version
7575
return entry_point
7676

7777

7878
class TestExtensionEntryPoints:
7979
@pytest.fixture
80-
def patchentrypoints(self, monkeypatch) -> metadata.EntryPoints():
80+
def patchentrypoints(self, monkeypatch) -> metadata.EntryPoints:
8181
entry_points = metadata.EntryPoints(
8282
(
8383
_make_entry_point("foo-extension", "Foo Extension", "0.1.2"),

0 commit comments

Comments
 (0)