Skip to content

Commit 863b06b

Browse files
committed
Fix tests
1 parent f3ee128 commit 863b06b

File tree

6 files changed

+35
-80
lines changed

6 files changed

+35
-80
lines changed

provider/pkg/provider/agent_pool_test.go

+6-8
Original file line numberDiff line numberDiff line change
@@ -40,16 +40,15 @@ func TestAgentPool(t *testing.T) {
4040
func() (*pulumiapi.AgentPool, error) { return nil, nil },
4141
)
4242

43-
provider := PulumiServiceAgentPoolResource{
44-
client: mockedClient,
45-
}
43+
provider := PulumiServiceAgentPoolResource{}
4644

4745
req := pulumirpc.ReadRequest{
4846
Id: "org/abc/123",
4947
Urn: "urn:123",
5048
}
5149

52-
resp, err := provider.Read(&req)
50+
resp, err := provider.Read(context.WithValue(context.Background(),
51+
TestClientKey, mockedClient), &req)
5352

5453
assert.NoError(t, err)
5554
assert.Equal(t, resp.Id, "")
@@ -66,16 +65,15 @@ func TestAgentPool(t *testing.T) {
6665
},
6766
)
6867

69-
provider := PulumiServiceAgentPoolResource{
70-
client: mockedClient,
71-
}
68+
provider := PulumiServiceAgentPoolResource{}
7269

7370
req := pulumirpc.ReadRequest{
7471
Id: "org/abc/123",
7572
Urn: "urn:123",
7673
}
7774

78-
resp, err := provider.Read(&req)
75+
resp, err := provider.Read(context.WithValue(context.Background(),
76+
TestClientKey, mockedClient), &req)
7977

8078
assert.NoError(t, err)
8179
assert.Equal(t, resp.Id, "org/abc/123")

provider/pkg/provider/config_test.go

+15-44
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package provider
22

33
import (
4-
"os"
4+
"context"
55
"testing"
66

77
"github.com/pulumi/pulumi/sdk/v3/go/common/workspace"
@@ -12,49 +12,21 @@ const (
1212
EnvVarPulumiHome = "PULUMI_HOME"
1313
)
1414

15+
func WithClient[T any](client T) context.Context {
16+
return context.WithValue(context.Background(), TestClientKey, client)
17+
}
18+
1519
func TestGetPulumiAccessToken(t *testing.T) {
1620
wantToken := "pul-1234abcd"
1721

18-
// setEnv sets environment variable and returns a function to reset
19-
// environment variable back to previous value
20-
setEnv := func(envVar, val string) func() {
21-
oldVal := os.Getenv(envVar)
22-
os.Setenv(envVar, val)
23-
return func() {
24-
os.Setenv(envVar, oldVal)
25-
}
26-
}
27-
28-
t.Run("Uses Config Variable", func(t *testing.T) {
29-
defer setEnv(EnvVarPulumiAccessToken, "")()
30-
c := PulumiServiceConfig{
31-
Config: map[string]string{
32-
"accessToken": wantToken,
33-
},
34-
}
35-
gotToken, err := c.getPulumiAccessToken()
36-
assert.NoError(t, err)
37-
assert.Equal(t, wantToken, *gotToken)
38-
39-
})
40-
41-
t.Run("Uses Environment Variable", func(t *testing.T) {
42-
c := PulumiServiceConfig{}
43-
defer setEnv(EnvVarPulumiAccessToken, wantToken)()
44-
45-
gotToken, err := c.getPulumiAccessToken()
46-
assert.NoError(t, err)
47-
assert.Equal(t, wantToken, *gotToken)
48-
})
49-
5022
t.Run("Uses Saved Credential", func(t *testing.T) {
51-
c := PulumiServiceConfig{}
23+
c := Config{}
5224
// ensure env var isn't set
53-
defer setEnv(EnvVarPulumiAccessToken, "")()
25+
t.Setenv(EnvVarPulumiAccessToken, "")
5426

5527
dir := t.TempDir()
5628
// set home directory so that workspace writes to temp dir
57-
defer setEnv(EnvVarPulumiHome, dir)()
29+
t.Setenv(EnvVarPulumiHome, dir)
5830

5931
account := "https://api.pulumi.com"
6032

@@ -67,23 +39,22 @@ func TestGetPulumiAccessToken(t *testing.T) {
6739
if err != nil {
6840
t.Fatalf("failed to store test credentials: %v", err)
6941
}
70-
gotToken, err := c.getPulumiAccessToken()
42+
err = c.Configure(context.Background())
7143
assert.NoError(t, err)
72-
assert.Equal(t, wantToken, *gotToken)
44+
assert.Equal(t, wantToken, c.AccessToken)
7345
})
7446

7547
t.Run("Returns Error", func(t *testing.T) {
76-
c := PulumiServiceConfig{}
48+
c := Config{}
7749

7850
// point PULUMI_HOME to empty dir so there's no credentials available
7951
dir := t.TempDir()
80-
defer setEnv(EnvVarPulumiHome, dir)()
52+
t.Setenv(EnvVarPulumiHome, dir)
8153
// explicitly unset access token variable
82-
defer setEnv(EnvVarPulumiAccessToken, "")()
83-
84-
gotToken, err := c.getPulumiAccessToken()
54+
t.Setenv(EnvVarPulumiAccessToken, "")
55+
err := c.Configure(context.Background())
8556

86-
assert.Nil(t, gotToken)
57+
assert.Empty(t, c.AccessToken)
8758
assert.Equal(t, ErrAccessTokenNotFound, err)
8859
})
8960
}

provider/pkg/provider/deployment_setting_test.go

+4-8
Original file line numberDiff line numberDiff line change
@@ -39,16 +39,14 @@ func TestDeploymentSettings(t *testing.T) {
3939
func() (*pulumiapi.DeploymentSettings, error) { return nil, nil },
4040
)
4141

42-
provider := PulumiServiceDeploymentSettingsResource{
43-
client: mockedClient,
44-
}
42+
provider := PulumiServiceDeploymentSettingsResource{}
4543

4644
req := pulumirpc.ReadRequest{
4745
Id: "abc/def/123",
4846
Urn: "urn:123",
4947
}
5048

51-
resp, err := provider.Read(&req)
49+
resp, err := provider.Read(WithClient(mockedClient), &req)
5250

5351
assert.NoError(t, err)
5452
assert.Equal(t, resp.Id, "")
@@ -67,16 +65,14 @@ func TestDeploymentSettings(t *testing.T) {
6765
},
6866
)
6967

70-
provider := PulumiServiceDeploymentSettingsResource{
71-
client: mockedClient,
72-
}
68+
provider := PulumiServiceDeploymentSettingsResource{}
7369

7470
req := pulumirpc.ReadRequest{
7571
Id: "abc/def/123",
7672
Urn: "urn:123",
7773
}
7874

79-
resp, err := provider.Read(&req)
75+
resp, err := provider.Read(WithClient(mockedClient), &req)
8076

8177
assert.NoError(t, err)
8278
assert.Equal(t, resp.Id, "abc/def/123")

provider/pkg/provider/stack_tags_test.go

+2-4
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,7 @@ func TestStackTagsUpdate(t *testing.T) {
2626
t.Fatal(err)
2727
}
2828

29-
st := &PulumiServiceStackTagResource{
30-
client: apiClient,
31-
}
29+
st := &PulumiServiceStackTagResource{}
3230

3331
input := PulumiServiceStackTagInput{
3432
Organization: "org",
@@ -49,7 +47,7 @@ func TestStackTagsUpdate(t *testing.T) {
4947
News: properties,
5048
}
5149

52-
_, err = st.Update(&upReq)
50+
_, err = st.Update(WithClient(apiClient), &upReq)
5351
assert.ErrorContains(t, err, "unexpected call to update, expected create to be called instead")
5452
})
5553

