diff --git a/provider/provider_test.go b/provider/provider_test.go index cd00f9a4..c1e3c686 100644 --- a/provider/provider_test.go +++ b/provider/provider_test.go @@ -3,6 +3,9 @@ package provider_test import ( "testing" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "github.com/hashicorp/terraform-plugin-sdk/v2/terraform" "github.com/stretchr/testify/require" "github.com/coder/terraform-provider-coder/provider" @@ -14,3 +17,34 @@ func TestProvider(t *testing.T) { err := tfProvider.InternalValidate() require.NoError(t, err) } + +// TestProviderEmpty ensures that the provider can be configured without +// any actual input data. This is important for adding new fields +// with backwards compatibility guarantees. +func TestProviderEmpty(t *testing.T) { + t.Parallel() + resource.Test(t, resource.TestCase{ + Providers: map[string]*schema.Provider{ + "coder": provider.New(), + }, + IsUnitTest: true, + Steps: []resource.TestStep{{ + Config: ` + provider "coder" {} + data "coder_provisioner" "me" {} + data "coder_workspace" "me" {} + data "coder_external_auth" "git" { + id = "git" + } + data "coder_git_auth" "git" { + id = "git" + } + data "coder_parameter" "param" { + name = "hey" + }`, + Check: func(state *terraform.State) error { + return nil + }, + }}, + }) +} diff --git a/provider/provisioner_test.go b/provider/provisioner_test.go index 777006f7..35303479 100644 --- a/provider/provisioner_test.go +++ b/provider/provisioner_test.go @@ -12,6 +12,7 @@ import ( ) func TestProvisioner(t *testing.T) { + t.Parallel() resource.Test(t, resource.TestCase{ Providers: map[string]*schema.Provider{ "coder": provider.New(),
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: