From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 8BB67138E20 for ; Thu, 20 Feb 2014 18:44:05 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 97AE2E0B16; Thu, 20 Feb 2014 18:44:01 +0000 (UTC) Received: from mail-ve0-f201.google.com (mail-ve0-f201.google.com [209.85.128.201]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 1C1B2E076D for ; Thu, 20 Feb 2014 18:44:00 +0000 (UTC) Received: by mail-ve0-f201.google.com with SMTP id jx11so289873veb.4 for ; Thu, 20 Feb 2014 10:44:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id; bh=4H9/VXVYRkkTyzixA0tpnUcC5cs83Hn98tAUYTlGHMM=; b=YHMcMl4zddDL3x5HLuGc8lFG2aLtthGJ6Yjl0nOom6hbztzmxkduAU0O1JZKfKD37V agdXZLaXDlynO7et9d+jw5z10uJkUxmnM63SmyHAhUGJeipWK+lxP/hLcEVcXtgSw271 Pezts/qfpWT/WxRhKY+wkqj2oJgzaIrwafR2SvmyeLj14BCqb2c0ju8IQQ8XVJMzNJ3M lQaz14XW3/a6N1hxjkpxUpoi8rsxk2CajNBZkyzD+tDEIJULDKit5Lg85DwsDPCEJSzN 2SLHHhqFYFGAnw/9sZ2QGhMF2GjSHh3NQvGM7rn17C1zb+Hu13OmblYjPfUlg09WuHgq 77Vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=4H9/VXVYRkkTyzixA0tpnUcC5cs83Hn98tAUYTlGHMM=; b=N1YI+o2d0rlhr0uCodSrRzlcYMvfQXq+sR/iZs3cNBJ/jgSAhJNKicpDkCzeZbADB+ 3q2mofuV8wzXzc9dP3E6k3Q2ndLQbD97Pf3roeHXdRoirXA9l6ovdli2jR20uSZflrvm vMCCqh/4eHojpYFohAZrnuWKyzrHGgBoErzX27c/MrlEBuIPwdLz2ZZAoRD83IixZ2rV RlqR9byFelKYDwLDtfuUVVk6xzPY0U7yBkEAZ6JFyi0l7Z/sWEnhpW9CReiBaDI29B9N CpRQQgdoZgzwCZnWjn6pbhL2/t0Y5BX8HK2npBePFkYQtqtsRZ+UvqVHGZkxpoXfOtDc yORQ== X-Gm-Message-State: ALoCoQk423Yf8EglZAYg/WQbxb4tgblceWBO2pu2Z56jdOeokwH3KQU6ZHy5uZW1ns3Ar0B2cGAP3IzXwFn13DSG73EwPfFCZblsQX2wgrTm+nCG0+0E1ZZ02B8pnkL/Xzlv7UAoTGy3vD0OxNnIzYsmicr35p4opRVtf6g3dzf8krEaX/t+A73sWOezp0BbUpYjVmP1yqJhCltoJUWA8XBY+BHo/NN+Ww== X-Received: by 10.236.228.228 with SMTP id f94mr1219361yhq.43.1392921840351; Thu, 20 Feb 2014 10:44:00 -0800 (PST) Received: from corp2gmr1-1.hot.corp.google.com (corp2gmr1-1.hot.corp.google.com [172.24.189.92]) by gmr-mx.google.com with ESMTPS id k45si268474yhn.4.2014.02.20.10.44.00 for (version=TLSv1.1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 20 Feb 2014 10:44:00 -0800 (PST) Received: from dj-z620.mtv.corp.google.com (dj-z620.mtv.corp.google.com [172.22.72.253]) by corp2gmr1-1.hot.corp.google.com (Postfix) with ESMTP id 317AF31C04E; Thu, 20 Feb 2014 10:44:00 -0800 (PST) Received: by dj-z620.mtv.corp.google.com (Postfix, from userid 104647) id AD3743980543; Thu, 20 Feb 2014 10:43:59 -0800 (PST) From: David James To: gentoo-portage-dev@lists.gentoo.org Cc: vapier@chromium.org, David James Subject: [gentoo-portage-dev] [PATCH] Add a test case for --newuse, --changed-use, and --binpkg-respect-use. Date: Thu, 20 Feb 2014 10:43:58 -0800 Message-Id: <1392921838-17958-1-git-send-email-davidjames@google.com> X-Mailer: git-send-email 1.8.0.2 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-portage-dev@lists.gentoo.org Reply-to: gentoo-portage-dev@lists.gentoo.org X-Archives-Salt: bb963cfa-2684-488f-80d5-ef1ffaa8c6cf X-Archives-Hash: dcbcc90d64fa0f0cf2b773db552a41c8 Change-Id: I201e468c6e7cda6aa961371ad9ddc10cfab04bc7 --- pym/portage/tests/resolver/test_useflags.py | 78 +++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 pym/portage/tests/resolver/test_useflags.py diff --git a/pym/portage/tests/resolver/test_useflags.py b/pym/portage/tests/resolver/test_useflags.py new file mode 100644 index 0000000..0a5f3b3 --- /dev/null +++ b/pym/portage/tests/resolver/test_useflags.py @@ -0,0 +1,78 @@ +# Copyright 2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +from portage.tests import TestCase +from portage.tests.resolver.ResolverPlayground import ResolverPlayground, ResolverPlaygroundTestCase + +class UseFlagsTestCase(TestCase): + + def testUseFlags(self): + ebuilds = { + "dev-libs/A-1": { "IUSE": "X", }, + "dev-libs/B-1": { "IUSE": "X Y", }, + } + + installed = { + "dev-libs/A-1": { "IUSE": "X", }, + "dev-libs/B-1": { "IUSE": "X", }, + } + + binpkgs = installed + + user_config = { + "package.use": ( "dev-libs/A X", ), + "use.force": ( "Y", ), + } + + test_cases = ( + #default: don't reinstall on use flag change + ResolverPlaygroundTestCase( + ["dev-libs/A"], + options = {"--selective": True, "--usepkg": True}, + success = True, + mergelist = []), + + #default: respect use flags for binpkgs + ResolverPlaygroundTestCase( + ["dev-libs/A"], + options = {"--usepkg": True}, + success = True, + mergelist = ["dev-libs/A-1"]), + + #--binpkg-respect-use=n: use binpkgs with different use flags + ResolverPlaygroundTestCase( + ["dev-libs/A"], + options = {"--binpkg-respect-use": "n", "--usepkg": True}, + success = True, + mergelist = ["[binary]dev-libs/A-1"]), + + #--reinstall=changed-use: reinstall if use flag changed + ResolverPlaygroundTestCase( + ["dev-libs/A"], + options = {"--reinstall": "changed-use", "--usepkg": True}, + success = True, + mergelist = ["dev-libs/A-1"]), + + #--reinstall=changed-use: don't reinstall on new use flag + ResolverPlaygroundTestCase( + ["dev-libs/B"], + options = {"--reinstall": "changed-use", "--usepkg": True}, + success = True, + mergelist = []), + + #--newuse: reinstall on new use flag + ResolverPlaygroundTestCase( + ["dev-libs/B"], + options = {"--newuse": True, "--usepkg": True}, + success = True, + mergelist = ["dev-libs/B-1"]), + ) + + playground = ResolverPlayground(ebuilds=ebuilds, + binpkgs=binpkgs, installed=installed, user_config=user_config) + try: + for test_case in test_cases: + playground.run_TestCase(test_case) + self.assertEqual(test_case.test_success, True, test_case.fail_msg) + finally: + playground.cleanup() -- 1.8.0.2