[Zope-Checkins] CVS: Zope2 - testPathIndex.py:1.1.2.4

andreas@serenade.digicool.com andreas@serenade.digicool.com
Thu, 17 May 2001 08:12:56 -0400


Update of /cvs-repository/Zope2/lib/python/Products/PluginIndexes/tests
In directory serenade:/tmp/cvs-serv29656/tests

Modified Files:
      Tag: ajung-dropin-registry
	testPathIndex.py 
Log Message:
more tests



--- Updated File testPathIndex.py in package Zope2 --
--- testPathIndex.py	2001/05/16 20:18:54	1.1.2.3
+++ testPathIndex.py	2001/05/17 12:12:56	1.1.2.4
@@ -91,11 +91,10 @@
     sys.path[0] = '../../'
     import Testing
 
-import ZODB
 import unittest
 from Products.PluginIndexes.PathIndex.PathIndex import PathIndex
-import string
 
+
 class Dummy:
 
     meta_type="foo"
@@ -103,7 +102,7 @@
         self.path = path
 
     def getPhysicalPath(self):
-        return string.split(self.path,'/')
+        return self.path.split('/')
 
     
     def __str__( self ):
@@ -113,7 +112,7 @@
 
 class TestCase( unittest.TestCase ):
     """
-        Test FieldIndex objects.
+        Test PathIndex objects.
     """
 
     def setUp( self ):
@@ -121,24 +120,24 @@
         """
         self._index = PathIndex( 'path' )
         self._values = {
-          1 : Dummy("/aa/aa/aa"),
-          2 : Dummy("/aa/aa/bb"),
-          3 : Dummy("/aa/aa/cc"),
-          4 : Dummy("/aa/bb/aa"),
-          5 : Dummy("/aa/bb/bb"),
-          6 : Dummy("/aa/bb/cc"),
-          7 : Dummy("/aa/cc/aa"),
-          8 : Dummy("/aa/cc/bb"),
-          9 : Dummy("/aa/cc/cc"),
-          10 : Dummy("/bb/aa/aa"),
-          11 : Dummy("/bb/aa/bb"),
-          12 : Dummy("/bb/aa/cc"),
-          13 : Dummy("/bb/bb/aa"),
-          14 : Dummy("/bb/bb/bb"),
-          15 : Dummy("/bb/bb/cc"),
-          16 : Dummy("/bb/cc/aa"),
-          17 : Dummy("/bb/cc/bb"),
-          18 : Dummy("/bb/cc/cc")
+          1 : Dummy("/aa/aa/aa/1.html"),
+          2 : Dummy("/aa/aa/bb/2.html"),
+          3 : Dummy("/aa/aa/cc/3.html"),
+          4 : Dummy("/aa/bb/aa/4.html"),
+          5 : Dummy("/aa/bb/bb/5.html"),
+          6 : Dummy("/aa/bb/cc/6.html"),
+          7 : Dummy("/aa/cc/aa/7.html"),
+          8 : Dummy("/aa/cc/bb/8.html"),
+          9 : Dummy("/aa/cc/cc/9.html"),
+          10 : Dummy("/bb/aa/aa/10.html"),
+          11 : Dummy("/bb/aa/bb/11.html"),
+          12 : Dummy("/bb/aa/cc/12.html"),
+          13 : Dummy("/bb/bb/aa/13.html"),
+          14 : Dummy("/bb/bb/bb/14.html"),
+          15 : Dummy("/bb/bb/cc/15.html"),
+          16 : Dummy("/bb/cc/aa/16.html"),
+          17 : Dummy("/bb/cc/bb/17html"),
+          18 : Dummy("/bb/cc/cc/18html")
         }
 
 
@@ -150,9 +149,9 @@
         for k, v in self._values.items():
             self._index.index_object( k, v )
 
- 
+           
     def testEmpty( self ):
-        "Test an empty FieldIndex."
+        "Test an empty PathIndex."
 
         assert len( self._index ) == 0
         assert self._index.getEntryForObject( 1234 ) is None
@@ -168,9 +167,27 @@
         lst = list(res[0].keys())
         assert lst==[1,2,3,4,5,6,7,8,9],res
 
+        res= self._index._apply_index( {"path":"aa","path_level":1})
+        lst = list(res[0].keys())
+        assert lst==[1,2,3,10,11,12],res
+
         res= self._index._apply_index( {"path":"bb","path_level":0})
         lst = list(res[0].keys())
         assert lst==[10,11,12,13,14,15,16,17,18],res
+
+
+        res= self._index._apply_index( {"path":"bb","path_level":1})
+        lst = list(res[0].keys())
+        assert lst==[4,5,6,13,14,15],res
+
+
+        res= self._index._apply_index( {"path":"/bb/cc","path_level":0})
+        lst = list(res[0].keys())
+        assert lst==[16,17,18],res
+
+        res= self._index._apply_index( {"path":"/bb/cc","path_level":1})
+        lst = list(res[0].keys())
+        assert lst==[6,15],res
         
 def test_suite():
     return unittest.makeSuite( TestCase )