summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2011-08-11 08:19:58 -0400
committerNed Batchelder <ned@nedbatchelder.com>2011-08-11 08:19:58 -0400
commit6cf3031f594788bb0a2f3d07f8ea01519132be75 (patch)
tree6ca6e6b7ff112930e355e884121bee9dd0b0f93d /test
parentfd70e78bae72dd09d35ec305e75d9e5fb4a416c5 (diff)
parent8799da89bd2ff281e95eb341d524d42f566532eb (diff)
downloadpython-coveragepy-6cf3031f594788bb0a2f3d07f8ea01519132be75.tar.gz
Merge
Diffstat (limited to 'test')
-rw-r--r--test/coveragetest.py2
-rw-r--r--test/test_process.py45
2 files changed, 26 insertions, 21 deletions
diff --git a/test/coveragetest.py b/test/coveragetest.py
index 9bff27e..627635f 100644
--- a/test/coveragetest.py
+++ b/test/coveragetest.py
@@ -426,7 +426,7 @@ class CoverageTest(TestCase):
here = os.path.dirname(self.nice_file(coverage.__file__, ".."))
testmods = self.nice_file(here, 'test/modules')
zipfile = self.nice_file(here, 'test/zipmods.zip')
- pypath = os.getenv('PYTHONPATH')
+ pypath = os.getenv('PYTHONPATH', '')
if pypath:
pypath += os.pathsep
pypath += testmods + os.pathsep + zipfile
diff --git a/test/test_process.py b/test/test_process.py
index e62fce2..1bdb140 100644
--- a/test/test_process.py
+++ b/test/test_process.py
@@ -292,23 +292,28 @@ class ProcessTest(CoverageTest):
self.assertTrue("No module named no_such_module" in out)
self.assertTrue("warning" not in out)
- if sys.version_info >= (2, 7): # Need coverage runnable as a module.
- def test_fullcoverage(self):
- # fullcoverage is a trick to get stdlib modules measured from the
- # very beginning of the process. Here we import os and then check
- # how many lines are measured.
- self.make_file("getenv.py", """\
- import os
- print("FOOEY == %s" % os.getenv("FOOEY"))
- """)
-
- fullcov = os.path.join(os.path.dirname(coverage.__file__), "fullcoverage")
- self.set_environ("FOOEY", "BOO")
- self.set_environ("PYTHONPATH", fullcov)
- out = self.run_command("python -m coverage run -L getenv.py")
- self.assertEqual(out, "FOOEY == BOO\n")
- data = coverage.CoverageData()
- data.read_file(".coverage")
- # The actual number of lines in os.py executed when it is imported
- # is 120 or so. Just running os.getenv executes about 5.
- self.assertGreater(data.summary()['os.py'], 50)
+ if sys.version_info >= (3, 0): # This only works on 3.x for now.
+ # It only works with the C tracer.
+ if os.getenv('COVERAGE_TEST_TRACER', 'c') == 'c':
+ def test_fullcoverage(self):
+ # fullcoverage is a trick to get stdlib modules measured from
+ # the very beginning of the process. Here we import os and
+ # then check how many lines are measured.
+ self.make_file("getenv.py", """\
+ import os
+ print("FOOEY == %s" % os.getenv("FOOEY"))
+ """)
+
+ fullcov = os.path.join(
+ os.path.dirname(coverage.__file__), "fullcoverage"
+ )
+ self.set_environ("FOOEY", "BOO")
+ self.set_environ("PYTHONPATH", fullcov)
+ out = self.run_command("python -m coverage run -L getenv.py")
+ self.assertEqual(out, "FOOEY == BOO\n")
+ data = coverage.CoverageData()
+ data.read_file(".coverage")
+ # The actual number of executed lines in os.py when it's
+ # imported is 120 or so. Just running os.getenv executes
+ # about 5.
+ self.assertGreater(data.summary()['os.py'], 50)