예제 #1
0
    def test_with_data(self):
        yaml = YamlConfigurationFile()
        self.assertIsNotNone(yaml)
        yaml.load_from_text(
            """
        brain:
            binaries:
              save_binary: true
              load_binary: true
              binary_filename: $BOT_ROOT/output/y-bot.brain
              load_aiml_on_binary_fail: true
              dump_to_file: $BOT_ROOT/output/braintree.txt
        """, ConsoleConfiguration(), ".")

        brain_config = yaml.get_section("brain")

        binaries_config = BrainBinariesConfiguration()
        binaries_config.load_config_section(yaml, brain_config, ".")

        self.assertTrue(binaries_config.save_binary)
        self.assertTrue(binaries_config.load_binary)
        self.assertEquals("./output/y-bot.brain",
                          binaries_config.binary_filename)
        self.assertTrue(binaries_config.load_aiml_on_binary_fail)
        self.assertEquals("./output/braintree.txt",
                          binaries_config.dump_to_file)
예제 #2
0
 def __init__(self):
     BaseConfigurationData.__init__(self, "brain")
     self._overrides = BrainOverridesConfiguration()
     self._defaults = BrainDefaultsConfiguration()
     self._nodes = BrainNodesConfiguration()
     self._binaries = BrainBinariesConfiguration()
     self._files = BrainFilesConfiguration()
     self._services = BrainServicesConfiguration()
     self._security = BrainSecuritiesConfiguration()
     self._oob = BrainOOBSConfiguration()
예제 #3
0
 def __init__(self):
     BaseContainerConfigurationData.__init__(self, "brain")
     self._language = BrainLanguageConfiguration()
     self._overrides = BrainOverridesConfiguration()
     self._defaults = BrainDefaultsConfiguration()
     self._nodes = BrainNodesConfiguration()
     self._binaries = BrainBinariesConfiguration()
     self._braintree = BrainBraintreeConfiguration()
     self._files = BrainFilesConfiguration()
     self._services = BrainServicesConfiguration()
     self._security = BrainSecuritiesConfiguration()
     self._oob = BrainOOBSConfiguration()
     self._dynamics = BrainDynamicsConfiguration()
예제 #4
0
    def test_with_no_data(self):
        yaml = YamlConfigurationFile()
        self.assertIsNotNone(yaml)
        yaml.load_from_text("""
        brain:
        """, ConsoleConfiguration(), ".")

        brain_config = yaml.get_section("brain")

        binaries_config = BrainBinariesConfiguration()
        binaries_config.load_config_section(yaml, brain_config, ".")

        self.assertFalse(binaries_config.save_binary)
        self.assertFalse(binaries_config.load_binary)
        self.assertIsNone(binaries_config.binary_filename)
        self.assertFalse(binaries_config.load_aiml_on_binary_fail)
예제 #5
0
class BrainConfiguration(BaseConfigurationData):
    def __init__(self):
        BaseConfigurationData.__init__(self, "brain")
        self._overrides = BrainOverridesConfiguration()
        self._defaults = BrainDefaultsConfiguration()
        self._nodes = BrainNodesConfiguration()
        self._binaries = BrainBinariesConfiguration()
        self._braintree = BrainBraintreeConfiguration()
        self._files = BrainFilesConfiguration()
        self._services = BrainServicesConfiguration()
        self._security = BrainSecuritiesConfiguration()
        self._oob = BrainOOBSConfiguration()
        self._dynamics = BrainDynamicsConfiguration()

    @property
    def overrides(self):
        return self._overrides

    @property
    def defaults(self):
        return self._defaults

    @property
    def nodes(self):
        return self._nodes

    @property
    def binaries(self):
        return self._binaries

    @property
    def braintree(self):
        return self._braintree

    @property
    def files(self):
        return self._files

    @property
    def services(self):
        return self._services

    @property
    def security(self):
        return self._security

    @property
    def oob(self):
        return self._oob

    @property
    def dynamics(self):
        return self._dynamics

    def load_config_section(self, file_config, bot_root):
        brain_config = file_config.get_section("brain")
        if brain_config is not None:
            self._overrides.load_config_section(file_config, brain_config,
                                                bot_root)
            self._defaults.load_config_section(file_config, brain_config,
                                               bot_root)
            self._nodes.load_config_section(file_config, brain_config,
                                            bot_root)
            self._binaries.load_config_section(file_config, brain_config,
                                               bot_root)
            self._braintree.load_config_section(file_config, brain_config,
                                                bot_root)
            self._files.load_config_section(file_config, brain_config,
                                            bot_root)
            self._services.load_config_section(file_config, brain_config,
                                               bot_root)
            self._security.load_config_section(file_config, brain_config,
                                               bot_root)
            self._oob.load_config_section(file_config, brain_config, bot_root)
            self._dynamics.load_config_section(file_config, brain_config,
                                               bot_root)