Skip to main content
Glama
test_tools_optimization.py3.33 kB
from __future__ import annotations import sys from tests.tools.test_tools_common import StubPerf, make_module class RocketGeometry: def __init__(self, **kwargs): pass def test_optimization_success(): class OptResult: optimization_result = "ok" optimal_objective = 1.0 optimal_parameters = {"a": 1} performance = StubPerf() sys.modules["aerospace_mcp.integrations.trajopt"] = make_module( RocketGeometry=RocketGeometry, optimize_thrust_profile=lambda *a, **k: OptResult(), trajectory_sensitivity_analysis=lambda *a, **k: {"sensitivity": []}, genetic_algorithm_optimization=lambda *a, **k: {"ga": True}, particle_swarm_optimization=lambda *a, **k: {"pso": True}, porkchop_plot_analysis=lambda *a, **k: {"porkchop": True}, monte_carlo_uncertainty_analysis=lambda *a, **k: {"mc": True}, ) from aerospace_mcp.tools.optimization import ( genetic_algorithm_optimization, monte_carlo_uncertainty_analysis, optimize_thrust_profile, particle_swarm_optimization, porkchop_plot_analysis, trajectory_sensitivity_analysis, ) assert "optimization_result" in optimize_thrust_profile({}, 10, 1000) assert "sensitivity" in trajectory_sensitivity_analysis({}, {}) assert "ga" in genetic_algorithm_optimization({}) assert "pso" in particle_swarm_optimization({}) assert "porkchop" in porkchop_plot_analysis( "Earth", "Mars", ["2025-01-01"], ["2025-12-01"] ) assert "mc" in monte_carlo_uncertainty_analysis({}, {}, 10) def test_optimization_import_errors(): import sys from aerospace_mcp.tools import optimization as opt_tools sys.modules["aerospace_mcp.integrations.trajopt"] = make_module() assert "not available" in opt_tools.optimize_thrust_profile({}, 1.0, 1.0).lower() assert "not available" in opt_tools.trajectory_sensitivity_analysis({}, {}).lower() assert "not available" in opt_tools.genetic_algorithm_optimization({}).lower() assert "not available" in opt_tools.particle_swarm_optimization({}).lower() assert "not available" in opt_tools.porkchop_plot_analysis("A", "B", [], []).lower() assert ( "not available" in opt_tools.monte_carlo_uncertainty_analysis({}, {}, 1).lower() ) def test_optimization_exception_branches(): import sys def _boom(*a, **k): raise RuntimeError("boom") sys.modules["aerospace_mcp.integrations.trajopt"] = make_module( RocketGeometry=type("R", (), {}), optimize_thrust_profile=_boom, trajectory_sensitivity_analysis=_boom, genetic_algorithm_optimization=_boom, particle_swarm_optimization=_boom, porkchop_plot_analysis=_boom, monte_carlo_uncertainty_analysis=_boom, ) from aerospace_mcp.tools import optimization as opt assert "error" in opt.optimize_thrust_profile({}, 1.0, 1.0).lower() assert "error" in opt.trajectory_sensitivity_analysis({}, {}).lower() assert "error" in opt.genetic_algorithm_optimization({}).lower() assert "error" in opt.particle_swarm_optimization({}).lower() assert "error" in opt.porkchop_plot_analysis("A", "B", [], []).lower() assert "error" in opt.monte_carlo_uncertainty_analysis({}, {}, 1).lower()

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cheesejaguar/aerospace-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server