Beispiel #1
0
    def test_builder_applies_default_value_to_aea(self) -> None:
        """Test AEABuilder applies default value to AEA instance when option is not specified in config."""
        configuration = self._make_configuration(NotSet)
        builder = AEABuilder()
        builder.set_from_configuration(configuration, aea_project_path=Path("."))
        aea = builder.build()

        assert self._get_aea_value(aea) == self.AEA_DEFAULT_VALUE
Beispiel #2
0
    def test_builder_applies_config_value_to_aea(self) -> None:
        """Test AEABuilder applies value to AEA instance when option is specified in config."""
        for good_value in self.GOOD_VALUES:
            configuration = self._make_configuration(good_value)
            builder = AEABuilder()
            builder.set_from_configuration(configuration,
                                           aea_project_path=Path(ROOT_DIR))
            aea = builder.build()

            assert self._get_aea_value(aea) == good_value
Beispiel #3
0
 def _get_builder(
     cls,
     agent_config: AgentConfig,
     aea_project_path: Union[Path, str],
     skip_consistency_check: bool = False,
 ) -> AEABuilder:
     """Get AEABuilder instance."""
     builder = AEABuilder(with_default_packages=False,
                          build_dir_root=str(aea_project_path))
     builder.set_from_configuration(agent_config, Path(aea_project_path),
                                    skip_consistency_check)
     return builder
def test_set_from_config():
    """Test set configuration from config loaded."""
    builder = AEABuilder()
    agent_configuration = Mock()
    agent_configuration.default_connection = "test/test:0.1.0"
    agent_configuration.decision_maker_handler = {
        "dotted_path": "aea.decision_maker.default:DecisionMakerHandler",
        "file_path": ROOT_DIR + "/aea/decision_maker/default.py",
    }
    agent_configuration.skill_exception_policy = ExceptionPolicyEnum.just_log
    agent_configuration._default_connection = None
    agent_configuration.connection_private_key_paths_dict = {"fetchai": None}
    agent_configuration.ledger_apis_dict = {"fetchai": None}
    agent_configuration.private_key_paths_dict = {"fetchai": None}
    agent_configuration.protocols = (
        agent_configuration.connections
    ) = agent_configuration.contracts = agent_configuration.skills = []

    builder.set_from_configuration(agent_configuration,
                                   aea_project_path="/anydir")
    assert builder._decision_maker_handler_class is not None
Beispiel #5
0
def test_set_from_config_default():
    """Test set configuration from config loaded."""
    builder = AEABuilder()
    agent_configuration = Mock()
    agent_configuration.default_connection = "test/test:0.1.0"
    agent_configuration.decision_maker_handler = {}
    agent_configuration.error_handler = {}
    agent_configuration.skill_exception_policy = ExceptionPolicyEnum.just_log
    agent_configuration.connection_exception_policy = ExceptionPolicyEnum.just_log
    agent_configuration._default_connection = None
    agent_configuration.connection_private_key_paths_dict = {"fetchai": None}
    agent_configuration.ledger_apis_dict = {"fetchai": None}
    agent_configuration.private_key_paths_dict = {"fetchai": None}
    agent_configuration.protocols = (
        agent_configuration.connections
    ) = agent_configuration.contracts = agent_configuration.skills = []

    builder.set_from_configuration(agent_configuration, aea_project_path="/anydir")
    assert builder._decision_maker_handler_class is None
    assert builder._decision_maker_handler_dotted_path is None
    assert builder._decision_maker_handler_file_path is None
    assert builder._load_decision_maker_handler_class() is None
Beispiel #6
0
def test_set_from_config_custom():
    """Test set configuration from config loaded."""
    dm_dotted_path = f"aea.decision_maker.default{DOTTED_PATH_MODULE_ELEMENT_SEPARATOR}DecisionMakerHandler"
    dm_file_path = ROOT_DIR + "/aea/decision_maker/default.py"
    builder = AEABuilder()
    agent_configuration = Mock()
    agent_configuration.default_connection = "test/test:0.1.0"
    agent_configuration.decision_maker_handler = {
        "dotted_path": dm_dotted_path,
        "file_path": dm_file_path,
    }
    agent_configuration.error_handler = {
        "dotted_path": f"aea.error_handler.default{DOTTED_PATH_MODULE_ELEMENT_SEPARATOR}ErrorHandler",
        "file_path": ROOT_DIR + "/aea/error_handler/default.py",
    }
    agent_configuration.skill_exception_policy = ExceptionPolicyEnum.just_log
    agent_configuration.connection_exception_policy = ExceptionPolicyEnum.just_log
    agent_configuration._default_connection = None
    agent_configuration.connection_private_key_paths_dict = {"fetchai": None}
    agent_configuration.ledger_apis_dict = {"fetchai": None}
    agent_configuration.private_key_paths_dict = {"fetchai": None}
    agent_configuration.protocols = (
        agent_configuration.connections
    ) = agent_configuration.contracts = agent_configuration.skills = []

    builder.set_from_configuration(agent_configuration, aea_project_path="/anydir")
    assert builder._decision_maker_handler_class is None
    assert builder._decision_maker_handler_dotted_path == dm_dotted_path
    assert builder._decision_maker_handler_file_path == dm_file_path
    assert builder._load_decision_maker_handler_class() is not None
    builder.reset(is_full_reset=True)
    agent_configuration.decision_maker_handler = {
        "dotted_path": dm_dotted_path,
        "file_path": None,
    }
    builder.set_from_configuration(agent_configuration, aea_project_path="/anydir")
    assert builder._load_decision_maker_handler_class() is not None