def testBaseVLenUnicodeTypeItem(self): dt = special_dtype(vlen=six.text_type) typeItem = h5type.getTypeItem(dt) self.assertEqual(typeItem['class'], 'H5T_STRING') self.assertEqual(typeItem['length'], 'H5T_VARIABLE') self.assertEqual(typeItem['strPad'], 'H5T_STR_NULLTERM') self.assertEqual(typeItem['charSet'], 'H5T_CSET_UTF8')
def testBaseVLenAsciiTypeItem(self): dt = special_dtype(vlen=six.binary_type) typeItem = h5type.getTypeItem(dt) self.assertEqual(typeItem['class'], 'H5T_STRING') self.assertEqual(typeItem['length'], 'H5T_VARIABLE') self.assertEqual(typeItem['strPad'], 'H5T_STR_NULLTERM') self.assertEqual(typeItem['charSet'], 'H5T_CSET_ASCII')
def testVlenDataItem(self): dt = special_dtype(vlen=np.dtype('int32')) typeItem = h5type.getTypeItem(dt) self.assertEqual(typeItem['class'], 'H5T_VLEN') self.assertEqual(typeItem['size'], 'H5T_VARIABLE') baseItem = typeItem['base'] self.assertEqual(baseItem['base'], 'H5T_STD_I32LE')
def testRefType(self): # todo - special_dtype not implemented dt = special_dtype(ref=Reference) self.assertEqual(dt.kind, 'S') self.assertTrue(dt.metadata['ref'] is Reference) reftype = check_dtype(ref=dt) self.assertTrue(reftype is Reference)
def testBaseEnumTypeItem(self): mapping = {'RED': 0, 'GREEN': 1, 'BLUE': 2} dt = special_dtype(enum=(np.int8, mapping)) typeItem = h5type.getTypeItem(dt) self.assertEqual(typeItem['class'], 'H5T_ENUM') baseItem = typeItem['base'] self.assertEqual(baseItem['class'], 'H5T_INTEGER') self.assertEqual(baseItem['base'], 'H5T_STD_I8LE') self.assertTrue('mapping' in typeItem) self.assertEqual(typeItem['mapping']['GREEN'], 1)