summaryrefslogtreecommitdiffstats
path: root/third_party/python/pluggy/testing/conftest.py
blob: 3d61a349c88c687f311b1005cad5ccb04b1b8986 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import pytest


@pytest.fixture(
    params=[
        lambda spec: spec,
        lambda spec: spec()
    ],
    ids=[
        "spec-is-class",
        "spec-is-instance"
    ],
)
def he_pm(request, pm):
    from pluggy import HookspecMarker
    hookspec = HookspecMarker("example")

    class Hooks(object):
        @hookspec
        def he_method1(self, arg):
            return arg + 1

    pm.add_hookspecs(request.param(Hooks))
    return pm


@pytest.fixture
def pm():
    from pluggy import PluginManager
    return PluginManager("example")