diff options
author | Dan McGee <dan@archlinux.org> | 2013-02-27 02:06:27 +0100 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2013-02-27 02:06:51 +0100 |
commit | ddcba1117722095bfb5f4f1c98273c54e747eea9 (patch) | |
tree | be543b83792c8c039f768335186b860530e92f34 /packages | |
parent | f85cc0482a44ced9aed372b8972d31040ed4043b (diff) | |
download | archweb-ddcba1117722095bfb5f4f1c98273c54e747eea9.tar.gz archweb-ddcba1117722095bfb5f4f1c98273c54e747eea9.tar.xz |
Fix ALPM unittest to run when ALPM isn't present
This gets some proper unittest skip decorator action now in addition to
adding more testing around everything.
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'packages')
-rw-r--r-- | packages/tests.py | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/packages/tests.py b/packages/tests.py index 3a46086..bbe9f00 100644 --- a/packages/tests.py +++ b/packages/tests.py @@ -2,17 +2,27 @@ import unittest from .alpm import AlpmAPI + +alpm = AlpmAPI() + + class AlpmTestCase(unittest.TestCase): + + @unittest.skipUnless(alpm.available, "ALPM is unavailable") def test_version(self): - alpm = AlpmAPI() version = alpm.version() self.assertIsNotNone(version) version = version.split('.') # version is a 3-tuple, e.g., '7.0.2' self.assertEqual(3, len(version)) + @unittest.skipUnless(alpm.available, "ALPM is unavailable") + def test_vercmp(self): + self.assertEqual(0, alpm.vercmp("1.0", "1.0")) + self.assertEqual(1, alpm.vercmp("1.1", "1.0")) + + @unittest.skipUnless(alpm.available, "ALPM is unavailable") def test_compare_versions(self): - alpm = AlpmAPI() self.assertTrue(alpm.compare_versions("1.0", "<=", "2.0")) self.assertTrue(alpm.compare_versions("1.0", "<", "2.0")) self.assertFalse(alpm.compare_versions("1.0", ">=", "2.0")) @@ -24,4 +34,13 @@ class AlpmTestCase(unittest.TestCase): self.assertTrue(alpm.compare_versions("1.0", "=", "1.0-1")) self.assertFalse(alpm.compare_versions("1.0", "!=", "1.0")) + def test_behavior_when_unavailable(self): + mock_alpm = AlpmAPI() + mock_alpm.available = False + + self.assertIsNone(mock_alpm.version()) + self.assertIsNone(mock_alpm.vercmp("1.0", "1.0")) + self.assertIsNone(mock_alpm.compare_versions("1.0", "=", "1.0")) + + # vim: set ts=4 sw=4 et: |