From 60d7d3cf4364a1cc41cf98b57359a0faf1fdc5bd Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Wed, 19 Sep 2012 12:48:24 -0700 Subject: update_dbentry: improve slotmove support This could be especially useful for "built" slot operator deps, in order to avoid having a slotmove trigger unnecessary rebuilds. --- pym/portage/tests/update/test_update_dbentry.py | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'pym/portage/tests') diff --git a/pym/portage/tests/update/test_update_dbentry.py b/pym/portage/tests/update/test_update_dbentry.py index e13cfed74..ac16a8ae3 100644 --- a/pym/portage/tests/update/test_update_dbentry.py +++ b/pym/portage/tests/update/test_update_dbentry.py @@ -6,14 +6,40 @@ import textwrap import portage from portage import os +from portage.dep import Atom from portage.tests import TestCase from portage.tests.resolver.ResolverPlayground import ResolverPlayground +from portage.update import update_dbentry from portage.util import ensure_dirs from portage._global_updates import _do_global_updates class UpdateDbentryTestCase(TestCase): def testUpdateDbentryTestCase(self): + cases = ( + (("slotmove", Atom("dev-libs/A"), "0", "1"), "1", + " dev-libs/A:0 ", " dev-libs/A:1 "), + + (("slotmove", Atom("dev-libs/A"), "0", "1"), "1", + " >=dev-libs/A-1:0 ", " >=dev-libs/A-1:1 "), + + (("slotmove", Atom("dev-libs/A"), "0", "1"), "5_pre2", + " dev-libs/A:0/1=[foo] ", " dev-libs/A:1/1=[foo] "), + + (("slotmove", Atom("dev-libs/A"), "0", "1"), "5_pre2", + " dev-libs/A:0/1[foo] ", " dev-libs/A:1/1[foo] "), + + (("slotmove", Atom("dev-libs/A"), "0", "1"), "5_pre2", + " dev-libs/A:0/0[foo] ", " dev-libs/A:1/1[foo] "), + + (("slotmove", Atom("dev-libs/A"), "0", "1"), "5_pre2", + " dev-libs/A:0=[foo] ", " dev-libs/A:1=[foo] "), + ) + for update_cmd, eapi, input_str, output_str in cases: + result = update_dbentry(update_cmd, input_str, eapi=eapi) + self.assertEqual(result, output_str) + + def testUpdateDbentryDbapiTestCase(self): ebuilds = { -- cgit v1.2.3-1-g7c22