provider/pkg/provider/team_test.go

+4-8
Original file line numberDiff line numberDiff line change
@@ -54,16 +54,14 @@ func TestTeam(t *testing.T) {
5454
func() (*pulumiapi.Team, error) { return nil, nil },
5555
)
5656

57-
provider := PulumiServiceTeamResource{
58-
client: mockedClient,
59-
}
57+
provider := PulumiServiceTeamResource{}
6058

6159
req := pulumirpc.ReadRequest{
6260
Id: "abc/123",
6361
Urn: "urn:123",
6462
}
6563

66-
resp, err := provider.Read(&req)
64+
resp, err := provider.Read(WithClient(mockedClient), &req)
6765

6866
assert.NoError(t, err)
6967
assert.Equal(t, resp.Id, "")
@@ -86,16 +84,14 @@ func TestTeam(t *testing.T) {
8684
},
8785
)
8886

89-
provider := PulumiServiceTeamResource{
90-
client: mockedClient,
91-
}
87+
provider := PulumiServiceTeamResource{}
9288

9389
req := pulumirpc.ReadRequest{
9490
Id: "abc/123",
9591
Urn: "urn:123",
9692
}
9793

98-
resp, err := provider.Read(&req)
94+
resp, err := provider.Read(WithClient(mockedClient), &req)
9995

10096
assert.NoError(t, err)
10197
assert.Equal(t, resp.Id, "abc/123")

provider/pkg/provider/webhook_test.go

+4-8
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,14 @@ func TestWebhook(t *testing.T) {
4747
func() (*pulumiapi.Webhook, error) { return nil, nil },
4848
)
4949

50-
provider := PulumiServiceWebhookResource{
51-
client: mockedClient,
52-
}
50+
provider := PulumiServiceWebhookResource{}
5351

5452
req := pulumirpc.ReadRequest{
5553
Id: "abc/def/ghi/123",
5654
Urn: "urn:123",
5755
}
5856

59-
resp, err := provider.Read(&req)
57+
resp, err := provider.Read(WithClient(mockedClient), &req)
6058

6159
assert.NoError(t, err)
6260
assert.Equal(t, resp.Id, "")
@@ -75,16 +73,14 @@ func TestWebhook(t *testing.T) {
7573
},
7674
)
7775

78-
provider := PulumiServiceWebhookResource{
79-
client: mockedClient,
80-
}
76+
provider := PulumiServiceWebhookResource{}
8177

8278
req := pulumirpc.ReadRequest{
8379
Id: "abc/def/ghi/123",
8480
Urn: "urn:123",
8581
}
8682

87-
resp, err := provider.Read(&req)
83+
resp, err := provider.Read(WithClient(mockedClient), &req)
8884

8985
assert.NoError(t, err)
9086
assert.Equal(t, resp.Id, "abc/def/ghi/123")

0 commit comments

Comments
 (0)