mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-11 17:18:29 +00:00
- Add regex pattern validation for execution_image parameter - Refactor get_code_execution_tools() to eliminate code duplication using tool_kwargs - Add comprehensive tests for invalid Docker image format validation - Add tests for various valid Docker image formats - Update documentation with best practices section for custom Docker images - Fix lint issues: remove unused imports and variables Addresses feedback from joaomdmoura in PR #2934 Co-Authored-By: João <joao@crewai.com>
36 lines
997 B
Python
36 lines
997 B
Python
from unittest.mock import patch, MagicMock
|
|
from crewai import Agent, Task, Crew
|
|
|
|
|
|
@patch('crewai_tools.CodeInterpreterTool')
|
|
def test_crew_with_custom_execution_image_integration(mock_code_interpreter_class):
|
|
"""Integration test for custom execution image in a Crew workflow."""
|
|
mock_tool_instance = MagicMock()
|
|
mock_code_interpreter_class.return_value = mock_tool_instance
|
|
|
|
agent = Agent(
|
|
role="Python Developer",
|
|
goal="Execute Python code",
|
|
backstory="Expert in Python programming",
|
|
allow_code_execution=True,
|
|
execution_image="python:3.11-slim"
|
|
)
|
|
|
|
task = Task(
|
|
description="Calculate 2 + 2",
|
|
expected_output="The result of 2 + 2",
|
|
agent=agent
|
|
)
|
|
|
|
crew = Crew(
|
|
agents=[agent],
|
|
tasks=[task]
|
|
)
|
|
|
|
crew._prepare_tools(task, agent)
|
|
|
|
mock_code_interpreter_class.assert_called_with(
|
|
unsafe_mode=False,
|
|
default_image_tag="python:3.11-slim"
|
|
)
|