don't consider setuptools plugins if it is not installed.
--HG-- branch : trunk
This commit is contained in:
		
							parent
							
								
									79a9a99d1e
								
							
						
					
					
						commit
						9652be0ac1
					
				|  | @ -78,7 +78,10 @@ class PluginManager(object): | ||||||
|             self.import_plugin(spec) |             self.import_plugin(spec) | ||||||
| 
 | 
 | ||||||
|     def consider_setuptools_entrypoints(self): |     def consider_setuptools_entrypoints(self): | ||||||
|         from pkg_resources import iter_entry_points |         try: | ||||||
|  |             from pkg_resources import iter_entry_points | ||||||
|  |         except ImportError: | ||||||
|  |             return # XXX issue a warning  | ||||||
|         for ep in iter_entry_points('pytest11'): |         for ep in iter_entry_points('pytest11'): | ||||||
|             if ep.name in self._name2plugin: |             if ep.name in self._name2plugin: | ||||||
|                 continue |                 continue | ||||||
|  |  | ||||||
|  | @ -60,6 +60,13 @@ class TestBootstrapping: | ||||||
|         plugin = pluginmanager.getplugin("mytestplugin") |         plugin = pluginmanager.getplugin("mytestplugin") | ||||||
|         assert plugin.x == 42 |         assert plugin.x == 42 | ||||||
| 
 | 
 | ||||||
|  |     def test_consider_setuptools_not_installed(self, monkeypatch): | ||||||
|  |         monkeypatch.setitem(py.std.sys.modules, 'pkg_resources',  | ||||||
|  |             py.std.types.ModuleType("pkg_resources")) | ||||||
|  |         pluginmanager = PluginManager() | ||||||
|  |         pluginmanager.consider_setuptools_entrypoints() | ||||||
|  |         # ok, we did not explode | ||||||
|  | 
 | ||||||
|     def test_pluginmanager_ENV_startup(self, testdir, monkeypatch): |     def test_pluginmanager_ENV_startup(self, testdir, monkeypatch): | ||||||
|         x500 = testdir.makepyfile(pytest_x500="#") |         x500 = testdir.makepyfile(pytest_x500="#") | ||||||
|         p = testdir.makepyfile(""" |         p = testdir.makepyfile(""" | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue