Merge pull request #2316 from nicoddemus/add-future-imports

Add __future__ imports to all pytest modules
This commit is contained in:
Ronny Pfannschmidt 2017-03-17 13:41:46 +01:00 committed by GitHub
commit a122ae85e9
74 changed files with 119 additions and 47 deletions

View File

@ -206,12 +206,12 @@ but here is a simple overview:
#. Run all the tests #. Run all the tests
You need to have Python 2.7 and 3.5 available in your system. Now You need to have Python 2.7 and 3.6 available in your system. Now
running tests is as simple as issuing this command:: running tests is as simple as issuing this command::
$ tox -e linting,py27,py35 $ tox -e linting,py27,py36
This command will run tests via the "tox" tool against Python 2.7 and 3.5 This command will run tests via the "tox" tool against Python 2.7 and 3.6
and also perform "lint" coding-style checks. and also perform "lint" coding-style checks.
#. You can now edit your local working copy. #. You can now edit your local working copy.
@ -223,9 +223,9 @@ but here is a simple overview:
$ tox -e py27 -- --pdb $ tox -e py27 -- --pdb
Or to only run tests in a particular test module on Python 3.5:: Or to only run tests in a particular test module on Python 3.6::
$ tox -e py35 -- testing/test_config.py $ tox -e py36 -- testing/test_config.py
#. Commit and push once your tests pass and you are happy with your change(s):: #. Commit and push once your tests pass and you are happy with your change(s)::

View File

@ -57,7 +57,7 @@ If things do not work right away:
which should throw a KeyError: 'COMPLINE' (which is properly set by the which should throw a KeyError: 'COMPLINE' (which is properly set by the
global argcomplete script). global argcomplete script).
""" """
from __future__ import absolute_import, division, print_function
import sys import sys
import os import os
from glob import glob from glob import glob

View File

@ -1,4 +1,5 @@
""" python inspection/code generation API """ """ python inspection/code generation API """
from __future__ import absolute_import, division, print_function
from .code import Code # noqa from .code import Code # noqa
from .code import ExceptionInfo # noqa from .code import ExceptionInfo # noqa
from .code import Frame # noqa from .code import Frame # noqa

View File

@ -2,6 +2,7 @@
# CHANGES: # CHANGES:
# - some_str is replaced, trying to create unicode strings # - some_str is replaced, trying to create unicode strings
# #
from __future__ import absolute_import, division, print_function
import types import types
def format_exception_only(etype, value): def format_exception_only(etype, value):

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import sys import sys
from inspect import CO_VARARGS, CO_VARKEYWORDS from inspect import CO_VARARGS, CO_VARKEYWORDS
import re import re

View File

@ -1,4 +1,4 @@
from __future__ import generators from __future__ import absolute_import, division, generators, print_function
from bisect import bisect_right from bisect import bisect_right
import sys import sys

View File

@ -2,7 +2,7 @@
imports symbols from vendored "pluggy" if available, otherwise imports symbols from vendored "pluggy" if available, otherwise
falls back to importing "pluggy" from the default namespace. falls back to importing "pluggy" from the default namespace.
""" """
from __future__ import absolute_import, division, print_function
try: try:
from _pytest.vendored_packages.pluggy import * # noqa from _pytest.vendored_packages.pluggy import * # noqa
from _pytest.vendored_packages.pluggy import __version__ # noqa from _pytest.vendored_packages.pluggy import __version__ # noqa

View File

@ -1,6 +1,7 @@
""" """
support for presenting detailed information in failing assertions. support for presenting detailed information in failing assertions.
""" """
from __future__ import absolute_import, division, print_function
import py import py
import sys import sys

View File

@ -1,5 +1,5 @@
"""Rewrite assertion AST to produce nice error messages""" """Rewrite assertion AST to produce nice error messages"""
from __future__ import absolute_import, division, print_function
import ast import ast
import _ast import _ast
import errno import errno

View File

