MCPcopy
hub / github.com/huggingface/smolagents / test_from_folder

Method test_from_folder

tests/test_agents.py:2251–2282  ·  view source on GitHub ↗
(self, agent_dict_version, get_agent_dict)

Source from the content-addressed store, hash-verified

2249
2250 @pytest.mark.parametrize("agent_dict_version", ["v1.9", "v1.10", "v1.20"])
2251 def test_from_folder(self, agent_dict_version, get_agent_dict):
2252 agent_dict = get_agent_dict(agent_dict_version)
2253 mock_model_class = MagicMock()
2254 mock_model_instance = MagicMock()
2255 mock_model_instance.model_id = "Qwen/Qwen2.5-Coder-32B-Instruct"
2256 mock_model_class.from_dict.return_value = mock_model_instance
2257
2258 with (
2259 patch("smolagents.agents.Path") as mock_path,
2260 patch.dict("smolagents.models.MODEL_REGISTRY", {"InferenceClientModel": mock_model_class}),
2261 ):
2262 import json
2263
2264 mock_path.return_value.__truediv__.return_value.read_text.return_value = json.dumps(agent_dict)
2265 agent = CodeAgent.from_folder("ignored_dummy_folder")
2266 assert isinstance(agent, CodeAgent)
2267 assert agent.name == "test_agent"
2268 assert agent.description == "dummy description"
2269 assert agent.max_steps == 10
2270 assert agent.planning_interval == 2
2271 assert agent.additional_authorized_imports == ["pandas"]
2272 assert "pandas" in agent.authorized_imports
2273 assert agent.executor_type == "local"
2274 assert agent.executor_kwargs == {}
2275 assert agent.max_print_outputs_length is None
2276 assert agent.managed_agents == {}
2277 assert set(agent.tools.keys()) == {"final_answer"}
2278 assert agent.model == mock_model_instance
2279 assert mock_model_class.from_dict.call_args.args[0]["model_id"] == "Qwen/Qwen2.5-Coder-32B-Instruct"
2280 assert agent.model.model_id == "Qwen/Qwen2.5-Coder-32B-Instruct"
2281 assert agent.logger.level == 2
2282 assert agent.prompt_templates["system_prompt"] == "dummy system prompt"
2283
2284 def test_from_dict(self):
2285 # Create a test agent dictionary

Callers

nothing calls this directly

Calls 4

get_agent_dictFunction · 0.85
dumpsMethod · 0.80
from_folderMethod · 0.80
dictMethod · 0.45

Tested by

no test coverage detected