Skip to content

Commit f714cb6

Browse files
committed
Add has_plugin method to PluginManager
1 parent 2c30390 commit f714cb6

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

pluggy.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -456,6 +456,10 @@ def get_plugin(self, name):
456456
""" Return a plugin or None for the given name. """
457457
return self._name2plugin.get(name)
458458

459+
def has_plugin(self, name):
460+
""" Return True if a plugin with the given name is registered. """
461+
return self.get_plugin(name) is not None
462+
459463
def get_name(self, plugin):
460464
""" Return name for registered plugin or None if not registered. """
461465
for name, val in self._name2plugin.items():

testing/test_pluggy.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,15 @@ class A:
5656
assert len(l) == 1
5757
assert l == [("hello", a2)]
5858

59+
def test_has_plugin(self, pm):
60+
class A:
61+
pass
62+
63+
a1 = A()
64+
pm.register(a1, 'hello')
65+
assert pm.is_registered(a1)
66+
assert pm.has_plugin('hello')
67+
5968
def test_register_dynamic_attr(self, he_pm):
6069
class A:
6170
def __getattr__(self, name):

0 commit comments

Comments
 (0)