@ -4,7 +4,7 @@ Utilities for truncating assertion output.
Current default behaviour is to truncate assertion explanations at Current default behaviour is to truncate assertion explanations at
~8 terminal lines, unless running in "-vv" mode or running on CI. ~8 terminal lines, unless running in "-vv" mode or running on CI.
""" """
from __future__ import absolute_import, division, print_function
import os import os
import py import py

View File

@ -1,4 +1,5 @@
"""Utilities for assertion debugging""" """Utilities for assertion debugging"""
from __future__ import absolute_import, division, print_function
import pprint import pprint
import _pytest._code import _pytest._code

View File

@ -4,7 +4,7 @@ merged implementation of the cache provider
the name cache was not chosen to ensure pluggy automatically the name cache was not chosen to ensure pluggy automatically
ignores the external pytest-cache ignores the external pytest-cache
""" """
from __future__ import absolute_import, division, print_function
import py import py
import pytest import pytest
import json import json

View File

@ -2,7 +2,7 @@
per-test stdout/stderr capturing mechanism. per-test stdout/stderr capturing mechanism.
""" """
from __future__ import with_statement from __future__ import absolute_import, division, print_function
import contextlib import contextlib
import sys import sys

View File

@ -1,6 +1,7 @@
""" """
python version compatibility code python version compatibility code
""" """
from __future__ import absolute_import, division, print_function
import sys import sys
import inspect import inspect
import types import types

View File

@ -1,4 +1,5 @@
""" command line options, ini-file and conftest.py processing. """ """ command line options, ini-file and conftest.py processing. """
from __future__ import absolute_import, division, print_function
import argparse import argparse
import shlex import shlex
import traceback import traceback

View File

@ -1,5 +1,5 @@
""" interactive debugging with PDB, the Python Debugger. """ """ interactive debugging with PDB, the Python Debugger. """
from __future__ import absolute_import from __future__ import absolute_import, division, print_function
import pdb import pdb
import sys import sys

View File

@ -5,7 +5,7 @@ that is planned to be removed in the next pytest release.
Keeping it in a central location makes it easy to track what is deprecated and should Keeping it in a central location makes it easy to track what is deprecated and should
be removed when the time comes. be removed when the time comes.
""" """
from __future__ import absolute_import, division, print_function
MAIN_STR_ARGS = 'passing a string to pytest.main() is deprecated, ' \ MAIN_STR_ARGS = 'passing a string to pytest.main() is deprecated, ' \
'pass a list of arguments instead.' 'pass a list of arguments instead.'

View File

@ -1,5 +1,5 @@
""" discover and run doctests in modules and test files.""" """ discover and run doctests in modules and test files."""
from __future__ import absolute_import from __future__ import absolute_import, division, print_function
import traceback import traceback

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import sys import sys
from py._code.code import FormattedExcinfo from py._code.code import FormattedExcinfo

View File

@ -2,6 +2,8 @@
Provides a function to report all internal modules for using freezing tools Provides a function to report all internal modules for using freezing tools
pytest pytest
""" """
from __future__ import absolute_import, division, print_function
def pytest_namespace(): def pytest_namespace():
return {'freeze_includes': freeze_includes} return {'freeze_includes': freeze_includes}

View File

@ -1,4 +1,6 @@
""" version info, help messages, tracing configuration. """ """ version info, help messages, tracing configuration. """
from __future__ import absolute_import, division, print_function
import py import py
import pytest import pytest
import os, sys import os, sys

View File

@ -4,9 +4,11 @@
Based on initial code from Ross Lawley. Based on initial code from Ross Lawley.
Output conforms to https://github.com/jenkinsci/xunit-plugin/blob/master/
src/main/resources/org/jenkinsci/plugins/xunit/types/model/xsd/junit-10.xsd
""" """
# Output conforms to https://github.com/jenkinsci/xunit-plugin/blob/master/ from __future__ import absolute_import, division, print_function
# src/main/resources/org/jenkinsci/plugins/xunit/types/model/xsd/junit-10.xsd
import functools import functools
import py import py

View File

