test(delivery): cover CloudDM datasource deletion request
This commit is contained in:
@@ -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) {
|
func TestCloudDMDataSourceIDFromResponse(t *testing.T) {
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
|
|||||||
Reference in New Issue
Block a user