我们从Python开源项目中,提取了以下30个代码示例,用于说明如何使用pytest.__version__()。
def pytest_cmdline_parse(): outcome = yield config = outcome.get_result() if config.option.debug: path = os.path.abspath("pytestdebug.log") debugfile = open(path, 'w') debugfile.write("versions pytest-%s, py-%s, " "python-%s\ncwd=%s\nargs=%s\n\n" %( pytest.__version__, py.__version__, ".".join(map(str, sys.version_info)), os.getcwd(), config._origargs)) config.trace.root.setwriter(debugfile.write) undo_tracing = config.pluginmanager.enable_tracing() sys.stderr.write("writing pytestdebug information to %s\n" % path) def unset_tracing(): debugfile.close() sys.stderr.write("wrote pytestdebug information to %s\n" % debugfile.name) config.trace.root.setwriter(None) undo_tracing() config.add_cleanup(unset_tracing)
def pytest_report_header(config): lines = [] if config.option.debug or config.option.traceconfig: lines.append("using: pytest-%s pylib-%s" % (pytest.__version__,py.__version__)) verinfo = getpluginversioninfo(config) if verinfo: lines.extend(verinfo) if config.option.traceconfig: lines.append("active plugins:") items = config.pluginmanager.list_name_plugin() for name, plugin in items: if hasattr(plugin, '__file__'): r = plugin.__file__ else: r = repr(plugin) lines.append(" %-20s: %s" %(name, r)) return lines
def pytest_sessionstart(self, session): self._sessionstarttime = time.time() if not self.showheader: return self.write_sep("=", "test session starts", bold=True) verinfo = platform.python_version() msg = "platform %s -- Python %s" % (sys.platform, verinfo) if hasattr(sys, 'pypy_version_info'): verinfo = ".".join(map(str, sys.pypy_version_info[:3])) msg += "[pypy-%s-%s]" % (verinfo, sys.pypy_version_info[3]) msg += ", pytest-%s, py-%s, pluggy-%s" % ( pytest.__version__, py.__version__, pluggy.__version__) if self.verbosity > 0 or self.config.option.debug or \ getattr(self.config.option, 'pastebin', None): msg += " -- " + str(sys.executable) self.write_line(msg) lines = self.config.hook.pytest_report_header( config=self.config, startdir=self.startdir) lines.reverse() for line in flatten(lines): self.write_line(line)
def pytest_configure(config): config._metadata = { 'Python': platform.python_version(), 'Platform': platform.platform(), 'Packages': { 'pytest': pytest.__version__, 'py': py.__version__, 'pluggy': pluggy.__version__}} config._metadata.update({ k: v for k, v in config.getoption('metadata')}) plugins = dict() for plugin, dist in config.pluginmanager.list_plugin_distinfo(): name, version = dist.project_name, dist.version if name.startswith('pytest-'): name = name[7:] plugins[name] = version config._metadata['Plugins'] = plugins for key, value in CONTINUOUS_INTEGRATION.items(): [config._metadata.update({v: os.environ.get(v)}) for v in value[1] if os.environ.get(v)] if hasattr(config, 'slaveoutput'): config.slaveoutput['metadata'] = config._metadata
def test_header_trailer_info(self, testdir): testdir.makepyfile(""" def test_passes(): pass """) result = testdir.runpytest() verinfo = ".".join(map(str, py.std.sys.version_info[:3])) result.stdout.fnmatch_lines([ "*===== test session starts ====*", "platform %s -- Python %s*pytest-%s*py-%s*pluggy-%s" % ( py.std.sys.platform, verinfo, pytest.__version__, py.__version__, pluggy.__version__), "*test_header_trailer_info.py .", "=* 1 passed*in *.[0-9][0-9] seconds *=", ]) if pytest.config.pluginmanager.list_plugin_distinfo(): result.stdout.fnmatch_lines([ "plugins: *", ])
def pytest_cmdline_main(config): if config.option.version: p = py.path.local(pytest.__file__) sys.stderr.write("This is pytest version %s, imported from %s\n" % (pytest.__version__, p)) plugininfo = getpluginversioninfo(config) if plugininfo: for line in plugininfo: sys.stderr.write(line + "\n") return 0 elif config.option.help: config._do_configure() showhelp(config) config._ensure_unconfigure() return 0
def _checkversion(self): import pytest minver = self.inicfg.get('minversion', None) if minver: ver = minver.split(".") myver = pytest.__version__.split(".") if myver < ver: raise pytest.UsageError( "%s:%d: requires pytest-%s, actual pytest-%s'" %( self.inicfg.config.path, self.inicfg.lineof('minversion'), minver, pytest.__version__))
def test_generate_empty_html(self): """ Ensures the application is still rendered gracefully """ self.app.config['ARA_IGNORE_EMPTY_GENERATION'] = False dir = self.generate_dir shell = ara.shell.AraCli() shell.prepare_to_run_command(ara.cli.generate.GenerateHtml) cmd = ara.cli.generate.GenerateHtml(shell, None) parser = cmd.get_parser('test') args = parser.parse_args([dir]) with pytest.warns(MissingURLGeneratorWarning) as warnings: cmd.take_action(args) # pytest 3.0 through 3.1 are backwards incompatible here if LooseVersion(pytest.__version__) >= LooseVersion('3.1.0'): cat = [item._category_name for item in warnings] self.assertTrue(any('MissingURLGeneratorWarning' in c for c in cat)) else: self.assertTrue(any(MissingURLGeneratorWarning == w.category for w in warnings)) paths = [ os.path.join(dir, 'index.html'), os.path.join(dir, 'static'), ] for path in paths: self.assertTrue(os.path.exists(path))
def skip(reason): if pytest.__version__ >= '3': raise pytest.skip.Exception(reason, allow_module_level=True) else: pytest.skip(reason)
def check_disabled(request): if getattr(request.module, 'disabled', False): pytest.skip("test requirements not met.") elif getattr(request.module, 'ipython', False): # need to check version and options for ipython tests if (V(pytest.__version__) < '2.6.3' and pytest.config.getvalue('-s') != 'no'): pytest.skip("run py.test with -s or upgrade to newer version.")
def test_version(testdir, pytestconfig): result = testdir.runpytest("--version") assert result.ret == 0 #p = py.path.local(py.__file__).dirpath() result.stderr.fnmatch_lines([ '*pytest*%s*imported from*' % (pytest.__version__, ) ]) if pytestconfig.pluginmanager.list_plugin_distinfo(): result.stderr.fnmatch_lines([ "*setuptools registered plugins:", "*at*", ])