def test_assign_step_methods(): with Model() as model: x = Bernoulli('x', 0.5) steps = assign_step_methods(model, []) assert isinstance(steps, BinaryMetropolis) with Model() as model: x = Normal('x', 0, 1) steps = assign_step_methods(model, []) assert isinstance(steps, NUTS) with Model() as model: x = Categorical('x', np.array([0.25, 0.75])) steps = assign_step_methods(model, []) assert isinstance(steps, BinaryMetropolis) with Model() as model: x = Categorical('x', np.array([0.25, 0.70, 0.05])) steps = assign_step_methods(model, []) assert isinstance(steps, Metropolis) with Model() as model: x = Binomial('x', 10, 0.5) steps = assign_step_methods(model, []) assert isinstance(steps, Metropolis)
def test_bernoulli(self): """Test bernoulli distribution is assigned binary gibbs metropolis method""" with Model() as model: Bernoulli('x', 0.5) steps = assign_step_methods(model, []) self.assertIsInstance(steps, BinaryGibbsMetropolis)