def test_hdf5_overwrite(): filename = "matlib.h5" if filename in os.listdir("."): os.remove(filename) water = Material() water.from_atom_frac({10000000: 2.0, 80000000: 1.0}) water.metadata["name"] = "Aqua sera." lib = {"aqua": water} wmatlib = MaterialLibrary(lib) wmatlib.write_hdf5(filename, "/mats1") lib = {"leu": Material(leu)} umatlib = MaterialLibrary(lib) # test error raise if path already exists assert_raises(RuntimeError, umatlib.write_hdf5, filename, "/mats1", False) # test overwriting umatlib.write_hdf5(filename, "/mats1", h5_overwrite=True) rmatlib = MaterialLibrary() rmatlib.from_hdf5(filename, "/mats1") # Round trip! assert_equal(set(umatlib), set(rmatlib)) for key in rmatlib: assert_mat_almost_equal(umatlib[key], rmatlib[key]) os.remove(filename)
def test_matlib_hdf5_nuc_data(): matlib = MaterialLibrary() matlib.from_hdf5(nuc_data, "/materials") matlib.write_hdf5("matlib_test.h5") mat_lib_load_test = MaterialLibrary("matlib_test.h5") os.remove("matlib_test.h5") for key in matlib: assert_mat_almost_equal(matlib[key], mat_lib_load_test[key])
def test_matlib_hdf5(): filename = "matlib.h5" if filename in os.listdir("."): os.remove(filename) water = Material() water.from_atom_frac({10000000: 2.0, 80000000: 1.0}) water.metadata["name"] = "Aqua sera." lib = {"leu": Material(leu), "nucvec": nucvec, "aqua": water} wmatlib = MaterialLibrary(lib) wmatlib.write_hdf5(filename, "/mats1") rmatlib = MaterialLibrary() rmatlib.from_hdf5(filename, "/mats1") os.remove(filename) # Round trip! rmatlib.write_hdf5(filename, "/mats1") wmatlib = MaterialLibrary(filename, "/mats1") assert_equal(set(wmatlib), set(rmatlib)) for key in rmatlib: assert_mat_almost_equal(wmatlib[key], rmatlib[key]) os.remove(filename)