def test_attributes(mixin_cols):
 m = mixin_cols['m']
 m.info.name = 'a'
 assert (m.info.name == 'a')
 m.info.description = 'a'
 assert (m.info.description == 'a')
 if isinstance(m, (u.Quantity, coordinates.SkyCoord, time.Time)):
  with pytest.raises(AttributeError):
   m.info.unit = u.m
 else:
  m.info.unit = u.m
  assert (m.info.unit is u.m)
 m.info.format = 'a'
 assert (m.info.format == 'a')
 m.info.meta = {'a': 1}
 assert (m.info.meta == {'a': 1})
 with pytest.raises(AttributeError):
  m.info.bad_attr = 1
 with pytest.raises(AttributeError):
  m.info.bad_attr

def test_attributes ( mixin_cols ) : m = mixin_cols [ 'm' ] m . info . name = 'a' assert ( m . info . name == 'a' ) m . info . description = 'a' assert ( m . info . description == 'a' ) if isinstance ( m , ( u . Quantity , coordinates . SkyCoord , time . Time ) ) : with pytest . raises ( AttributeError ) : m . info . unit = u . m else : m . info . unit = u . m assert ( m . info . unit is u . m ) m . info . format = 'a' assert ( m . info . format == 'a' ) m . info . meta = { 'a' : 1 } assert ( m . info . meta == { 'a' : 1 } ) with pytest . raises ( AttributeError ) : m . info . bad_attr = 1 with pytest . raises ( AttributeError ) : m . info . bad_attr
test if attribute checks are in place .