@ -1,4 +1,6 @@
""" core implementation of testing process: init, session, runtest loop. """ """ core implementation of testing process: init, session, runtest loop. """
from __future__ import absolute_import, division, print_function
import functools import functools
import os import os
import sys import sys

View File

@ -1,4 +1,6 @@
""" generic mechanism for marking and selecting python functions. """ """ generic mechanism for marking and selecting python functions. """
from __future__ import absolute_import, division, print_function
import inspect import inspect
from collections import namedtuple from collections import namedtuple
from operator import attrgetter from operator import attrgetter

View File

@ -1,4 +1,5 @@
""" monkeypatching and mocking functionality. """ """ monkeypatching and mocking functionality. """
from __future__ import absolute_import, division, print_function
import os, sys import os, sys
import re import re

View File

@ -1,4 +1,5 @@
""" run test suites written for nose. """ """ run test suites written for nose. """
from __future__ import absolute_import, division, print_function
import sys import sys

View File

@ -1,4 +1,6 @@
""" submit failure or test session information to a pastebin service. """ """ submit failure or test session information to a pastebin service. """
from __future__ import absolute_import, division, print_function
import pytest import pytest
import sys import sys
import tempfile import tempfile

View File

@ -1,4 +1,6 @@
""" (disabled by default) support for testing pytest and pytest plugins. """ """ (disabled by default) support for testing pytest and pytest plugins. """
from __future__ import absolute_import, division, print_function
import codecs import codecs
import gc import gc
import os import os
@ -12,8 +14,6 @@ from fnmatch import fnmatch
from weakref import WeakKeyDictionary from weakref import WeakKeyDictionary
from py.builtin import print_
from _pytest.capture import MultiCapture, SysCapture from _pytest.capture import MultiCapture, SysCapture
from _pytest._code import Source from _pytest._code import Source
import py import py
@ -229,15 +229,15 @@ class HookRecorder(object):
name, check = entries.pop(0) name, check = entries.pop(0)
for ind, call in enumerate(self.calls[i:]): for ind, call in enumerate(self.calls[i:]):
if call._name == name: if call._name == name:
print_("NAMEMATCH", name, call) print("NAMEMATCH", name, call)
if eval(check, backlocals, call.__dict__): if eval(check, backlocals, call.__dict__):
print_("CHECKERMATCH", repr(check), "->", call) print("CHECKERMATCH", repr(check), "->", call)
else: else:
print_("NOCHECKERMATCH", repr(check), "-", call) print("NOCHECKERMATCH", repr(check), "-", call)
continue continue
i += ind + 1 i += ind + 1
break break
print_("NONAMEMATCH", name, "with", call) print("NONAMEMATCH", name, "with", call)
else: else:
pytest.fail("could not find %r check %r" % (name, check)) pytest.fail("could not find %r check %r" % (name, check))
@ -924,8 +924,8 @@ class Testdir(object):
cmdargs = [str(x) for x in cmdargs] cmdargs = [str(x) for x in cmdargs]
p1 = self.tmpdir.join("stdout") p1 = self.tmpdir.join("stdout")
p2 = self.tmpdir.join("stderr") p2 = self.tmpdir.join("stderr")
print_("running:", ' '.join(cmdargs)) print("running:", ' '.join(cmdargs))
print_(" in:", str(py.path.local())) print(" in:", str(py.path.local()))
f1 = codecs.open(str(p1), "w", encoding="utf8") f1 = codecs.open(str(p1), "w", encoding="utf8")
f2 = codecs.open(str(p2), "w", encoding="utf8") f2 = codecs.open(str(p2), "w", encoding="utf8")
try: try:
@ -951,7 +951,7 @@ class Testdir(object):
def _dump_lines(self, lines, fp): def _dump_lines(self, lines, fp):
try: try:
for line in lines: for line in lines:
py.builtin.print_(line, file=fp) print(line, file=fp)
except UnicodeEncodeError: except UnicodeEncodeError:
print("couldn't print to %s because of encoding" % (fp,)) print("couldn't print to %s because of encoding" % (fp,))

View File

