import os from unittest.mock import patch from app.schemas.software_a import CreateDeployTaskRequest, DeployOptions, SoftwareAOperator from app.services.software_a_service import SoftwareAService def test_sample_app_bridge_can_be_enabled() -> None: os.environ["ENABLE_SAMPLE_APP_BRIDGE"] = "true" try: with patch("app.services.software_a_service.LocalSampleAppService.deploy_order_service") as mocked_deploy: mocked_deploy.return_value = { "running": True, "status_text": "RUNNING", "return_code": 0, } payload = CreateDeployTaskRequest( operator=SoftwareAOperator(user_id="u1001", user_name="alice"), tenant_id="tenant-demo", app_code="order-service", env="test", version="1.2.3", target_nodes=["127.0.0.1"], deploy_options=DeployOptions(graceful=True), ) result = SoftwareAService("Asia/Shanghai").create_deploy_task(payload) assert result["task_status"] == "RUNNING" assert result["sample_app_result"]["running"] is True mocked_deploy.assert_called_once() finally: os.environ["ENABLE_SAMPLE_APP_BRIDGE"] = "false"