def test_serialize(self): serialized_instance = db.Object.from_object( m.Gaussian() ) assert len( serialized_instance.children ) == 3
def test_embedded_query( session, aggregator ): model_1 = db.Fit( id="model_1", instance=af.Collection( gaussian=m.Gaussian( centre=1 ) ), info={"info": 3} ) model_2 = db.Fit( id="model_2", instance=af.Collection( gaussian=m.Gaussian( centre=2 ) ), info={"info": 4} ) session.add_all([ model_1, model_2 ]) result = aggregator.query( aggregator.centre == 0 ) assert result == [] result = aggregator.query( aggregator.gaussian.centre == 1 ) assert result == [model_1] result = aggregator.query( aggregator.gaussian.centre == 2 ) assert result == [model_2]
def test_tuple_in_instance( target_gaussian, prior ): # noinspection PyTypeChecker source_gaussian = m.Gaussian( centre=(prior, 1.0) ) target_gaussian.take_attributes( source_gaussian ) assert target_gaussian.centre == (prior, 1.0)
def test_tuple_in_instance_in_collection( target_gaussian, prior ): # noinspection PyTypeChecker source_gaussian = m.Gaussian( centre=(prior, 1.0) ) source = af.CollectionPriorModel( gaussian=source_gaussian ) target = af.CollectionPriorModel( gaussian=target_gaussian ) target.take_attributes(source) assert target.gaussian.centre == (prior, 1.0)
def make_gaussian_1(): return db.Fit(id="gaussian_1", instance=m.Gaussian(centre=1), info={"info": 1}, is_complete=True, unique_tag="one")
def make_gaussian_2(): return db.Fit(id="gaussian_2", instance=m.Gaussian(centre=2), info={"info": 2}, is_complete=False, unique_tag="two")
def test_instance(): collection = af.CollectionPriorModel(gaussian=m.Gaussian()) assert collection.has_instance(m.Gaussian) is True assert collection.has_model(m.Gaussian) is False
def test_embedded(): collection = af.CollectionPriorModel(gaussian=af.PriorModel( m.Gaussian, centre=m.Gaussian()), ) assert collection.has_model(m.Gaussian) is True assert collection.has_instance(m.Gaussian) is True
def test_both(): collection = af.CollectionPriorModel(gaussian=af.PriorModel(m.Gaussian), gaussian_2=m.Gaussian()) assert collection.has_model(m.Gaussian) is True assert collection.has_instance(m.Gaussian) is True