Пример #1
0
    def test_get_right_command_instance(self):
        instance = self.create_instance()
        commands = ConfigBuilder.get_instance('commands')

        assert len(commands) == 1

        command_instance = commands[0]
        assert instance.get_command_name() in command_instance.get_id()
        assert isinstance(command_instance, self.get_command_class())
Пример #2
0
    def test_only_create_command_instance_once(self):
        self.validate_snapshot = False
        instance = self.create_instance()
        instance2 = self.get_instance_class().create('instance2')
        commands = ConfigBuilder.get_instance('commands')

        assert len(commands) == 1

        command_instance = commands[0]
        assert instance.get_command_name() in command_instance.get_id()
        assert instance2.get_command_name() in command_instance.get_id()
        assert isinstance(command_instance, self.get_command_class())
    def apply_for_all(self):

        config_user = ''
        config_group = ''
        all_users = ConfigBuilder.get_instance('users')

        configured_users = []
        for group in self.__user_groups:
            for user in all_users:
                # do not send multiple notifications to a user and only send, if user should receive notification
                # via direct assignment or group assignment
                if user in configured_users or (user not in self.__users
                                                and group
                                                not in user.get_groups()):
                    continue

                # write config for user
                configured_users.append(user)
                user_data_config = enumerate(self.user_config_function(user))
                for key, config in user_data_config:
                    notification_id = 'notification_' + self.get_id(
                    ) + '_user_' + user.get_id() + '_' + str(key)
                    config_user += self.get_assign_config(config,
                                                          notification_id,
                                                          users=[user])

            # write config for group
            group_data_config = enumerate(self.group_config_function(group))
            for key, config in group_data_config:
                notification_id = 'notification_' + self.get_id(
                ) + '_group_' + group.get_id() + '_' + str(key)
                config_group += self.get_assign_config(
                    config,
                    notification_id,
                    users=['group_notification_sender_' + group.get_id()])

        return config_user + config_group
 def test_instance_exist_in_config_builder_instances(self):
     instance = self.create_instance()
     assert instance in ConfigBuilder.get_instance('commands')