def test_add(session): h = Axis('h=h0..h2') h01 = h['h0,h1'] >> 'h01' session.add(h, h01, i='i') assert h.equals(session.h) assert h01 == session.h01 assert session.i == 'i'
def test_add(session): i = Axis('i=i0..i2') i01 = i['i0,i1'] >> 'i01' session.add(i, i01, j='j') assert i.equals(session.i) assert i01 == session.i01 assert session.j == 'j'
def test_h5_io(tmpdir): age = Axis('age=0..10') lipro = Axis('lipro=P01..P05') anonymous = Axis(range(3)) wildcard = Axis(3, 'wildcard') string_axis = Axis(['@!àéè&%µ$~', '/*-+_§()><', 'another label'], 'string_axis') fpath = os.path.join(str(tmpdir), 'axes.h5') # ---- default behavior ---- # int axis age.to_hdf(fpath) age2 = read_hdf(fpath, key=age.name) assert age.equals(age2) # string axis lipro.to_hdf(fpath) lipro2 = read_hdf(fpath, key=lipro.name) assert lipro.equals(lipro2) # anonymous axis with pytest.raises( ValueError, match= "Argument key must be provided explicitly in case of anonymous axis" ): anonymous.to_hdf(fpath) # wildcard axis wildcard.to_hdf(fpath) wildcard2 = read_hdf(fpath, key=wildcard.name) assert wildcard2.iswildcard assert wildcard.equals(wildcard2) # string axis string_axis.to_hdf(fpath) string_axis2 = read_hdf(fpath, string_axis.name) assert string_axis.equals(string_axis2) # ---- specific key ---- # int axis key = 'axis_age' age.to_hdf(fpath, key) age2 = read_hdf(fpath, key=key) assert age.equals(age2) # string axis key = 'axis_lipro' lipro.to_hdf(fpath, key) lipro2 = read_hdf(fpath, key=key) assert lipro.equals(lipro2) # anonymous axis key = 'axis_anonymous' anonymous.to_hdf(fpath, key) anonymous2 = read_hdf(fpath, key=key) assert anonymous2.name is None assert_array_equal(anonymous.labels, anonymous2.labels) # wildcard axis key = 'axis_wildcard' wildcard.to_hdf(fpath, key) wildcard2 = read_hdf(fpath, key=key) assert wildcard2.iswildcard assert wildcard.equals(wildcard2) # ---- specific hdf group + key ---- hdf_group = 'my_axes' # int axis key = hdf_group + '/axis_age' age.to_hdf(fpath, key) age2 = read_hdf(fpath, key=key) assert age.equals(age2) # string axis key = hdf_group + '/axis_lipro' lipro.to_hdf(fpath, key) lipro2 = read_hdf(fpath, key=key) assert lipro.equals(lipro2) # anonymous axis key = hdf_group + '/axis_anonymous' anonymous.to_hdf(fpath, key) anonymous2 = read_hdf(fpath, key=key) assert anonymous2.name is None assert_array_equal(anonymous.labels, anonymous2.labels) # wildcard axis key = hdf_group + '/axis_wildcard' wildcard.to_hdf(fpath, key) wildcard2 = read_hdf(fpath, key=key) assert wildcard2.iswildcard assert wildcard.equals(wildcard2)
def test_add(self): s = self.session h = Axis([], 'h') s.add(h, i='i') self.assertTrue(h.equals(s.h)) self.assertEqual(s.i, 'i')
def test_h5_io(tmpdir): age = Axis('age=0..10') lipro = Axis('lipro=P01..P05') anonymous = Axis(range(3)) wildcard = Axis(3, 'wildcard') fpath = os.path.join(str(tmpdir), 'axes.h5') # ---- default behavior ---- # int axis age.to_hdf(fpath) age2 = read_hdf(fpath, key=age.name) assert age.equals(age2) # string axis lipro.to_hdf(fpath) lipro2 = read_hdf(fpath, key=lipro.name) assert lipro.equals(lipro2) # anonymous axis with pytest.raises(ValueError, message="Argument key must be provided explicitly in case of anonymous axis"): anonymous.to_hdf(fpath) # wildcard axis wildcard.to_hdf(fpath) wildcard2 = read_hdf(fpath, key=wildcard.name) assert wildcard2.iswildcard assert wildcard.equals(wildcard2) # ---- specific key ---- # int axis key = 'axis_age' age.to_hdf(fpath, key) age2 = read_hdf(fpath, key=key) assert age.equals(age2) # string axis key = 'axis_lipro' lipro.to_hdf(fpath, key) lipro2 = read_hdf(fpath, key=key) assert lipro.equals(lipro2) # anonymous axis key = 'axis_anonymous' anonymous.to_hdf(fpath, key) anonymous2 = read_hdf(fpath, key=key) assert anonymous2.name is None assert_array_equal(anonymous.labels, anonymous2.labels) # wildcard axis key = 'axis_wildcard' wildcard.to_hdf(fpath, key) wildcard2 = read_hdf(fpath, key=key) assert wildcard2.iswildcard assert wildcard.equals(wildcard2) # ---- specific hdf group + key ---- hdf_group = 'my_axes' # int axis key = hdf_group + '/axis_age' age.to_hdf(fpath, key) age2 = read_hdf(fpath, key=key) assert age.equals(age2) # string axis key = hdf_group + '/axis_lipro' lipro.to_hdf(fpath, key) lipro2 = read_hdf(fpath, key=key) assert lipro.equals(lipro2) # anonymous axis key = hdf_group + '/axis_anonymous' anonymous.to_hdf(fpath, key) anonymous2 = read_hdf(fpath, key=key) assert anonymous2.name is None assert_array_equal(anonymous.labels, anonymous2.labels) # wildcard axis key = hdf_group + '/axis_wildcard' wildcard.to_hdf(fpath, key) wildcard2 = read_hdf(fpath, key=key) assert wildcard2.iswildcard assert wildcard.equals(wildcard2)