def test_shaped_instance(self, seed): """Use shape keyword argument.""" dim = Dimension('yolo', 'norm', 0.9, shape=(3, 2)) samples = dim.sample(seed=seed) assert len(samples) == 1 assert_eq(dists.norm.rvs(0.9, size=(3, 2)), samples[0]) assert dim.shape == (3, 2) dim = Dimension('yolo', 'norm', 0.9, shape=4) samples = dim.sample(seed=seed) assert len(samples) == 1 assert_eq(dists.norm.rvs(0.9, size=4), samples[0]) assert dim.shape == (4, )
def test_simple_instance(self, seed): """Test Dimension.__init__.""" dim = Dimension('yolo', 'norm', 0.9, 0.1) samples = dim.sample(seed=seed) assert len(samples) == 1 assert dists.norm.rvs(0.9, 0.1) == samples[0] assert dists.norm.interval(1.0, 0.9, 0.1) == dim.interval() assert dists.norm.interval(0.5, 0.9, 0.1) == dim.interval(0.5) assert str(dim) == "Dimension(name=yolo, prior={norm: (0.9, 0.1), {}}, " \ "shape=(), default value=None)" assert dim.name == 'yolo' assert dim.type == 'dimension' assert dim.shape == ()
def test_with_predefined_dist(self, seed): """Use an already defined distribution object as prior arg.""" dim = Dimension('yolo', dists.norm, 0.9) samples = dim.sample(seed=seed) assert len(samples) == 1 assert dists.norm.rvs(0.9) == samples[0]
def test_many_samples(self, seed): """More than 1.""" dim = Dimension('yolo', 'uniform', -3, 4, shape=(4, 4)) samples = dim.sample(n_samples=4, seed=seed) assert len(samples) == 4 assert_eq(dists.uniform.rvs(-3, 4, size=(4, 4)), samples[0])