separate out the duration tests

This commit is contained in:
holger krekel 2011-11-08 18:12:16 +00:00
parent 29bf205f3a
commit a324826dfd
1 changed files with 63 additions and 49 deletions

View File

@ -465,8 +465,8 @@ class TestInvocationVariants:
"*1 failed*", "*1 failed*",
]) ])
def test_duration_test(testdir): class TestDurations:
testdir.makepyfile(""" source = """
import time import time
frag = 0.01 frag = 0.01
def test_2(): def test_2():
@ -475,7 +475,10 @@ def test_duration_test(testdir):
time.sleep(frag) time.sleep(frag)
def test_3(): def test_3():
time.sleep(frag*3) time.sleep(frag*3)
""") """
def test_calls(self, testdir):
testdir.makepyfile(self.source)
result = testdir.runpytest("--durations=10") result = testdir.runpytest("--durations=10")
assert result.ret == 0 assert result.ret == 0
result.stdout.fnmatch_lines([ result.stdout.fnmatch_lines([
@ -486,6 +489,8 @@ def test_duration_test(testdir):
]) ])
assert "remaining in" not in result.stdout.str() assert "remaining in" not in result.stdout.str()
def test_calls_show_2(self, testdir):
testdir.makepyfile(self.source)
result = testdir.runpytest("--durations=2") result = testdir.runpytest("--durations=2")
assert result.ret == 0 assert result.ret == 0
result.stdout.fnmatch_lines([ result.stdout.fnmatch_lines([
@ -495,6 +500,9 @@ def test_duration_test(testdir):
"*s*%*remaining in 7 test phases", "*s*%*remaining in 7 test phases",
]) ])
assert "test_1" not in result.stdout.str() assert "test_1" not in result.stdout.str()
def test_calls_showall(self, testdir):
testdir.makepyfile(self.source)
result = testdir.runpytest("--durations=0") result = testdir.runpytest("--durations=0")
assert result.ret == 0 assert result.ret == 0
for x in "123": for x in "123":
@ -506,8 +514,18 @@ def test_duration_test(testdir):
else: else:
raise AssertionError("not found %s %s" % (x,y)) raise AssertionError("not found %s %s" % (x,y))
def test_duration_test_with_fixture(testdir): def test_with_deselected(self, testdir):
testdir.makepyfile(""" testdir.makepyfile(self.source)
result = testdir.runpytest("--durations=2", "-k test_1")
assert result.ret == 0
result.stdout.fnmatch_lines([
"*durations*",
"*call*test_1*",
])
class TestDurationWithFixture:
source = """
import time import time
frag = 0.01 frag = 0.01
def setup_function(func): def setup_function(func):
@ -517,9 +535,12 @@ def test_duration_test_with_fixture(testdir):
time.sleep(frag*2) time.sleep(frag*2)
def test_2(): def test_2():
time.sleep(frag) time.sleep(frag)
""") """
def test_setup_function(self, testdir):
testdir.makepyfile(self.source)
result = testdir.runpytest("--durations=10") result = testdir.runpytest("--durations=10")
assert result.ret == 0 assert result.ret == 0
result.stdout.fnmatch_lines([ result.stdout.fnmatch_lines([
"*durations*", "*durations*",
"*setup*test_1*", "*setup*test_1*",
@ -528,10 +549,3 @@ def test_duration_test_with_fixture(testdir):
"*call*test_2*", "*call*test_2*",
]) ])
result = testdir.runpytest("--durations=2", "-k test_1")
assert result.ret == 0
result.stdout.fnmatch_lines([
"*durations*",
"*call*test_1*",
])