From 27d58935f0ae3d99a7537208d9bfcf7d16279663 Mon Sep 17 00:00:00 2001 From: sam Date: Wed, 20 Nov 2024 12:38:23 +0000 Subject: [PATCH] Make handling of test fixtures consistent A small change to make handling of POST requests consistent when testing. Helps ensure that each client side POST request body is created as expected. --- internal/simulator/datastore_create.go | 5 +++++ internal/simulator/datastore_delete.go | 1 + .../simulator/fixtures/datastores/create/post-request.json | 2 +- .../simulator/fixtures/hypervisorclusters/delete/post.json | 1 + internal/simulator/hypervisorcluster_delete.go | 6 ++++-- 5 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 internal/simulator/fixtures/hypervisorclusters/delete/post.json diff --git a/internal/simulator/datastore_create.go b/internal/simulator/datastore_create.go index 8e6dc80..a0fd7fe 100644 --- a/internal/simulator/datastore_create.go +++ b/internal/simulator/datastore_create.go @@ -8,6 +8,9 @@ import ( "github.com/h2non/gock" ) +//go:embed fixtures/datastores/create/post-request.json +var dsPostRequest string + //go:embed fixtures/datastores/create/hypervisorclustersfiltered.json var hcFilter string @@ -49,6 +52,8 @@ func datastoreCreate() { gock.New("http://localhost"). Post("/virtualization/v1beta1/datastore"). + MatchType("json"). + BodyString(dsPostRequest). Reply(202). SetHeader("Location", "/data-services/v1beta1/async-operations/"+taskID) diff --git a/internal/simulator/datastore_delete.go b/internal/simulator/datastore_delete.go index ce84183..20a3347 100644 --- a/internal/simulator/datastore_delete.go +++ b/internal/simulator/datastore_delete.go @@ -29,6 +29,7 @@ func datastoreDelete() { gock.New("http://localhost"). Delete("/virtualization/v1beta1/datastores/"+datastoreID). + BodyString(""). Reply(202). SetHeader("Location", "/data-services/v1beta1/async-operations/"+taskID). SetHeader("Content-Type", "application/json"). diff --git a/internal/simulator/fixtures/datastores/create/post-request.json b/internal/simulator/fixtures/datastores/create/post-request.json index 29a0151..0a978f2 100644 --- a/internal/simulator/fixtures/datastores/create/post-request.json +++ b/internal/simulator/fixtures/datastores/create/post-request.json @@ -1 +1 @@ -{"name":"mclaren-ds19","sizeInBytes":17179869184,"storageSystemId":"126fd201-9e6e-5e31-9ffb-a766265b1fd3","targetHypervisorClusterId":"acd4daea-e5e3-5f35-8be3-ce4a4b6d946c","datastoreType":"VMFS"} +{"name":"mclaren-ds19","sizeInBytes":17179869184,"storageSystemId":"126fd201-9e6e-5e31-9ffb-a766265b1fd3","targetHypervisorClusterId":"298a299e-78f5-5acb-86ce-4e9fdc290ab7","datastoreType":"VMFS"} diff --git a/internal/simulator/fixtures/hypervisorclusters/delete/post.json b/internal/simulator/fixtures/hypervisorclusters/delete/post.json new file mode 100644 index 0000000..2df389f --- /dev/null +++ b/internal/simulator/fixtures/hypervisorclusters/delete/post.json @@ -0,0 +1 @@ +{"hypervisor_cluster_ids":["298a299e-78f5-5acb-86ce-4e9fdc290ab7"]} diff --git a/internal/simulator/hypervisorcluster_delete.go b/internal/simulator/hypervisorcluster_delete.go index a33ec5c..974b794 100644 --- a/internal/simulator/hypervisorcluster_delete.go +++ b/internal/simulator/hypervisorcluster_delete.go @@ -8,6 +8,9 @@ import ( "github.com/h2non/gock" ) +//go:embed fixtures/hypervisorclusters/delete/post.json +var hcDeletePost string + //go:embed fixtures/hypervisorclusters/delete/async1.json var deleteTaskOne string @@ -17,13 +20,12 @@ var deleteTaskTwo string func hypervisorClusterDelete() { taskID := "a73607cc-ae57-4efe-b573-615813e6c77d" systemID := "126fd201-9e6e-5e31-9ffb-a766265b1fd3" - clusterID := "298a299e-78f5-5acb-86ce-4e9fdc290ab7" gock.New("http://localhost"). Post("/private-cloud-business/v1beta1/systems/"+systemID+ "/remove-hypervisor-clusters"). MatchType("json"). - JSON(map[string][]string{"hypervisor_cluster_ids": {clusterID}}). + BodyString(hcDeletePost). Reply(202). SetHeader("Location", "/data-services/v1beta1/async-operations/"+taskID)