# test_get_operator.py -- Portage Unit Testing Functionality # Copyright 2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 from portage.tests import TestCase from portage.dep import get_operator class GetOperator(TestCase): def testGetOperator(self): # get_operator does not validate operators tests = [ ( "~", "~" ), ( "=", "=" ), ( ">", ">" ), ( ">=", ">=" ), ( "<=", "<=" ), ] test_cpvs = ["sys-apps/portage-2.1"] slots = [ None,"1","linux-2.5.6" ] for cpv in test_cpvs: for test in tests: for slot in slots: atom = cpv[:] if slot: atom += ":" + slot result = get_operator( test[0] + atom ) self.assertEqual( result, test[1], msg="get_operator(%s) != %s" % (test[0] + atom, test[1]) ) result = get_operator( "sys-apps/portage" ) self.assertEqual( result, None ) result = get_operator( "=sys-apps/portage-2.1*" ) self.assertEqual( result , "=*" )