def main():
- testDirs = ["portage", "portage_util","portage_versions", "portage_dep"]
+ testDirs = ["portage", "portage/util","portage/versions", "portage/dep"]
suite = unittest.TestSuite()
-# tests/portage_dep/__init__.py -- Portage Unit Test functionality
+# tests/portage.dep/__init__.py -- Portage Unit Test functionality
# Copyright 2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# $Id$
from unittest import TestCase
-from portage_dep import dep_getcpv
+from portage.dep import dep_getcpv
class DepGetCPV(TestCase):
""" A simple testcase for isvalidatom
# $Id$
from unittest import TestCase
-from portage_dep import dep_getslot
+from portage.dep import dep_getslot
class DepGetSlot(TestCase):
""" A simple testcase for isvalidatom
# $Id$
from unittest import TestCase
-from portage_dep import get_operator
+from portage.dep import get_operator
class GetOperator(TestCase):
# $Id$
from unittest import TestCase
-from portage_dep import isjustname
+from portage.dep import isjustname
class IsJustName(TestCase):
# $Id$
from unittest import TestCase
-from portage_dep import isvalidatom
+from portage.dep import isvalidatom
class IsValidAtom(TestCase):
""" A simple testcase for isvalidatom
# $Id$
from unittest import TestCase
-from portage_dep import match_from_list
+from portage.dep import match_from_list
class AtomCmpEqualGlob(TestCase):
""" A simple testcase for =* glob matching
-# tests/portage_news/__init__.py -- Portage Unit Test functionality
+# tests/portage.news/__init__.py -- Portage Unit Test functionality
# Copyright 2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
--- /dev/null
+# test_NewsItem.py -- Portage Unit Testing Functionality
+# Copyright 2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id: test_varExpand.py 5596 2007-01-12 08:08:53Z antarus $
+
+from unittest import TestCase, TestLoader
+from portage.news import NewsItem
+from portage.const import PROFILE_PATH
+
+class NewsItemTestCase(TestCase):
+
+ self.fakeItem = """
+Title: YourSQL Upgrades from 4.0 to 4.1
+Author: Ciaran McCreesh <ciaranm@gentoo.org>
+Content-Type: text/plain
+Posted: 01-Nov-2005
+Revision: 1
+#Display-If-Installed:
+#Display-If-Profile:
+#Display-If-Arch:
+
+YourSQL databases created using YourSQL version 4.0 are incompatible
+with YourSQL version 4.1 or later. There is no reliable way to
+automate the database format conversion, so action from the system
+administrator is required before an upgrade can take place.
+
+Please see the Gentoo YourSQL Upgrade Guide for instructions:
+
+ http://www.gentoo.org/doc/en/yoursql-upgrading.xml
+
+Also see the official YourSQL documentation:
+
+ http://dev.yoursql.com/doc/refman/4.1/en/upgrading-from-4-0.html
+
+After upgrading, you should also recompile any packages which link
+against YourSQL:
+
+ revdep-rebuild --library=libyoursqlclient.so.12
+
+The revdep-rebuild tool is provided by app-portage/gentoolkit.
+"""
+
+ from portage import settings
+ import time
+
+ def testDisplayIfProfile():
+ from portage.const import PROFILE_PATH
+ tmpItem = self.fakeItem.replace("#Display-If-Profile:", "Display-If-Profile: %s" %
+ os.readlink( PROFILE_PATH ) )
+
+ item = _processItem(tmpItem)
+ self.assertTrue( item.isRelevant( os.readlink( PROFILE_PATH ) ),
+ msg="Expected %s to be relevant, but it was not!" % tmpItem )
+
+ def testDisplayIfInstalled():
+ tmpItem = self.fakeItem.replace("#Display-If-Installed:", "Display-If-Profile: %s" %
+ "sys-apps/portage" )
+
+ item = _processItem(tmpItem)
+ self.assertTrue( item.isRelevant( portage.settings ),
+ msg="Expected %s to be relevant, but it was not!" % tmpItem )
+
+
+ def testDisplayIfKeyword():
+ from portage import settings
+ tmpItem = self.fakeItem.replace("#Display-If-Keyword:", "Display-If-Keyword: %s" %
+ settings["ACCEPT_KEYWORDS"].split()[0] )
+
+ item = _processItem(tmpItem)
+ self.assertTrue( item.isRelevant( os.readlink( PROFILE_PATH ) ),
+ msg="Expected %s to be relevant, but it was not!" % tmpItem )
+
+
+ def _processItem( self, item ):
+
+ path = os.path.join( settings["PORTAGE_TMPDIR"], str(time.time())
+ f = open( os.path.join( path )
+ f.write(item)
+ f.close
+ try:
+ return NewsItem( path, 0 )
+ except TypeError:
+ self.fail("Error while processing news item %s" % path )
-# tests/portage_util/__init__.py -- Portage Unit Test functionality
+# tests/portage.util/__init__.py -- Portage Unit Test functionality
# Copyright 2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# $Id$
from unittest import TestCase, TestLoader
-from portage_util import grabdict
+from portage.util import grabdict
class GrabDictTestCase(TestCase):
def testNormalizePath(self):
- from portage_util import normalize_path
+ from portage.util import normalize_path
path = "///foo/bar/baz"
good = "/foo/bar/baz"
self.assertEqual(normalize_path(path), good)
class StackDictListTestCase(TestCase):
def testStackDictList(self):
- from portage_util import stack_dictlist
+ from portage.util import stack_dictlist
tests = [ ({'a':'b'},{'x':'y'},False,{'a':['b'],'x':['y']}) ]
tests.append(( {'KEYWORDS':['alpha','x86']},{'KEYWORDS':['-*']},True,{} ))
# $Id$
from unittest import TestCase
-from portage_util import stack_dicts
+from portage.util import stack_dicts
class StackDictsTestCase(TestCase):
# $Id$
from unittest import TestCase
-from portage_util import stack_lists
+from portage.util import stack_lists
class StackListsTestCase(TestCase):
# $Id$
from unittest import TestCase
-from portage_util import unique_array
+from portage.util import unique_array
class UniqueArrayTestCase(TestCase):
def testUniqueArrayPass(self):
"""
- test portage_util.uniqueArray()
+ test portage.util.uniqueArray()
"""
import os
# $Id$
from unittest import TestCase, TestLoader
-from portage_util import varexpand
+from portage.util import varexpand
class VarExpandTestCase(TestCase):
-# tests/portage_versions/__init__.py -- Portage Unit Test functionality
+# tests/portage.versions/__init__.py -- Portage Unit Test functionality
# Copyright 2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# $Id$
from unittest import TestCase
-from portage_versions import vercmp
+from portage.versions import vercmp
class VerCmpTestCase(TestCase):
- """ A simple testCase for portage_versions.vercmp()
+ """ A simple testCase for portage.versions.vercmp()
"""
def testVerCmpGreater(self):