Commit 1d27f62a authored by Dimitrios Gogos's avatar Dimitrios Gogos
Browse files

fix: update app instance status mapping to handle terminated state as unknown

parent cf39aa51
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -657,6 +657,6 @@ def build_app_instance_status_change_event(
            appInstanceId=app_instance.app_instance_id,
            appId=app_id,
            edgeCloudZoneId=app_instance.edge_cloud_zone_id,
            status=app_instance.state.value,
            status=to_app_instance_status(app_instance.state).value,
        ),
    )
+9 −0
Original line number Diff line number Diff line
@@ -735,6 +735,15 @@ class TestBuildAppInstanceStatusChangeEvent:
        )
        assert event.data.status == "failed"

    def test_terminated_state_maps_to_unknown_status(self) -> None:
        """The CloudEvent carries the CAMARA status, not the internal state."""
        event = build_app_instance_status_change_event(
            self._make_app_instance(AppInstanceState.TERMINATED),
            APP_ID,
            "2026-07-04T10:02:35+00:00",
        )
        assert event.data.status == "unknown"

    def test_each_call_gets_a_distinct_event_id(self) -> None:
        first = build_app_instance_status_change_event(
            self._make_app_instance(AppInstanceState.READY),
+2 −2
Original line number Diff line number Diff line
@@ -1928,7 +1928,7 @@ class TestHandleCompleted:
        assert sink == registration.sink
        assert cloud_event.data.appInstanceId == INSTANCE_ID
        assert cloud_event.data.appId == app_id
        assert cloud_event.data.status == "terminated"
        assert cloud_event.data.status == "unknown"

    async def test_terminate_completion_delivers_callback_via_original_deploy_operation(
        self,
@@ -1996,7 +1996,7 @@ class TestHandleCompleted:
        sink, cloud_event = callback_delivery_port.delivered[0]
        assert cloud_event.data.appInstanceId == INSTANCE_ID
        assert cloud_event.data.appId == app_id
        assert cloud_event.data.status == "terminated"
        assert cloud_event.data.status == "unknown"

    async def test_terminate_completion_failure_marks_failed_not_deleted(
        self,