MCPcopy Index your code
hub / github.com/Codeplain-ai/codeplain / execute

Method execute

render_machine/actions/fix_unit_tests.py:17–54  ·  view source on GitHub ↗
(self, render_context: RenderContext, previous_action_payload: Any | None)

Source from the content-addressed store, hash-verified

15 SUCCESSFUL_OUTCOME = "unit_tests_fix_generated"
16
17 def execute(self, render_context: RenderContext, previous_action_payload: Any | None):
18 if not previous_action_payload.get("previous_unittests_issue"):
19 raise InternalClientError(
20 "Internal client error: Previous action payload does not contain previous unit tests issue."
21 )
22 previous_unittests_issue = previous_action_payload["previous_unittests_issue"]
23
24 if previous_unittests_issue and len(previous_unittests_issue) > MAX_ISSUE_LENGTH:
25 console.debug(
26 f"Unit tests issue text is too long and will be smartly truncated to {MAX_ISSUE_LENGTH} characters."
27 )
28
29 existing_files, existing_files_content = ImplementationCodeHelpers.fetch_existing_files(
30 render_context.build_folder
31 )
32
33 render_utils.print_inputs(render_context, existing_files_content, "Files sent as input to unit tests fixing:")
34
35 response_files = render_context.codeplain_api.fix_unittests_issue(
36 render_context.frid_context.frid,
37 render_context.plain_source_tree,
38 render_context.frid_context.linked_resources,
39 existing_files_content,
40 render_context.module_name,
41 render_context.get_required_modules_functionalities(),
42 previous_unittests_issue,
43 run_state=render_context.run_state,
44 )
45
46 _, changed_files = file_utils.update_build_folder_with_rendered_files(
47 render_context.build_folder, existing_files, response_files
48 )
49
50 render_context.unit_tests_running_context.changed_files.update(changed_files)
51
52 console.print_files("Files fixed:", render_context.build_folder, response_files, style=console.OUTPUT_STYLE)
53
54 return self.SUCCESSFUL_OUTCOME, None

Callers

nothing calls this directly

Calls 6

InternalClientErrorClass · 0.90
debugMethod · 0.80
fetch_existing_filesMethod · 0.80
fix_unittests_issueMethod · 0.80
print_filesMethod · 0.80

Tested by

no test coverage detected