def TestDefaultConstructor(self): """Test default constructor""" variable = cisstMultiTaskPython.mtsDoubleMat() self.failUnless(isinstance(variable, cisstMultiTaskPython.mtsDoubleMat)) data = variable.Data() # this is an array self.failUnless(isinstance(data, numpy.ndarray)) # dimension is 2 self.failUnless(numpy.ndim(data) == 2) # size is 0 by default self.failUnless(data.size == 0)
def TestModify(self): """Test data modification""" variable = cisstMultiTaskPython.mtsDoubleMat(3, 7) # data is a reference so modifying it should data = variable.Data() data.fill(5.0) data2 = variable.Data() # these are two different objects (Python) self.failUnless(data is not data2) # but they should be equal allEqual = (data2 == data).all() self.failUnless(allEqual) # always! data2[2, 2] = 10.0 allEqual = (data2 == data).all() self.failUnless(allEqual)
def TestSizeConstructor(self): """Test constructor with size""" variable = cisstMultiTaskPython.mtsDoubleMat(10, 5) self.failUnless(isinstance(variable, cisstMultiTaskPython.mtsDoubleMat)) data = variable.Data() # this is an array self.failUnless(isinstance(data, numpy.ndarray)) # dimension is 2 self.failUnless(numpy.ndim(data) == 2) # size is 10 * 5 based on constructor parameter self.failUnless(data.size == 10 * 5) self.failUnless(data.shape == (10, 5)) # make sure content is zeros zeroMatrix = numpy.zeros((10, 5), numpy.float) allEqual = (zeroMatrix == data).all() self.failUnless(allEqual)