summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Schinckel <matt@schinckel.net>2016-04-09 13:00:42 +0930
committerMatthew Schinckel <matt@schinckel.net>2016-04-09 13:00:42 +0930
commit975d9c90c7e0739fa8f9ab79a6ac49dfa722450a (patch)
tree7c482f5095f0fa4f48c1753ca1e9fca23f6e17a7
parent52f364262d947b8a5c925b699accf52f526249cb (diff)
downloadtox-975d9c90c7e0739fa8f9ab79a6ac49dfa722450a.tar.gz
Add tests for tox_runtest_pre/post.
Resolves issue #275. Supersedes pull request #175.
-rw-r--r--tests/test_venv.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/test_venv.py b/tests/test_venv.py
index 4ab3b06..6eb6333 100644
--- a/tests/test_venv.py
+++ b/tests/test_venv.py
@@ -672,3 +672,27 @@ def test_tox_testenv_create(newmocksession):
venv = mocksession.getenv('python')
venv.update(action=mocksession.newaction(venv, "getenv"))
assert l == [1, 2]
+
+
+def test_tox_testenv_pre_post(newmocksession):
+ l = []
+
+ class Plugin:
+ @hookimpl
+ def tox_runtest_pre(self, venv):
+ l.append('started')
+
+ @hookimpl
+ def tox_runtest_post(self, venv):
+ l.append('finished')
+
+ mocksession = newmocksession([], """
+ [testenv]
+ commands=testenv_fail
+ """, plugins=[Plugin()])
+
+ venv = mocksession.getenv('python')
+ venv.status = None
+ assert l == []
+ mocksession.runtestenv(venv)
+ assert l == ['started', 'finished']