def test_merge_existing_file(self, custom_content_object, ending, method, instance_path, fields): env_guard = EnvironmentGuardian() test_answer = True with patch.object(Downloader, "__init__", lambda a, b, c: None): downloader = Downloader('', '') ryaml = YAML() ryaml.preserve_quotes = True downloader.pack_content = PACK_CONTENT downloader.run_format = False downloader.num_merged_files = 0 downloader.num_added_files = 0 downloader.log_verbose = False downloader.merge_existing_file(custom_content_object, ending) test_answer = test_answer and os.path.isfile(instance_path) file_data = method(instance_path) for field in fields: if file_data.get(field): test_answer = test_answer and True else: test_answer = False if ending == 'yml': task_4_name = file_data['tasks']['4']['task']['name'] test_answer = test_answer and task_4_name == 'Done TEST' env_guard.restore_environment('test_merge_existing_file') assert test_answer
def test_merge_existing_file(self, tmp_path): env = Environment(tmp_path) parameters = [{ 'custom_content_object': env.PLAYBOOK_CUSTOM_CONTENT_OBJECT, 'ending': 'yml', 'method': get_yaml, 'instance_path': env.PLAYBOOK_INSTANCE_PATH, 'fields': ['fromversion', 'toversion'] }, { 'custom_content_object': env.LAYOUT_CUSTOM_CONTENT_OBJECT, 'ending': 'json', 'method': get_json, 'instance_path': env.LAYOUT_INSTANCE_PATH, 'fields': ['fromVersion', 'toVersion'] }] with patch.object(Downloader, "__init__", lambda a, b, c: None): downloader = Downloader('', '') ryaml = YAML() ryaml.preserve_quotes = True downloader.pack_content = env.PACK_CONTENT downloader.run_format = False downloader.num_merged_files = 0 downloader.num_added_files = 0 downloader.log_verbose = False for param in parameters: downloader.merge_existing_file(param['custom_content_object'], param['ending']) assert os.path.isfile(param['instance_path']) file_data = param['method'](param['instance_path']) for field in param['fields']: if file_data.get(field): assert True else: assert False if param['ending'] == 'yml': task_4_name = file_data['tasks']['4']['task']['name'] assert task_4_name == 'Done TEST'