Skip to content

Commit 36c1ad7

Browse files
committed
Fix race condition in vpc profile tests
Two parallel tests created profile with the same name, which resulted in failure in data source retrieval. Avoid the issue by randomizing name in import test. Signed-off-by: Anna Khmelnitsky <[email protected]>
1 parent c1ba784 commit 36c1ad7

File tree

2 files changed

+21
-19
lines changed

2 files changed

+21
-19
lines changed

Diff for: nsxt/resource_nsxt_vpc_connectivity_profile_test.go

+11-8
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func TestAccResourceNsxtVpcConnectivityProfile_basic(t *testing.T) {
4343
{
4444
Config: testAccNsxtVpcConnectivityProfileTemplate(true),
4545
Check: resource.ComposeTestCheckFunc(
46-
testAccNsxtVpcConnectivityProfileExists(accTestVpcConnectivityProfileCreateAttributes["display_name"], testResourceName),
46+
testAccNsxtVpcConnectivityProfileExists(testResourceName),
4747
resource.TestCheckResourceAttrSet(testDataSourceName, "path"),
4848
resource.TestCheckResourceAttrSet(testDataSourceName, "description"),
4949
resource.TestCheckResourceAttr(testResourceName, "display_name", accTestVpcConnectivityProfileCreateAttributes["display_name"]),
@@ -63,7 +63,7 @@ func TestAccResourceNsxtVpcConnectivityProfile_basic(t *testing.T) {
6363
{
6464
Config: testAccNsxtVpcConnectivityProfileTemplate(false),
6565
Check: resource.ComposeTestCheckFunc(
66-
testAccNsxtVpcConnectivityProfileExists(accTestVpcConnectivityProfileUpdateAttributes["display_name"], testResourceName),
66+
testAccNsxtVpcConnectivityProfileExists(testResourceName),
6767
resource.TestCheckResourceAttrSet(testDataSourceName, "path"),
6868
resource.TestCheckResourceAttrSet(testDataSourceName, "description"),
6969
resource.TestCheckResourceAttr(testResourceName, "display_name", accTestVpcConnectivityProfileUpdateAttributes["display_name"]),
@@ -81,9 +81,9 @@ func TestAccResourceNsxtVpcConnectivityProfile_basic(t *testing.T) {
8181
),
8282
},
8383
{
84-
Config: testAccNsxtVpcConnectivityProfileMinimalistic(),
84+
Config: testAccNsxtVpcConnectivityProfileMinimalistic(accTestVpcConnectivityProfileCreateAttributes["display_name"]),
8585
Check: resource.ComposeTestCheckFunc(
86-
testAccNsxtVpcConnectivityProfileExists(accTestVpcConnectivityProfileCreateAttributes["display_name"], testResourceName),
86+
testAccNsxtVpcConnectivityProfileExists(testResourceName),
8787
resource.TestCheckResourceAttr(testResourceName, "description", ""),
8888
resource.TestCheckResourceAttrSet(testResourceName, "nsx_id"),
8989
resource.TestCheckResourceAttrSet(testResourceName, "path"),
@@ -110,7 +110,10 @@ func TestAccResourceNsxtVpcConnectivityProfile_importBasic(t *testing.T) {
110110
},
111111
Steps: []resource.TestStep{
112112
{
113-
Config: testAccNsxtVpcConnectivityProfileMinimalistic(),
113+
// provide ramdom display name here, since this test runs in parallel with _basic test,
114+
// which covers data source check. randomizing display name prevents multiple profiles
115+
// with same name
116+
Config: testAccNsxtVpcConnectivityProfileMinimalistic(getAccTestResourceName()),
114117
},
115118
{
116119
ResourceName: testResourceName,
@@ -122,7 +125,7 @@ func TestAccResourceNsxtVpcConnectivityProfile_importBasic(t *testing.T) {
122125
})
123126
}
124127

125-
func testAccNsxtVpcConnectivityProfileExists(displayName string, resourceName string) resource.TestCheckFunc {
128+
func testAccNsxtVpcConnectivityProfileExists(resourceName string) resource.TestCheckFunc {
126129
return func(state *terraform.State) error {
127130

128131
connector := getPolicyConnector(testAccProvider.Meta().(nsxtClients))
@@ -215,12 +218,12 @@ data "nsxt_vpc_connectivity_profile" "test" {
215218
}`, testAccNsxtProjectContext(), attrMap["display_name"], attrMap["description"], attrMap["enable_default_snat"], attrMap["enable"], testAccNsxtProjectContext(), attrMap["display_name"])
216219
}
217220

218-
func testAccNsxtVpcConnectivityProfileMinimalistic() string {
221+
func testAccNsxtVpcConnectivityProfileMinimalistic(displayName string) string {
219222
return testAccNsxtVpcConnectivityProfilePrerequisite() + fmt.Sprintf(`
220223
resource "nsxt_vpc_connectivity_profile" "test" {
221224
%s
222225
display_name = "%s"
223226
transit_gateway_path = data.nsxt_policy_transit_gateway.test.path
224227
225-
}`, testAccNsxtProjectContext(), accTestVpcConnectivityProfileUpdateAttributes["display_name"])
228+
}`, testAccNsxtProjectContext(), displayName)
226229
}

Diff for: nsxt/resource_nsxt_vpc_service_profile_test.go

+10-11
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ func TestAccResourceNsxtVpcServiceProfile_basic(t *testing.T) {
4444
{
4545
Config: testAccNsxtVpcServiceProfileTemplate(true, false),
4646
Check: resource.ComposeTestCheckFunc(
47-
testAccNsxtVpcServiceProfileExists(accTestPolicyVpcServiceProfileCreateAttributes["display_name"], testResourceName),
47+
testAccNsxtVpcServiceProfileExists(testResourceName),
4848
resource.TestCheckResourceAttrSet(testDataSourceName, "path"),
4949
resource.TestCheckResourceAttrSet(testDataSourceName, "description"),
5050
resource.TestCheckResourceAttr(testResourceName, "display_name", accTestPolicyVpcServiceProfileCreateAttributes["display_name"]),
@@ -67,7 +67,7 @@ func TestAccResourceNsxtVpcServiceProfile_basic(t *testing.T) {
6767
// add profiles
6868
Config: testAccNsxtVpcServiceProfileTemplate(true, true),
6969
Check: resource.ComposeTestCheckFunc(
70-
testAccNsxtVpcServiceProfileExists(accTestPolicyVpcServiceProfileCreateAttributes["display_name"], testResourceName),
70+
testAccNsxtVpcServiceProfileExists(testResourceName),
7171
resource.TestCheckResourceAttrSet(testDataSourceName, "path"),
7272
resource.TestCheckResourceAttrSet(testDataSourceName, "description"),
7373
resource.TestCheckResourceAttr(testResourceName, "display_name", accTestPolicyVpcServiceProfileCreateAttributes["display_name"]),
@@ -94,7 +94,7 @@ func TestAccResourceNsxtVpcServiceProfile_basic(t *testing.T) {
9494
// update values, no profiles
9595
Config: testAccNsxtVpcServiceProfileTemplate(false, false),
9696
Check: resource.ComposeTestCheckFunc(
97-
testAccNsxtVpcServiceProfileExists(accTestPolicyVpcServiceProfileUpdateAttributes["display_name"], testResourceName),
97+
testAccNsxtVpcServiceProfileExists(testResourceName),
9898
resource.TestCheckResourceAttr(testResourceName, "display_name", accTestPolicyVpcServiceProfileUpdateAttributes["display_name"]),
9999
resource.TestCheckResourceAttr(testResourceName, "description", accTestPolicyVpcServiceProfileUpdateAttributes["description"]),
100100
resource.TestCheckResourceAttr(testResourceName, "dhcp_config.#", "1"),
@@ -119,7 +119,7 @@ func TestAccResourceNsxtVpcServiceProfile_basic(t *testing.T) {
119119
{
120120
Config: testAccNsxtVpcServiceProfileDhcpRelay(),
121121
Check: resource.ComposeTestCheckFunc(
122-
testAccNsxtVpcServiceProfileExists(accTestPolicyVpcServiceProfileCreateAttributes["display_name"], testResourceName),
122+
testAccNsxtVpcServiceProfileExists(testResourceName),
123123
resource.TestCheckResourceAttr(testResourceName, "description", ""),
124124
resource.TestCheckResourceAttrSet(testResourceName, "nsx_id"),
125125
resource.TestCheckResourceAttrSet(testResourceName, "path"),
@@ -131,9 +131,9 @@ func TestAccResourceNsxtVpcServiceProfile_basic(t *testing.T) {
131131
),
132132
},
133133
{
134-
Config: testAccNsxtVpcServiceProfileMinimalistic(),
134+
Config: testAccNsxtVpcServiceProfileMinimalistic(accTestPolicyVpcServiceProfileCreateAttributes["display_name"]),
135135
Check: resource.ComposeTestCheckFunc(
136-
testAccNsxtVpcServiceProfileExists(accTestPolicyVpcServiceProfileCreateAttributes["display_name"], testResourceName),
136+
testAccNsxtVpcServiceProfileExists(testResourceName),
137137
resource.TestCheckResourceAttr(testResourceName, "description", ""),
138138
resource.TestCheckResourceAttrSet(testResourceName, "nsx_id"),
139139
resource.TestCheckResourceAttrSet(testResourceName, "path"),
@@ -158,7 +158,7 @@ func TestAccResourceNsxtVpcServiceProfile_importBasic(t *testing.T) {
158158
},
159159
Steps: []resource.TestStep{
160160
{
161-
Config: testAccNsxtVpcServiceProfileMinimalistic(),
161+
Config: testAccNsxtVpcServiceProfileMinimalistic(getAccTestResourceName()),
162162
},
163163
{
164164
ResourceName: testResourceName,
@@ -170,7 +170,7 @@ func TestAccResourceNsxtVpcServiceProfile_importBasic(t *testing.T) {
170170
})
171171
}
172172

173-
func testAccNsxtVpcServiceProfileExists(displayName string, resourceName string) resource.TestCheckFunc {
173+
func testAccNsxtVpcServiceProfileExists(resourceName string) resource.TestCheckFunc {
174174
return func(state *terraform.State) error {
175175

176176
connector := getPolicyConnector(testAccProvider.Meta().(nsxtClients))
@@ -310,13 +310,12 @@ resource "nsxt_vpc_service_profile" "test" {
310310
}`, testAccNsxtProjectContext(), accTestPolicyVpcServiceProfileUpdateAttributes["display_name"], accTestPolicyVpcServiceProfileUpdateAttributes["server_addresses"])
311311
}
312312

313-
func testAccNsxtVpcServiceProfileMinimalistic() string {
313+
func testAccNsxtVpcServiceProfileMinimalistic(displayName string) string {
314314
return fmt.Sprintf(`
315315
resource "nsxt_vpc_service_profile" "test" {
316316
%s
317317
display_name = "%s"
318318
dhcp_config {
319319
}
320-
321-
}`, testAccNsxtProjectContext(), accTestPolicyVpcServiceProfileUpdateAttributes["display_name"])
320+
}`, testAccNsxtProjectContext(), displayName)
322321
}

0 commit comments

Comments
 (0)