@ -1,4 +1,5 @@
""" Python test discovery, setup and run of test functions. """ """ Python test discovery, setup and run of test functions. """
from __future__ import absolute_import, division, print_function
import fnmatch import fnmatch
import inspect import inspect

View File

@ -1,4 +1,6 @@
""" recording warnings during test function execution. """ """ recording warnings during test function execution. """
from __future__ import absolute_import, division, print_function
import inspect import inspect
import _pytest._code import _pytest._code

View File

@ -1,6 +1,7 @@
""" log machine-parseable test session result information in a plain """ log machine-parseable test session result information in a plain
text file. text file.
""" """
from __future__ import absolute_import, division, print_function
import py import py
import os import os
@ -61,9 +62,9 @@ class ResultLog(object):
self.logfile = logfile # preferably line buffered self.logfile = logfile # preferably line buffered
def write_log_entry(self, testpath, lettercode, longrepr): def write_log_entry(self, testpath, lettercode, longrepr):
py.builtin.print_("%s %s" % (lettercode, testpath), file=self.logfile) print("%s %s" % (lettercode, testpath), file=self.logfile)
for line in longrepr.splitlines(): for line in longrepr.splitlines():
py.builtin.print_(" %s" % line, file=self.logfile) print(" %s" % line, file=self.logfile)
def log_outcome(self, report, lettercode, longrepr): def log_outcome(self, report, lettercode, longrepr):
testpath = getattr(report, 'nodeid', None) testpath = getattr(report, 'nodeid', None)

View File

@ -1,4 +1,6 @@
""" basic collect and runtest protocol implementations """ """ basic collect and runtest protocol implementations """
from __future__ import absolute_import, division, print_function
import bdb import bdb
import sys import sys
from time import time from time import time

View File

@ -1,3 +1,5 @@
from __future__ import absolute_import, division, print_function
import pytest import pytest
import sys import sys

View File

@ -1,3 +1,5 @@
from __future__ import absolute_import, division, print_function
import pytest import pytest

View File

@ -1,4 +1,6 @@
""" support for skip/xfail functions and markers. """ """ support for skip/xfail functions and markers. """
from __future__ import absolute_import, division, print_function
import os import os
import sys import sys
import traceback import traceback

View File

@ -2,6 +2,8 @@
This is a good source for looking at the various reporting hooks. This is a good source for looking at the various reporting hooks.
""" """
from __future__ import absolute_import, division, print_function
from _pytest.main import EXIT_OK, EXIT_TESTSFAILED, EXIT_INTERRUPTED, \ from _pytest.main import EXIT_OK, EXIT_TESTSFAILED, EXIT_INTERRUPTED, \
EXIT_USAGEERROR, EXIT_NOTESTSCOLLECTED EXIT_USAGEERROR, EXIT_NOTESTSCOLLECTED
import pytest import pytest

View File

@ -1,4 +1,6 @@
""" support for providing temporary directories to test functions. """ """ support for providing temporary directories to test functions. """
from __future__ import absolute_import, division, print_function
import re import re
import pytest import pytest

View File

@ -1,5 +1,5 @@
""" discovery and running of std-library "unittest" style tests. """ """ discovery and running of std-library "unittest" style tests. """
from __future__ import absolute_import from __future__ import absolute_import, division, print_function
import sys import sys
import traceback import traceback

View File

@ -1,4 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from __future__ import absolute_import, division, print_function
import os import os
import sys import sys

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import sys import sys
import _pytest._code import _pytest._code

View File

@ -1,4 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from __future__ import absolute_import, division, print_function
import operator import operator
import _pytest import _pytest
@ -369,7 +370,7 @@ def test_codepath_Queue_example():
def test_match_succeeds(): def test_match_succeeds():
with pytest.raises(ZeroDivisionError) as excinfo: with pytest.raises(ZeroDivisionError) as excinfo:
0 / 0 0 // 0
excinfo.match(r'.*zero.*') excinfo.match(r'.*zero.*')
def test_match_raises_error(testdir): def test_match_raises_error(testdir):

View File

