Skip to content

Commit bc64386

Browse files
committed
test
1 parent cf2e8d0 commit bc64386

File tree

2 files changed

+35
-3
lines changed

2 files changed

+35
-3
lines changed

provider/workspace.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -64,19 +64,19 @@ func workspaceDataSource() *schema.Resource {
6464

6565
templateID, err := helpers.RequireEnv("CODER_WORKSPACE_TEMPLATE_ID")
6666
if err != nil {
67-
return diag.Errorf("template ID is missing: %w", err)
67+
return diag.Errorf("template ID is missing: %s", err.Error())
6868
}
6969
_ = rd.Set("template_id", templateID)
7070

7171
templateName, err := helpers.RequireEnv("CODER_WORKSPACE_TEMPLATE_NAME")
7272
if err != nil {
73-
return diag.Errorf("template name is missing: %w", err)
73+
return diag.Errorf("template name is missing: %s", err.Error())
7474
}
7575
_ = rd.Set("template_name", templateName)
7676

7777
templateVersion, err := helpers.RequireEnv("CODER_WORKSPACE_TEMPLATE_VERSION")
7878
if err != nil {
79-
return diag.Errorf("template version is missing: %w", err)
79+
return diag.Errorf("template version is missing: %s", err.Error())
8080
}
8181
_ = rd.Set("template_version", templateVersion)
8282

provider/workspace_test.go

+32
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package provider_test
22

33
import (
4+
"regexp"
45
"testing"
56

67
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
@@ -102,3 +103,34 @@ func TestWorkspace_UndefinedOwner(t *testing.T) {
102103
}},
103104
})
104105
}
106+
107+
func TestWorkspace_MissingTemplateName(t *testing.T) {
108+
t.Setenv("CODER_WORKSPACE_BUILD_ID", "1") // Let's pretend this is a workspace build
109+
110+
t.Setenv("CODER_WORKSPACE_OWNER", "owner123")
111+
t.Setenv("CODER_WORKSPACE_OWNER_ID", "11111111-1111-1111-1111-111111111111")
112+
t.Setenv("CODER_WORKSPACE_OWNER_NAME", "Mr Owner")
113+
t.Setenv("CODER_WORKSPACE_OWNER_EMAIL", "[email protected]")
114+
t.Setenv("CODER_WORKSPACE_OWNER_SESSION_TOKEN", "abc123")
115+
t.Setenv("CODER_WORKSPACE_OWNER_GROUPS", `["group1", "group2"]`)
116+
t.Setenv("CODER_WORKSPACE_OWNER_OIDC_ACCESS_TOKEN", "supersecret")
117+
t.Setenv("CODER_WORKSPACE_TEMPLATE_ID", "templateID")
118+
// CODER_WORKSPACE_TEMPLATE_NAME is missing
119+
t.Setenv("CODER_WORKSPACE_TEMPLATE_VERSION", "v1.2.3")
120+
121+
resource.Test(t, resource.TestCase{
122+
Providers: map[string]*schema.Provider{
123+
"coder": provider.New(),
124+
},
125+
IsUnitTest: true,
126+
Steps: []resource.TestStep{{
127+
Config: `
128+
provider "coder" {
129+
url = "https://example.com:8080"
130+
}
131+
data "coder_workspace" "me" {
132+
}`,
133+
ExpectError: regexp.MustCompile("CODER_WORKSPACE_TEMPLATE_NAME is required"),
134+
}},
135+
})
136+
}

0 commit comments

Comments
 (0)