def test_consider_module(self, testdir): plugins = PytestPlugins() testdir.syspathinsert() testdir.makepyfile(pytest_plug1="class Plug1Plugin: pass") testdir.makepyfile(pytest_plug2="class Plug2Plugin: pass") mod = py.std.new.module("temp") mod.pytest_plugins = ["pytest_plug1", "pytest_plug2"] plugins.consider_module(mod) assert plugins.getplugin("plug1").__class__.__name__ == "Plug1Plugin" assert plugins.getplugin("plug2").__class__.__name__ == "Plug2Plugin"
def test_consider_module_import_module(self, testdir, EventRecorder): mod = py.std.new.module("x") mod.pytest_plugins = "pytest_a" aplugin = testdir.makepyfile(pytest_a="""class APlugin: pass""") plugins = PytestPlugins() evrec = EventRecorder(plugins) #syspath.prepend(aplugin.dirpath()) py.std.sys.path.insert(0, str(aplugin.dirpath())) plugins.consider_module(mod) evlist = evrec.getnamed("plugin_registered") assert len(evlist) == 1 assert evlist[0].__class__.__name__ == "APlugin" # check that it is not registered twice plugins.consider_module(mod) evlist = evrec.getnamed("plugin_registered") assert len(evlist) == 1