@ -1,6 +1,7 @@
# flake8: noqa # flake8: noqa
# disable flake check on this file because some constructs are strange # disable flake check on this file because some constructs are strange
# or redundant on purpose and can't be disable on a line-by-line basis # or redundant on purpose and can't be disable on a line-by-line basis
from __future__ import absolute_import, division, print_function
import sys import sys
import _pytest._code import _pytest._code

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import pytest import pytest

View File

@ -274,6 +274,7 @@ class TestGenerator(object):
def test_order_of_execution_generator_same_codeline(self, testdir, tmpdir): def test_order_of_execution_generator_same_codeline(self, testdir, tmpdir):
o = testdir.makepyfile(""" o = testdir.makepyfile("""
from __future__ import print_function
def test_generative_order_of_execution(): def test_generative_order_of_execution():
import py, pytest import py, pytest
test_list = [] test_list = []
@ -283,8 +284,8 @@ class TestGenerator(object):
test_list.append(item) test_list.append(item)
def assert_order_of_execution(): def assert_order_of_execution():
py.builtin.print_('expected order', expected_list) print('expected order', expected_list)
py.builtin.print_('but got ', test_list) print('but got ', test_list)
assert test_list == expected_list assert test_list == expected_list
for i in expected_list: for i in expected_list:
@ -298,6 +299,7 @@ class TestGenerator(object):
def test_order_of_execution_generator_different_codeline(self, testdir): def test_order_of_execution_generator_different_codeline(self, testdir):
o = testdir.makepyfile(""" o = testdir.makepyfile("""
from __future__ import print_function
def test_generative_tests_different_codeline(): def test_generative_tests_different_codeline():
import py, pytest import py, pytest
test_list = [] test_list = []
@ -313,8 +315,8 @@ class TestGenerator(object):
test_list.append(0) test_list.append(0)
def assert_order_of_execution(): def assert_order_of_execution():
py.builtin.print_('expected order', expected_list) print('expected order', expected_list)
py.builtin.print_('but got ', test_list) print('but got ', test_list)
assert test_list == expected_list assert test_list == expected_list
yield list_append_0 yield list_append_0

View File

@ -1,4 +1,4 @@
from __future__ import with_statement from __future__ import absolute_import, division, print_function
import py, pytest import py, pytest
# test for _argcomplete but not specific for any application # test for _argcomplete but not specific for any application

View File

@ -1,4 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from __future__ import absolute_import, division, print_function
import sys import sys
import textwrap import textwrap

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import glob import glob
import os import os
import py_compile import py_compile

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import sys import sys
import _pytest import _pytest

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
# note: py.io capture tests where copied from # note: py.io capture tests where copied from
# pylib 1.4.20.dev2 (rev 13d9af95547e) # pylib 1.4.20.dev2 (rev 13d9af95547e)
from __future__ import with_statement from __future__ import with_statement
@ -13,7 +14,7 @@ import contextlib
from _pytest import capture from _pytest import capture
from _pytest.capture import CaptureManager from _pytest.capture import CaptureManager
from _pytest.main import EXIT_NOTESTSCOLLECTED from _pytest.main import EXIT_NOTESTSCOLLECTED
from py.builtin import print_
needsosdup = pytest.mark.xfail("not hasattr(os, 'dup')") needsosdup = pytest.mark.xfail("not hasattr(os, 'dup')")
@ -711,7 +712,7 @@ def test_dupfile(tmpfile):
assert nf != tmpfile assert nf != tmpfile
assert nf.fileno() != tmpfile.fileno() assert nf.fileno() != tmpfile.fileno()
assert nf not in flist assert nf not in flist
print_(i, end="", file=nf) print(i, end="", file=nf)
flist.append(nf) flist.append(nf)
for i in range(5): for i in range(5):
f = flist[i] f = flist[i]
@ -785,7 +786,7 @@ class TestFDCapture(object):
def test_stderr(self): def test_stderr(self):
cap = capture.FDCapture(2) cap = capture.FDCapture(2)
cap.start() cap.start()
print_("hello", file=sys.stderr) print("hello", file=sys.stderr)
s = cap.snap() s = cap.snap()
cap.done() cap.done()
assert s == "hello\n" assert s == "hello\n"

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import pytest, py import pytest, py
from _pytest.main import Session, EXIT_NOTESTSCOLLECTED from _pytest.main import Session, EXIT_NOTESTSCOLLECTED

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import sys import sys
import pytest import pytest

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import py, pytest import py, pytest
import _pytest._code import _pytest._code

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
from textwrap import dedent from textwrap import dedent
import _pytest._code import _pytest._code

View File

@ -1,4 +1,5 @@
# encoding: utf-8 # encoding: utf-8
from __future__ import absolute_import, division, print_function
import sys import sys
import _pytest._code import _pytest._code
from _pytest.compat import MODULE_NOT_FOUND_ERROR from _pytest.compat import MODULE_NOT_FOUND_ERROR

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import pkg_resources import pkg_resources
import pytest import pytest

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
from _pytest.main import EXIT_NOTESTSCOLLECTED from _pytest.main import EXIT_NOTESTSCOLLECTED
import pytest import pytest

View File

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from __future__ import absolute_import, division, print_function
from xml.dom import minidom from xml.dom import minidom
import py import py
import sys import sys

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import os import os
import py, pytest import py, pytest
@ -673,7 +674,7 @@ class TestKeywordSelection(object):
item.extra_keyword_matches.add("xxx") item.extra_keyword_matches.add("xxx")
""") """)
reprec = testdir.inline_run(p.dirpath(), '-s', '-k', keyword) reprec = testdir.inline_run(p.dirpath(), '-s', '-k', keyword)
py.builtin.print_("keyword", repr(keyword)) print("keyword", repr(keyword))
passed, skipped, failed = reprec.listoutcomes() passed, skipped, failed = reprec.listoutcomes()
assert len(passed) == 1 assert len(passed) == 1
assert passed[0].nodeid.endswith("test_2") assert passed[0].nodeid.endswith("test_2")

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import os import os
import sys import sys
import textwrap import textwrap

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import pytest import pytest
def setup_module(mod): def setup_module(mod):

View File

@ -1,4 +1,4 @@
from __future__ import with_statement from __future__ import absolute_import, division, print_function
import sys import sys
import os import os
import py, pytest import py, pytest

View File

@ -1,4 +1,5 @@
# encoding: utf-8 # encoding: utf-8
from __future__ import absolute_import, division, print_function
import sys import sys
import pytest import pytest

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import sys import sys
import platform import platform

View File

@ -1,4 +1,5 @@
# encoding: UTF-8 # encoding: UTF-8
from __future__ import absolute_import, division, print_function
import pytest import pytest
import py import py
import os import os

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import pytest import pytest
import os import os
from _pytest.pytester import HookRecorder from _pytest.pytester import HookRecorder

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import warnings import warnings
import re import re
import py import py

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import os import os
import _pytest._code import _pytest._code

View File

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from __future__ import with_statement from __future__ import absolute_import, division, print_function
import _pytest._code import _pytest._code
import os import os

View File

@ -1,6 +1,8 @@
# """
# test correct setup/teardowns at test correct setup/teardowns at
# module, class, and instance level module, class, and instance level
"""
from __future__ import absolute_import, division, print_function
import pytest import pytest

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import pytest import pytest
from _pytest.main import EXIT_NOTESTSCOLLECTED from _pytest.main import EXIT_NOTESTSCOLLECTED

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import pytest import pytest
import sys import sys

View File

@ -1,6 +1,7 @@
""" """
terminal reporting of the full testing process. terminal reporting of the full testing process.
""" """
from __future__ import absolute_import, division, print_function
import collections import collections
import sys import sys

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
import sys import sys
import py import py
import pytest import pytest

View File

@ -1,3 +1,4 @@
from __future__ import absolute_import, division, print_function
from _pytest.main import EXIT_NOTESTSCOLLECTED from _pytest.main import EXIT_NOTESTSCOLLECTED
import pytest import pytest
import gc import gc