def test_order_export_inherits_global_safety_flags_when_order_flags_are_unset(monkeypatch): from app.modules.orders.backend import economic_export settings = economic_export.settings monkeypatch.setattr(settings, "ECONOMIC_READ_ONLY", False) monkeypatch.setattr(settings, "ECONOMIC_DRY_RUN", False) monkeypatch.setattr(settings, "ORDRE_ECONOMIC_READ_ONLY", True) monkeypatch.setattr(settings, "ORDRE_ECONOMIC_DRY_RUN", True) fields_set = set(settings.model_fields_set) fields_set.discard("ORDRE_ECONOMIC_READ_ONLY") fields_set.discard("ORDRE_ECONOMIC_DRY_RUN") monkeypatch.setattr(settings, "__pydantic_fields_set__", fields_set) service = economic_export.OrdreEconomicExportService() assert service.read_only is False assert service.dry_run is False def test_order_export_respects_explicit_order_safety_flags(monkeypatch): from app.modules.orders.backend import economic_export settings = economic_export.settings monkeypatch.setattr(settings, "ECONOMIC_READ_ONLY", False) monkeypatch.setattr(settings, "ECONOMIC_DRY_RUN", False) monkeypatch.setattr(settings, "ORDRE_ECONOMIC_READ_ONLY", True) monkeypatch.setattr(settings, "ORDRE_ECONOMIC_DRY_RUN", True) fields_set = set(settings.model_fields_set) fields_set.update({"ORDRE_ECONOMIC_READ_ONLY", "ORDRE_ECONOMIC_DRY_RUN"}) monkeypatch.setattr(settings, "__pydantic_fields_set__", fields_set) service = economic_export.OrdreEconomicExportService() assert service.read_only is True assert service.dry_run is True