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())
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')