summaryrefslogtreecommitdiff
blob: 4868184a6f9638f86db012efd62b1315f1621642 (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 match_from_list

class AtomCmpEqualGlob(TestCase):
        """ A simple testcase for =* glob matching
        """

        def testEqualGlobPass(self):
                tests = [ ("=sys-apps/portage-45*", "sys-apps/portage-045" ),
                          ("=sys-fs/udev-1*", "sys-fs/udev-123"),
                          ("=sys-fs/udev-4*", "sys-fs/udev-456" ) ]

# I need to look up the cvs syntax
#                         ("=sys-fs/udev_cvs*","sys-fs/udev_cvs_pre4" ) ]

                for test in tests:
                        self.assertEqual( len(match_from_list( test[0], [test[1]] )), 1 )

        def testEqualGlobFail(self):
                tests = [ ("=sys-apps/portage-2*", "sys-apps/portage-2.1" ),
                          ("=sys-apps/portage-2.1*", "sys-apps/portage-2.1.2" ) ]
                for test in tests:
                        try:
                                self.assertEqual( len( match_from_list( test[0], [test[1]] ) ), 1 )
                        except TypeError: # failure is ok here
                                pass