From b7fbec5157cbe5a4faaa3d04d3656e354a805e11 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 10 Jun 2011 19:08:46 -0700 Subject: Add tests for fakedbapi. --- pym/portage/tests/dbapi/__init__.py | 2 ++ pym/portage/tests/dbapi/__test__ | 0 pym/portage/tests/dbapi/test_fakedbapi.py | 42 +++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 pym/portage/tests/dbapi/__init__.py create mode 100644 pym/portage/tests/dbapi/__test__ create mode 100644 pym/portage/tests/dbapi/test_fakedbapi.py (limited to 'pym') diff --git a/pym/portage/tests/dbapi/__init__.py b/pym/portage/tests/dbapi/__init__.py new file mode 100644 index 000000000..532918b6a --- /dev/null +++ b/pym/portage/tests/dbapi/__init__.py @@ -0,0 +1,2 @@ +# Copyright 2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 diff --git a/pym/portage/tests/dbapi/__test__ b/pym/portage/tests/dbapi/__test__ new file mode 100644 index 000000000..e69de29bb diff --git a/pym/portage/tests/dbapi/test_fakedbapi.py b/pym/portage/tests/dbapi/test_fakedbapi.py new file mode 100644 index 000000000..ed24782eb --- /dev/null +++ b/pym/portage/tests/dbapi/test_fakedbapi.py @@ -0,0 +1,42 @@ +# Copyright 2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +from portage.dbapi.virtual import fakedbapi +from portage.package.ebuild.config import config +from portage.tests import TestCase + +class TestFakedbapi(TestCase): + + def testFakedbapi(self): + packages = ( + ("sys-apps/portage-2.1.10", { + "EAPI" : "2", + "IUSE" : "ipc doc", + "repository" : "gentoo", + "SLOT" : "0", + "USE" : "ipc", + }), + ("virtual/package-manager-0", { + "EAPI" : "0", + "repository" : "gentoo", + "SLOT" : "0", + }), + ) + + match_tests = ( + ("sys-apps/portage:0[ipc]", ["sys-apps/portage-2.1.10"]), + ("sys-apps/portage:0[-ipc]", []), + ("sys-apps/portage:0[doc]", []), + ("sys-apps/portage:0[-doc]", ["sys-apps/portage-2.1.10"]), + ("sys-apps/portage:0::gentoo[ipc]", ["sys-apps/portage-2.1.10"]), + ("sys-apps/portage:0::multilib[ipc]", []), + ("virtual/package-manager", ["virtual/package-manager-0"]), + ) + + fakedb = fakedbapi(settings=config(config_profile_path="")) + for cpv, metadata in packages: + fakedb.cpv_inject(cpv, metadata=metadata) + + for atom, expected_result in match_tests: + result = [] + self.assertEqual( fakedb.match(atom), expected_result ) -- cgit v1.2.3-1-g7c22