Skip to content

Commit 1276685

Browse files
Escape folder display name with string quotes rather than query escaping. (#4032) (#2528)
Signed-off-by: Modular Magician <[email protected]>
1 parent 211f41b commit 1276685

File tree

3 files changed

+24
-2
lines changed

3 files changed

+24
-2
lines changed

.changelog/4032.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:bug
2+
resourcemanager: Fixed a bug in retrieving `google_active_folder` data source when the display name included whitespace
3+
```

google-beta/data_source_google_active_folder.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package google
22

33
import (
44
"fmt"
5-
"net/url"
65

76
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
87
resourceManagerV2Beta1 "google.golang.org/api/cloudresourcemanager/v2beta1"
@@ -40,7 +39,7 @@ func dataSourceGoogleActiveFolderRead(d *schema.ResourceData, meta interface{})
4039
parent := d.Get("parent").(string)
4140
displayName := d.Get("display_name").(string)
4241

43-
queryString := fmt.Sprintf("lifecycleState=ACTIVE AND parent=%s AND displayName=%s", parent, url.QueryEscape(displayName))
42+
queryString := fmt.Sprintf("lifecycleState=ACTIVE AND parent=%s AND displayName=\"%s\"", parent, displayName)
4443
searchRequest := &resourceManagerV2Beta1.SearchFoldersRequest{
4544
Query: queryString,
4645
}

google-beta/data_source_google_active_folder_test.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,26 @@ func TestAccDataSourceGoogleActiveFolder_space(t *testing.T) {
4848
})
4949
}
5050

51+
func TestAccDataSourceGoogleActiveFolder_dash(t *testing.T) {
52+
org := getTestOrgFromEnv(t)
53+
54+
parent := fmt.Sprintf("organizations/%s", org)
55+
displayName := "terraform - test " + randString(t, 10)
56+
57+
vcrTest(t, resource.TestCase{
58+
PreCheck: func() { testAccPreCheck(t) },
59+
Providers: testAccProviders,
60+
Steps: []resource.TestStep{
61+
{
62+
Config: testAccDataSourceGoogleActiveFolderConfig(parent, displayName),
63+
Check: resource.ComposeTestCheckFunc(
64+
testAccDataSourceGoogleActiveFolderCheck("data.google_active_folder.my_folder", "google_folder.foobar"),
65+
),
66+
},
67+
},
68+
})
69+
}
70+
5171
func testAccDataSourceGoogleActiveFolderCheck(data_source_name string, resource_name string) resource.TestCheckFunc {
5272
return func(s *terraform.State) error {
5373
ds, ok := s.RootModule().Resources[data_source_name]

0 commit comments

Comments
 (0)