From e153997bdf0370e9f5b2d99ff6e20a12647cdb9c Mon Sep 17 00:00:00 2001 From: guoyonghao <1711322114@qq.com> Date: Thu, 30 Jul 2026 18:06:48 +0800 Subject: [PATCH] test(delivery): cover CloudDM datasource deletion request --- server/internal/service/delivery_test.go | 31 ++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/server/internal/service/delivery_test.go b/server/internal/service/delivery_test.go index 7eea0e8..7a68fb3 100644 --- a/server/internal/service/delivery_test.go +++ b/server/internal/service/delivery_test.go @@ -189,6 +189,37 @@ func TestBuildCloudDMRegisterRequest(t *testing.T) { } } +func TestBuildCloudDMDeleteRequest(t *testing.T) { + req := buildCloudDMDeleteRequest(model.DeploymentResult{ID: 42}) + if req.SourceSystem != "xinfra" || req.ResourceType != "MYSQL_INSTANCE" { + t.Fatalf("unexpected request metadata: %#v", req) + } + if req.ExternalResourceID != "mysql-instance:42" { + t.Fatalf("unexpected externalResourceId: %q", req.ExternalResourceID) + } +} + +func TestCloudDMDeleteInfoAndMetadata(t *testing.T) { + meta := map[string]any{ + "clouddm": map[string]any{ + "data_source_id": 123.0, + "delete_status": "Failed", + "delete_error": "boom", + "deleted_at": "", + "external_resource_id": "mysql-instance:42", + }, + } + dataSourceID, deleteStatus := cloudDMDeleteInfo(meta) + if dataSourceID != 123 || deleteStatus != "failed" { + t.Fatalf("unexpected delete info: %d, %q", dataSourceID, deleteStatus) + } + updated := updateCloudDMDeleteMetadata(meta, "deleted", "", "2026-07-30T12:00:00Z") + clouddm := updated["clouddm"].(map[string]any) + if clouddm["delete_status"] != "deleted" || clouddm["delete_error"] != "" || clouddm["deleted_at"] != "2026-07-30T12:00:00Z" { + t.Fatalf("unexpected updated metadata: %#v", clouddm) + } +} + func TestCloudDMDataSourceIDFromResponse(t *testing.T) { tests := []struct { name string