also provide `get_fixture` helper for module level doctests
--HG-- branch : doctest-fixtures
This commit is contained in:
		
							parent
							
								
									c4b3a09886
								
							
						
					
					
						commit
						5a3547dd7e
					
				|  | @ -88,6 +88,11 @@ class DoctestModule(DoctestItem, pytest.File): | |||
|             module = self.config._conftest.importconftest(self.fspath) | ||||
|         else: | ||||
|             module = self.fspath.pyimport() | ||||
|         # satisfy `FixtureRequest` constructor... | ||||
|         self.funcargs = {} | ||||
|         self._fixtureinfo = FuncFixtureInfo((), [], {}) | ||||
|         fixture_request = FixtureRequest(self) | ||||
|         failed, tot = doctest.testmod( | ||||
|             module, raise_on_error=True, verbose=0, | ||||
|             extraglobs=dict(get_fixture=fixture_request.getfuncargvalue), | ||||
|             optionflags=doctest.ELLIPSIS) | ||||
|  |  | |||
|  | @ -133,3 +133,14 @@ class TestDoctests: | |||
|         """) | ||||
|         reprec = testdir.inline_run(p, ) | ||||
|         reprec.assertoutcome(passed=1) | ||||
| 
 | ||||
|     def test_doctestmodule_with_fixtures(self, testdir, tmpdir): | ||||
|         p = testdir.makepyfile(""" | ||||
|             ''' | ||||
|                 >>> dir = get_fixture('tmpdir') | ||||
|                 >>> type(dir).__name__ | ||||
|                 'LocalPath' | ||||
|             ''' | ||||
|         """) | ||||
|         reprec = testdir.inline_run(p, "--doctest-modules") | ||||
|         reprec.assertoutcome(passed=1) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue