summaryrefslogtreecommitdiff
blob: b41fab0d5120fe2613bd3c67ed224ec84aebc4f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# test_match_from_list.py -- Portage Unit Testing Functionality
# Copyright 2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

from unittest import TestCase
from portage.dep import get_operator

class GetOperator(TestCase):

	def testGetOperator(self):

		# get_operator does not validate operators
		tests = [ ( "~", "~" ), ( "=", "=" ), ( ">", ">" ),
			  ( ">=", ">=" ), ( "<=", "<=" ) , ( "", None ),
			  ( ">~", ">" ), ("~<", "~"), ( "=~", "=" ),
			  ( "=>", "=" ), ("=<", "=") ]

		test_cpvs = ["sys-apps/portage","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] )

		result = get_operator( "=sys-apps/portage*" )
		self.assertEqual( result , "=*" )