diff options
author | Lars Wirzenius <liw@liw.fi> | 2011-09-11 18:54:03 +0100 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2011-09-11 18:54:03 +0100 |
commit | 43523c4ba81cb2836d4c70c6ab4ee374ceebaa4e (patch) | |
tree | 6cf5e16b9b47873883f4403d5cf136450aa9d12f /cmdtestlib_tests.py | |
parent | 18a3f1062d8ce7590bbd94b32ab8bbb812000f59 (diff) | |
download | cmdtest-43523c4ba81cb2836d4c70c6ab4ee374ceebaa4e.tar.gz |
Rename cmdtest.py so it does not conflict with cmdtest script.
Diffstat (limited to 'cmdtestlib_tests.py')
-rw-r--r-- | cmdtestlib_tests.py | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/cmdtestlib_tests.py b/cmdtestlib_tests.py new file mode 100644 index 0000000..e42f106 --- /dev/null +++ b/cmdtestlib_tests.py @@ -0,0 +1,64 @@ +# Copyright 2011 Lars Wirzenius +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + +import unittest + +from cmdtest import TestDir + + +class TestDirTests(unittest.TestCase): + + def test_finds_nothing_for_empty_directory(self): + td = TestDir() + td.scan('tests', filenames=[]) + self.assertEqual(td.setup_once, None) + self.assertEqual(td.setup, None) + self.assertEqual(td.tests, []) + self.assertEqual(td.teardown, None) + self.assertEqual(td.teardown_once, None) + + def test_finds_setup_and_teardown_files(self): + td = TestDir() + td.scan('tests', filenames=['setup_once', 'setup', 'teardown', + 'teardown_once']) + self.assertEqual(td.setup_once, 'tests/setup_once') + self.assertEqual(td.setup, 'tests/setup') + self.assertEqual(td.tests, []) + self.assertEqual(td.teardown, 'tests/teardown') + self.assertEqual(td.teardown_once, 'tests/teardown_once') + + def test_finds_tests(self): + td = TestDir() + td.scan('tests', filenames=['foo.args']) + self.assertEqual(len(td.tests), 1) + test = td.tests[0] + self.assertEqual(test.name, 'foo') + self.assertEqual(test.args, 'tests/foo.args') + self.assertEqual(test.stdin, None) + + def test_finds_no_prefixes_when_there_are_none(self): + td = TestDir() + self.assertEqual(td.find_prefixes(['setup']), []) + + def test_finds_single_prefix(self): + td = TestDir() + self.assertEqual(td.find_prefixes(['setup', 'foo.setup']), ['foo']) + + def test_finds_two_prefixes(self): + td = TestDir() + self.assertEqual(td.find_prefixes(['setup', 'foo.setup', 'bar.args']), + ['bar', 'foo']) + |