2015-10-24 10:54:59 +08:00
|
|
|
import unittest
|
|
|
|
|
|
|
|
import h5py
|
|
|
|
import numpy as np
|
|
|
|
|
|
|
|
|
|
|
|
class TypesCase(unittest.TestCase):
|
|
|
|
def test_types(self):
|
|
|
|
d = {
|
2015-10-28 18:33:42 +08:00
|
|
|
"bool": True,
|
2015-10-24 10:54:59 +08:00
|
|
|
"int": 42,
|
|
|
|
"float": 42.0,
|
|
|
|
"string": "abcdef",
|
|
|
|
}
|
|
|
|
|
|
|
|
for size in 8, 16, 32, 64:
|
2016-04-05 14:58:01 +08:00
|
|
|
for typ in "int", "uint":
|
|
|
|
dt = getattr(np, typ + str(size))
|
|
|
|
d[typ+str(size)] = dt(42)
|
|
|
|
d["n"+typ+str(size)] = np.array(42, dt)
|
|
|
|
d["m"+typ+str(size)] = np.array([[[[42]]]], dt)
|
2015-10-24 10:54:59 +08:00
|
|
|
for size in 16, 32, 64:
|
2015-10-28 18:33:42 +08:00
|
|
|
d["f"+str(size)] = getattr(np, "float" + str(size))(42)
|
2015-10-24 10:54:59 +08:00
|
|
|
|
2016-04-05 14:54:22 +08:00
|
|
|
with h5py.File("h5types.h5", "w", "core", backing_store=False) as f:
|
2016-04-05 15:26:48 +08:00
|
|
|
for k, v in d.items():
|
|
|
|
f[k] = v
|