Revision: 603 http://rpy.svn.sourceforge.net/rpy/?rev=603&view=rev Author: lgautier Date: 2008-08-03 09:11:31 +0000 (Sun, 03 Aug 2008)
Log Message: ----------- Implemented __setslice__ and added tests Modified Paths: -------------- branches/rpy_nextgen/rpy/rlike/container.py branches/rpy_nextgen/rpy/rlike/tests/test_container.py Modified: branches/rpy_nextgen/rpy/rlike/container.py =================================================================== --- branches/rpy_nextgen/rpy/rlike/container.py 2008-08-03 08:48:24 UTC (rev 602) +++ branches/rpy_nextgen/rpy/rlike/container.py 2008-08-03 09:11:31 UTC (rev 603) @@ -171,8 +171,9 @@ raise ValueError("Parameter 'tags' must be either a list or 'None'.") def __setslice__(self, i, j, y): - #FIXME: implement - raise Exception("Not yet implemented.") + super(TaggedList, self).__setslice__(i, j, y) + #FIXME: handle TaggedList ? + #self.__tags.__setslice__(i, j, [None, ]) def append(self, obj, tag = None): super(TaggedList, self).append(obj) Modified: branches/rpy_nextgen/rpy/rlike/tests/test_container.py =================================================================== --- branches/rpy_nextgen/rpy/rlike/tests/test_container.py 2008-08-03 08:48:24 UTC (rev 602) +++ branches/rpy_nextgen/rpy/rlike/tests/test_container.py 2008-08-03 09:11:31 UTC (rev 603) @@ -93,7 +93,13 @@ self.assertEquals(tuple(tl), (1, 3)) def test__delslice__(self): - self.assertTrue(False) # no test (yet) + tn = ['a', 'b', 'c', 'd'] + tv = [1,2,3,4] + tl = rlc.TaggedList(tv, tags = tn) + del tl[1:3] + self.assertEquals(2, len(tl)) + self.assertEquals(tl.tags(), ('a', 'd')) + self.assertEquals(tuple(tl), (1, 4)) def test__iadd__(self): tn = ['a', 'b', 'c'] @@ -119,11 +125,16 @@ tl = rlc.TaggedList(tv, tags = tn) self.assertRaises(TypeError, rlc.TaggedList, tv, tags=123) - self.assertRaises(ValueError, rlc.TaggedList, tv, tags=('a', 'b')) - + self.assertRaises(ValueError, rlc.TaggedList, tv, tags=('a', 'b')) def test__setslice__(self): - self.assertTrue(False) # no test (yet) + tn = ['a', 'b', 'c', 'd'] + tv = [1,2,3,4] + tl = rlc.TaggedList(tv, tags = tn) + tl[1:3] = [5, 6] + self.assertEquals(4, len(tl)) + self.assertEquals(tl.tags(), ('a', 'b', 'c', 'd')) + self.assertEquals(tuple(tl), (1, 5, 6, 4)) def testappend(self): tn = ['a', 'b', 'c'] @@ -204,7 +215,7 @@ self.assertEquals(tuple(tl), (3, 2, 1)) def testsort(self): - self.assertTrue(False) # no test (yet) + self.assertTrue(False) # not implemented (yet) def testtags(self): tn = ['a', 'b', 'c'] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ rpy-list mailing list rpy-list@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rpy-list