From ebac6ceb15580c1164b887a2de9f5576d9bb6433 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 3 Apr 2024 11:25:01 -0400 Subject: [PATCH] fix: add test case to validate empty provider --- provider/provider_test.go | 34 ++++++++++++++++++++++++++++++++++ provider/provisioner_test.go | 1 + 2 files changed, 35 insertions(+) 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(), pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

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:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy