Source code for tests.unit_tests.config.groups.test_action_likelihood_chance_group

import pytest

from yawning_titan.config.groups.core import ActionLikelihoodChanceGroup
from yawning_titan.exceptions import ConfigGroupValidationError


[docs]@pytest.mark.unit_test def test_action_likelihood_chance_not_used(): """Test the ActionLikelihoodGroup when not used.""" alc = ActionLikelihoodChanceGroup(use=False) assert alc.validation.passed assert alc.validation.group_passed
[docs]@pytest.mark.unit_test def test_action_likelihood_chance_used_chance_not_set(): """Test the ActionLikelihoodGroup when used but chance not set.""" alc = ActionLikelihoodChanceGroup(use=True, likelihood=0.5) assert not alc.validation.passed with pytest.raises(ConfigGroupValidationError): raise alc.validation.fail_exceptions[0]
[docs]@pytest.mark.unit_test def test_action_likelihood_chance_used_likelihood_not_set(): """Test the ActionLikelihoodGroup when used but likelihood not set.""" alc = ActionLikelihoodChanceGroup(use=True, chance=0.25) assert not alc.validation.passed with pytest.raises(ConfigGroupValidationError): raise alc.validation.fail_exceptions[0]
[docs]@pytest.mark.unit_test def test_action_likelihood_chance_used_chance_and_likelihood_not_set(): """Test the ActionLikelihoodGroup when used but chance and likelihood not set.""" alc = ActionLikelihoodChanceGroup(use=True) assert not alc.validation.passed with pytest.raises(ConfigGroupValidationError): raise alc.validation.fail_exceptions[0]
[docs]@pytest.mark.unit_test def test_action_likelihood_chance_valid_used(): """Test the ActionLikelihoodGroup when used and valid.""" alc = ActionLikelihoodChanceGroup(use=True, likelihood=0.5, chance=0.25) assert alc.validation.passed assert alc.validation.group_passed
[docs]@pytest.mark.unit_test def test_action_likelihood_chance_group_fail_used(): """Tests ActionLikelihoodGroup when the group validation passes but an item fails the group.""" alc = ActionLikelihoodChanceGroup(use=True, likelihood=0.5, chance=-5) assert alc.validation.group_passed assert not alc.validation.elements_passed