Skip to content

Commit 9647e2b

Browse files
committed
test: add tests for build_settings.prevent_non_git_prod_deploys attr
1 parent 1afdf85 commit 9647e2b

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

internal/provider/site_build_settings_resource_test.go

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ func TestAccSiteBuildSettings(t *testing.T) {
2424
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "production_branch", "preview"),
2525
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "branch_deploy_branches.#", "1"),
2626
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "branch_deploy_branches.0", "staging"),
27+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "prevent_non_git_prod_deploys", "false"),
2728
),
2829
},
2930
{
@@ -69,3 +70,55 @@ resource "netlify_waf_policy" "example" {
6970
},
7071
}, func(s *terraform.State) error { return nil })
7172
}
73+
74+
func TestAccSiteBuildSettingsNonGitDeploys(t *testing.T) {
75+
accTest(t, []resource.TestStep{
76+
{
77+
Config: `resource "netlify_site_build_settings" "example" {
78+
site_id = "49137d35-1470-4db1-810f-c185b8381cd3"
79+
build_command = "npm run build && true"
80+
publish_directory = "dist/dist"
81+
production_branch = "preview"
82+
branch_deploy_branches = ["staging"]
83+
prevent_non_git_prod_deploys = true
84+
}`,
85+
Check: resource.ComposeAggregateTestCheckFunc(
86+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "site_id", "49137d35-1470-4db1-810f-c185b8381cd3"),
87+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "build_command", "npm run build && true"),
88+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "publish_directory", "dist/dist"),
89+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "production_branch", "preview"),
90+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "branch_deploy_branches.#", "1"),
91+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "branch_deploy_branches.0", "staging"),
92+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "prevent_non_git_prod_deploys", "true"),
93+
),
94+
},
95+
{
96+
Config: `resource "netlify_site_build_settings" "example" {
97+
site_id = "49137d35-1470-4db1-810f-c185b8381cd3"
98+
build_command = "npm run build"
99+
publish_directory = "dist"
100+
production_branch = "main"
101+
branch_deploy_branches = ["preview", "staging"]
102+
prevent_non_git_prod_deploys = false
103+
}`,
104+
Check: resource.ComposeAggregateTestCheckFunc(
105+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "site_id", "49137d35-1470-4db1-810f-c185b8381cd3"),
106+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "build_command", "npm run build"),
107+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "publish_directory", "dist"),
108+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "production_branch", "main"),
109+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "branch_deploy_branches.#", "2"),
110+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "branch_deploy_branches.0", "preview"),
111+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "branch_deploy_branches.1", "staging"),
112+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "prevent_non_git_prod_deploys", "false"),
113+
),
114+
},
115+
{
116+
ResourceName: "netlify_site_build_settings.example",
117+
ImportState: true,
118+
ImportStateId: "49137d35-1470-4db1-810f-c185b8381cd3",
119+
ImportStateVerifyIdentifierAttribute: "site_id",
120+
ImportStateVerify: true,
121+
ImportStateVerifyIgnore: []string{"last_updated"},
122+
},
123+
}, func(s *terraform.State) error { return nil })
124+
}

0 commit comments

Comments
 (0)