aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'lib/portage/tests/dep/test_standalone.py')
-rw-r--r--lib/portage/tests/dep/test_standalone.py44
1 files changed, 44 insertions, 0 deletions
diff --git a/lib/portage/tests/dep/test_standalone.py b/lib/portage/tests/dep/test_standalone.py
new file mode 100644
index 000000000..3b6cb12d7
--- /dev/null
+++ b/lib/portage/tests/dep/test_standalone.py
@@ -0,0 +1,44 @@
+# Copyright 2010-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+from portage.tests import TestCase
+from portage.dep import cpvequal
+from portage.exception import PortageException
+
+
+class TestStandalone(TestCase):
+ """Test some small functions portage.dep"""
+
+ def testCPVequal(self):
+ test_cases = (
+ ("sys-apps/portage-2.1", "sys-apps/portage-2.1", True),
+ ("sys-apps/portage-2.1", "sys-apps/portage-2.0", False),
+ ("sys-apps/portage-2.1", "sys-apps/portage-2.1-r1", False),
+ ("sys-apps/portage-2.1-r1", "sys-apps/portage-2.1", False),
+ ("sys-apps/portage-2.1_alpha3", "sys-apps/portage-2.1", False),
+ ("sys-apps/portage-2.1_alpha3_p6", "sys-apps/portage-2.1_alpha3", False),
+ ("sys-apps/portage-2.1_alpha3", "sys-apps/portage-2.1", False),
+ ("sys-apps/portage-2.1", "sys-apps/X-2.1", False),
+ ("sys-apps/portage-2.1", "portage-2.1", False),
+ )
+
+ test_cases_xfail = (
+ ("sys-apps/portage", "sys-apps/portage"),
+ ("sys-apps/portage-2.1-6", "sys-apps/portage-2.1-6"),
+ )
+
+ for cpv1, cpv2, expected_result in test_cases:
+ self.assertEqual(
+ cpvequal(cpv1, cpv2),
+ expected_result,
+ f"cpvequal('{cpv1}', '{cpv2}') != {expected_result}",
+ )
+
+ for cpv1, cpv2 in test_cases_xfail:
+ self.assertRaisesMsg(
+ f"cpvequal({cpv1}, {cpv2})",
+ PortageException,
+ cpvequal,
+ cpv1,
+ cpv2,
+ )