diff options
author | Christopher Allan Webber <cwebber@dustycloud.org> | 2011-06-11 18:52:48 -0500 |
---|---|---|
committer | Christopher Allan Webber <cwebber@dustycloud.org> | 2011-06-11 18:52:48 -0500 |
commit | 2ecee34f08ad367f54f7a066a2e3ce81aba01f0f (patch) | |
tree | 2a6b8abe6e97b5b11351a8f5ed10d1e95a80b0e2 | |
parent | 2616d70903a775ee3790bdd38f6f0ad4003c0170 (diff) | |
download | mediagoblin-2ecee34f08ad367f54f7a066a2e3ce81aba01f0f.tar.lz mediagoblin-2ecee34f08ad367f54f7a066a2e3ce81aba01f0f.tar.xz mediagoblin-2ecee34f08ad367f54f7a066a2e3ce81aba01f0f.zip |
Make sure workbench won't kill directories out of scope.
-rw-r--r-- | mediagoblin/tests/test_workbench.py | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/mediagoblin/tests/test_workbench.py b/mediagoblin/tests/test_workbench.py index 1d006645..83e90c3d 100644 --- a/mediagoblin/tests/test_workbench.py +++ b/mediagoblin/tests/test_workbench.py @@ -17,6 +17,8 @@ import os import tempfile +from nose.tools import assert_raises + from mediagoblin.process_media import workbench @@ -32,13 +34,21 @@ class TestWorkbench(object): def test_destroy_workbench(self): # kill a workbench - workbench = self.workbench_manager.create_workbench() - tmpfile = file(os.path.join(workbench, 'temp.txt'), 'w') + this_workbench = self.workbench_manager.create_workbench() + tmpfile = file(os.path.join(this_workbench, 'temp.txt'), 'w') with tmpfile: tmpfile.write('lollerskates') - assert os.path.exists(os.path.join(workbench, 'temp.txt')) + assert os.path.exists(os.path.join(this_workbench, 'temp.txt')) + + self.workbench_manager.destroy_workbench(this_workbench) + assert not os.path.exists(os.path.join(this_workbench, 'temp.txt')) + assert not os.path.exists(this_workbench) + + # make sure we can't kill other stuff though + dont_kill_this = tempfile.mkdtemp() - self.workbench_manager.destroy_workbench(workbench) - assert not os.path.exists(os.path.join(workbench, 'temp.txt')) - assert not os.path.exists(workbench) + assert_raises( + workbench.WorkbenchOutsideScope, + self.workbench_manager.destroy_workbench, + dont_kill_this) |