Changeset 211
- Timestamp:
- 06/10/08 16:18:07 (5 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
projects/Twisted-Goodies/trunk/twisted_goodies/pybywire/flexarray.py
r210 r211 106 106 for k, value in enumerate(contentList): 107 107 newVersion._O[k] = value 108 return newVersion 108 109 109 110 def __init__(self, *shape): projects/Twisted-Goodies/trunk/twisted_goodies/pybywire/test/test_flexarray.py
r210 r211 61 61 return x 62 62 63 def failUnlessStringArray(self, x, rows, cols, rOffset=0, cOffset=0): 64 for j in xrange(rows): 65 for k in xrange(cols): 66 self.failUnlessEqual( 67 x[j,k], 68 "%d:%d" % (j+rOffset, k+cOffset)) 69 63 70 64 71 class Test_FlexArray_access(FlexArray_BC): … … 89 96 y = x[1:,1:3] 90 97 self.failUnlessEqual(y.shape, (2,2)) 91 for j in (0,1): 92 for k in (0,1): 93 self.failUnlessEqual(y[j,k], "%d:%d" % (j+1, k+1)) 98 self.failUnlessStringArray(y, 2, 2, 1, 1) 94 99 95 100 def test_set_slice_1d(self): … … 133 138 self.failUnlessEqual(j, 2) 134 139 140 141 class Test_FlexArray_ops(FlexArray_BC): 135 142 def test_concatenate_1d(self): 136 143 x = self._make_stringArray(3, 1) … … 140 147 self.failUnlessEqual(y[3,0], '0:0') 141 148 142 143 class Test_FlexArray_actsLikeArray(FlexArray_BC):144 149 def test_copy(self): 145 150 x = self._make_stringArray(2, 3) … … 151 156 z[1,2] = "another_new_string" 152 157 self.failIfEqual(z, x) 153 158 159 def test_asTuple(self): 160 x = self._make_stringArray(2, 3) 161 y = x.asTuple() 162 self.failUnlessEqual(len(y), 2) 163 self.failUnlessEqual(y[0], (2, 3)) 164 self.failUnlessEqual(y[1], ['0:0', '0:1', '0:2', '1:0', '1:1', '1:2']) 165 166 def test_fromTuple(self): 167 y = ((2, 3), ['0:0', '0:1', '0:2', '1:0', '1:1', '1:2']) 168 x = FlexArray.fromTuple(y) 169 self.failUnlessEqual(x.shape, (2, 3)) 170 self.failUnlessStringArray(x, 2, 3) 171 172 def test_ToAndFromTuple(self): 173 x = self._make_stringArray(5, 13) 174 x[1,1] = None 175 x[2,2] = 12.345 176 x[2,3] = {'I':'am', 'a':'dict'} 177 raveled = x.ravel() 178 for round in xrange(10): 179 y = x.asTuple() 180 x = FlexArray.fromTuple(y) 181 for k, value in enumerate(x.ravel()): 182 self.failUnlessEqual(value, raveled[k]) 183 154 184 155 185 class Test_FlexArray_elements(FlexArray_BC):
