test(delivery): cover CloudDM datasource deletion request

This commit is contained in:
2026-07-30 18:06:48 +08:00
parent 80d4f9ce60
commit e153997bdf
+31
View File
@@ -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