summaryrefslogtreecommitdiffstats
path: root/pym/portage/tests/emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-10-23 15:15:34 -0700
committerZac Medico <zmedico@gentoo.org>2011-10-23 15:15:34 -0700
commit32282d6a5105ebcd0f5ed0229803ec194025f6d6 (patch)
tree1d6ada9e4b297b35b7766fc4e61b4a95277a865e /pym/portage/tests/emerge
parent0bd369f1adc774e41c686f6651fe47a1a13ba268 (diff)
downloadportage-32282d6a5105ebcd0f5ed0229803ec194025f6d6.tar.gz
portage-32282d6a5105ebcd0f5ed0229803ec194025f6d6.tar.bz2
portage-32282d6a5105ebcd0f5ed0229803ec194025f6d6.zip
test bug #388187
Diffstat (limited to 'pym/portage/tests/emerge')
-rw-r--r--pym/portage/tests/emerge/test_global_updates.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/pym/portage/tests/emerge/test_global_updates.py b/pym/portage/tests/emerge/test_global_updates.py
new file mode 100644
index 000000000..add4590e5
--- /dev/null
+++ b/pym/portage/tests/emerge/test_global_updates.py
@@ -0,0 +1,37 @@
+# Copyright 2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+from portage.tests import TestCase
+from portage.update import parse_updates
+from portage.dep import Atom
+
+class ParseUpdatesTestCase(TestCase):
+
+ def testParseUpdates(self):
+ test_cases = (
+ (
+ """
+slotmove invalid_atom 0 3
+slotmove !=invalid/blocker-3* 0 3
+slotmove =valid/atom-3* 0 3 invalid_extra_token
+slotmove =valid/atom-3* 0 3
+move valid/atom1 valid/atom2 invalid_extra_token
+move valid/atom1 invalid_atom2
+move invalid_atom1 valid/atom2
+move !invalid/blocker1 valid/atom2
+move valid/atom1 !invalid/blocker2
+move valid/atom1 valid/atom2
+""",
+ [
+ ['slotmove', Atom('=valid/atom-3*'), '0', '3'],
+ ['move', 'valid/atom1', 'valid/atom2'],
+ ],
+ 8,
+ ),
+
+ )
+
+ for input_content, expected_output, expected_error_count in test_cases:
+ output_data, errors = parse_updates(input_content)
+ self.assertEqual(output_data, expected_output)
+ self.assertEqual(len(errors), expected_error_count)