@@ -486,6 +486,50 @@ def testNegatives(self):
486486 self .failUnlessEqual (a [- 2 ], 1 )
487487 self .failUnlessEqual (a [- 1 ], 2 )
488488
489+ def testGetElement (self ):
490+ a = Array ([1 ,2 ,3 ,4 ])
491+ self .failUnlessEqual (a .get_element ((0 ,)), 1 )
492+ self .failUnlessEqual (a .get_element ((1 ,)), 2 )
493+ self .failUnlessEqual (a .get_element ((2 ,)), 3 )
494+ self .failUnlessEqual (a .get_element ((3 ,)), 4 )
495+ self .failUnlessEqual (a .get_element ((- 1 ,)), 4 )
496+ self .failUnlessEqual (a .get_element ((- 2 ,)), 3 )
497+ self .failUnlessEqual (a .get_element ((- 3 ,)), 2 )
498+ self .failUnlessEqual (a .get_element ((- 4 ,)), 1 )
499+ self .failUnlessRaises (IndexError , a .get_element , (4 ,))
500+ a = Array ([[1 ,2 ],[3 ,4 ]])
501+ self .failUnlessEqual (a .get_element ((0 ,0 )), 1 )
502+ self .failUnlessEqual (a .get_element ((0 ,1 ,)), 2 )
503+ self .failUnlessEqual (a .get_element ((1 ,0 ,)), 3 )
504+ self .failUnlessEqual (a .get_element ((1 ,1 ,)), 4 )
505+ self .failUnlessEqual (a .get_element ((- 1 ,- 1 )), 4 )
506+ self .failUnlessEqual (a .get_element ((- 1 ,- 2 ,)), 3 )
507+ self .failUnlessEqual (a .get_element ((- 2 ,- 1 ,)), 2 )
508+ self .failUnlessEqual (a .get_element ((- 2 ,- 2 ,)), 1 )
509+ self .failUnlessRaises (IndexError , a .get_element , (2 ,0 ))
510+ self .failUnlessRaises (IndexError , a .get_element , (1 ,2 ))
511+ self .failUnlessRaises (IndexError , a .get_element , (0 ,2 ))
512+
513+ def testSQLGetElement (self ):
514+ a = Array ([1 ,2 ,3 ,4 ])
515+ self .failUnlessEqual (a .sql_get_element ((1 ,)), 1 )
516+ self .failUnlessEqual (a .sql_get_element ((2 ,)), 2 )
517+ self .failUnlessEqual (a .sql_get_element ((3 ,)), 3 )
518+ self .failUnlessEqual (a .sql_get_element ((4 ,)), 4 )
519+ self .failUnlessEqual (a .sql_get_element ((0 ,)), None )
520+ self .failUnlessEqual (a .sql_get_element ((5 ,)), None )
521+ self .failUnlessEqual (a .sql_get_element ((- 1 ,)), None )
522+ self .failUnlessEqual (a .sql_get_element ((- 2 ,)), None )
523+ self .failUnlessEqual (a .sql_get_element ((- 3 ,)), None )
524+ self .failUnlessEqual (a .sql_get_element ((- 4 ,)), None )
525+ a = Array ([[1 ,2 ],[3 ,4 ]])
526+ self .failUnlessEqual (a .sql_get_element ((1 ,1 )), 1 )
527+ self .failUnlessEqual (a .sql_get_element ((1 ,2 ,)), 2 )
528+ self .failUnlessEqual (a .sql_get_element ((2 ,1 ,)), 3 )
529+ self .failUnlessEqual (a .sql_get_element ((2 ,2 ,)), 4 )
530+ self .failUnlessEqual (a .sql_get_element ((3 ,1 )), None )
531+ self .failUnlessEqual (a .sql_get_element ((1 ,3 )), None )
532+
489533if __name__ == '__main__' :
490534 from types import ModuleType
491535 this = ModuleType ("this" )
0 commit comments