Skip to content

Commit 3611b6e

Browse files
[refactor / test] Add factory for creating Project with child Environment(s) (#451)
[1] Adds method to render api Server fake to create a project and it's child environment(s) in one go. [2] Use this new factory in all command-level postgres and kv tests. This PR 2 of 6 for postgres suspend / resume. https://linear.app/render-com/issue/GROW-2559/pg-resume. Before this refactor, setting up a project and an environment to put a resource in was verbose and error prone. You had to set up IDs, create the reosurces individually, and then wire up the foreign keys on both sides manually. This PR addresses this by making it easy to create a parent project and it's environments in one line. You don't need to specify IDs and the helper wires everything up for you. You then are returned the project and environments to reference in your tests. GitOrigin-RevId: 90907c6ccd3a7981fb098fb10f8006085852b8b5
1 parent 1c5be10 commit 3611b6e

12 files changed

Lines changed: 356 additions & 416 deletions

cmd/kvcreate_test.go

Lines changed: 80 additions & 137 deletions
Large diffs are not rendered by default.

cmd/kvdelete_test.go

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -155,15 +155,14 @@ func TestKVDelete_JSONOutput_OnError(t *testing.T) {
155155

156156
func TestKVDelete_NameCollision_NarrowedByEnvironment_Deletes(t *testing.T) {
157157
server := renderapi.NewServer(t)
158-
projectID := testids.ProjectID("project")
159-
envProdID := testids.EnvironmentID("production")
160-
envStagingID := testids.EnvironmentID("staging")
161-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID}))
162-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envProdID, Name: "production", ProjectId: projectID}))
163-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envStagingID, Name: "staging", ProjectId: projectID}))
158+
proj := server.CreateProject(
159+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
160+
renderapi.EnvAttrs{Name: "production"},
161+
renderapi.EnvAttrs{Name: "staging"},
162+
)
164163

165-
prodKV := seedKVInEnv(server, "key-value-not-unique-name", envProdID)
166-
stagingKV := seedKVInEnv(server, "key-value-not-unique-name", envStagingID)
164+
prodKV := seedKVInEnv(server, "key-value-not-unique-name", proj.Env("production").Id)
165+
stagingKV := seedKVInEnv(server, "key-value-not-unique-name", proj.Env("staging").Id)
167166

168167
result, err := executeKVDelete(t, server, "key-value-not-unique-name", "--environment", "production", "--confirm", "--output", "text")
169168
require.NoError(t, err)
@@ -176,13 +175,13 @@ func TestKVDelete_NameCollision_NarrowedByEnvironment_Deletes(t *testing.T) {
176175

177176
func TestKVDelete_EnvironmentByID_Deletes(t *testing.T) {
178177
server := renderapi.NewServer(t)
179-
projectID := testids.ProjectID("project")
180-
envID := testids.EnvironmentID("production")
181-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID}))
182-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envID, Name: "production", ProjectId: projectID}))
183-
kv := seedKVInEnv(server, "by-name-cache", envID)
178+
proj := server.CreateProject(
179+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
180+
renderapi.EnvAttrs{Name: "production"},
181+
)
182+
kv := seedKVInEnv(server, "by-name-cache", proj.Env("production").Id)
184183

185-
result, err := executeKVDelete(t, server, "by-name-cache", "--environment", envID, "--confirm", "--output", "text")
184+
result, err := executeKVDelete(t, server, "by-name-cache", "--environment", proj.Env("production").Id, "--confirm", "--output", "text")
186185
require.NoError(t, err)
187186
assert.Empty(t, server.KV.Instances)
188187
assert.Contains(t, result.Stdout, "Deleted")
@@ -202,14 +201,13 @@ func TestKVDelete_UnknownEnvironment_Errors(t *testing.T) {
202201

203202
func TestKVDelete_IDWithMismatchedEnvironment_Errors(t *testing.T) {
204203
server := renderapi.NewServer(t)
205-
projectID := testids.ProjectID("project")
206-
envProdID := testids.EnvironmentID("production")
207-
envStagingID := testids.EnvironmentID("staging")
208-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID}))
209-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envProdID, Name: "production", ProjectId: projectID}))
210-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envStagingID, Name: "staging", ProjectId: projectID}))
211-
212-
kv := seedKVInEnv(server, "prod-cache", envProdID)
204+
proj := server.CreateProject(
205+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
206+
renderapi.EnvAttrs{Name: "production"},
207+
renderapi.EnvAttrs{Name: "staging"},
208+
)
209+
210+
kv := seedKVInEnv(server, "prod-cache", proj.Env("production").Id)
213211

214212
_, err := executeKVDelete(t, server, kv.Id, "--environment", "staging", "--confirm", "--output", "text")
215213
require.Error(t, err)

cmd/kvget_test.go

Lines changed: 37 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -87,15 +87,14 @@ func TestKVGet_WithConnectionInfo_ShowsCredentials(t *testing.T) {
8787

8888
func TestKVGet_WithEnvironmentFlag_ResolvesCorrectly(t *testing.T) {
8989
server := renderapi.NewServer(t)
90-
projectID := testids.ProjectID("project")
91-
envProdID := testids.EnvironmentID("production")
92-
envStagingID := testids.EnvironmentID("staging")
93-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID}))
94-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envProdID, Name: "production", ProjectId: projectID}))
95-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envStagingID, Name: "staging", ProjectId: projectID}))
90+
project := server.CreateProject(
91+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
92+
renderapi.EnvAttrs{Name: "production"},
93+
renderapi.EnvAttrs{Name: "staging"},
94+
)
9695

97-
prodKV := seedKVInEnv(server, "shared-name", envProdID)
98-
seedKVInEnv(server, "shared-name", envStagingID)
96+
prodKV := seedKVInEnv(server, "shared-name", project.Env("production").Id)
97+
seedKVInEnv(server, "shared-name", project.Env("staging").Id)
9998

10099
result, err := executeKVGet(t, server, "shared-name", "--environment", "production", "--output", "text")
101100
require.NoError(t, err)
@@ -106,25 +105,18 @@ func TestKVGet_WithEnvironmentFlag_ResolvesCorrectly(t *testing.T) {
106105
func TestKVGet_WithProjectFlag_NarrowsNameLookupToProject(t *testing.T) {
107106
server := renderapi.NewServer(t)
108107

109-
projectAID := testids.ProjectID("project a")
110-
projectBID := testids.ProjectID("project b")
111-
projectAProductionEnvID := testids.EnvironmentID("project a production")
112-
projectAStagingEnvID := testids.EnvironmentID("project a staging")
113-
projectBProductionEnvID := testids.EnvironmentID("project b production")
108+
projectA := server.CreateProject(
109+
renderapi.ProjectAttrs{Name: "Project A", OwnerId: ACTIVE_WORKSPACE_ID},
110+
renderapi.EnvAttrs{Name: "production"},
111+
renderapi.EnvAttrs{Name: "staging"},
112+
)
113+
projectB := server.CreateProject(
114+
renderapi.ProjectAttrs{Name: "Project B", OwnerId: ACTIVE_WORKSPACE_ID},
115+
renderapi.EnvAttrs{Name: "production"},
116+
)
114117

115-
projectA := renderapi.NewProject(renderapi.ProjectAttrs{Id: projectAID, Name: "Project A", OwnerId: ACTIVE_WORKSPACE_ID})
116-
projectA.EnvironmentIds = []string{projectAProductionEnvID, projectAStagingEnvID}
117-
projectB := renderapi.NewProject(renderapi.ProjectAttrs{Id: projectBID, Name: "Project B", OwnerId: ACTIVE_WORKSPACE_ID})
118-
projectB.EnvironmentIds = []string{projectBProductionEnvID}
119-
120-
server.Projects.Add(projectA)
121-
server.Projects.Add(projectB)
122-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectAProductionEnvID, Name: "production", ProjectId: projectAID}))
123-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectAStagingEnvID, Name: "staging", ProjectId: projectAID}))
124-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectBProductionEnvID, Name: "production", ProjectId: projectBID}))
125-
126-
projectAKV := seedKVInEnv(server, "cache", projectAStagingEnvID)
127-
projectBKV := seedKVInEnv(server, "cache", projectBProductionEnvID)
118+
projectAKV := seedKVInEnv(server, "cache", projectA.Env("staging").Id)
119+
projectBKV := seedKVInEnv(server, "cache", projectB.Env("production").Id)
128120

129121
result, err := executeKVGet(t, server, "cache", "--project", "Project A", "--output", "text")
130122
require.NoError(t, err)
@@ -138,17 +130,17 @@ func TestKVGet_WithEnvironmentFlag_NarrowsLookupToActiveWorkspace(t *testing.T)
138130

139131
otherWorkspaceID := testids.WorkspaceID("other")
140132
server.Owners.Add(renderapi.NewOwner(client.Owner{Id: otherWorkspaceID, Name: "Other Workspace"}))
141-
activeProjectID := testids.ProjectID("active")
142-
otherProjectID := testids.ProjectID("other")
143-
activeEnvID := testids.EnvironmentID("active production")
144-
otherEnvID := testids.EnvironmentID("other production")
145133

146-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: activeProjectID, Name: "Active Project", OwnerId: ACTIVE_WORKSPACE_ID}))
147-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: otherProjectID, Name: "Other Project", OwnerId: otherWorkspaceID}))
148-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: activeEnvID, Name: "production", ProjectId: activeProjectID}))
149-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: otherEnvID, Name: "production", ProjectId: otherProjectID}))
134+
activeProject := server.CreateProject(
135+
renderapi.ProjectAttrs{Name: "Active Project", OwnerId: ACTIVE_WORKSPACE_ID},
136+
renderapi.EnvAttrs{Name: "production"},
137+
)
138+
server.CreateProject(
139+
renderapi.ProjectAttrs{Name: "Other Project", OwnerId: otherWorkspaceID},
140+
renderapi.EnvAttrs{Name: "production"},
141+
)
150142

151-
kv := seedKVInEnv(server, "cache", activeEnvID)
143+
kv := seedKVInEnv(server, "cache", activeProject.Env("production").Id)
152144

153145
result, err := executeKVGet(t, server, "cache", "--environment", "production", "--output", "text")
154146
require.NoError(t, err)
@@ -158,20 +150,16 @@ func TestKVGet_WithEnvironmentFlag_NarrowsLookupToActiveWorkspace(t *testing.T)
158150

159151
func TestKVGet_IDWithMismatchedProject_Errors(t *testing.T) {
160152
server := renderapi.NewServer(t)
161-
projectID := testids.ProjectID("project")
162-
otherProjectID := testids.ProjectID("other project")
163-
projectEnvID := testids.EnvironmentID("project")
164-
otherEnvID := testids.EnvironmentID("other project")
165-
project := renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID})
166-
project.EnvironmentIds = []string{projectEnvID}
167-
otherProject := renderapi.NewProject(renderapi.ProjectAttrs{Id: otherProjectID, Name: "Other Project", OwnerId: ACTIVE_WORKSPACE_ID})
168-
otherProject.EnvironmentIds = []string{otherEnvID}
169-
server.Projects.Add(project)
170-
server.Projects.Add(otherProject)
171-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectEnvID, Name: "production", ProjectId: projectID}))
172-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: otherEnvID, Name: "production", ProjectId: otherProjectID}))
173-
174-
otherKV := seedKVInEnv(server, "other-cache", otherEnvID)
153+
server.CreateProject(
154+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
155+
renderapi.EnvAttrs{Name: "production"},
156+
)
157+
otherProject := server.CreateProject(
158+
renderapi.ProjectAttrs{Name: "Other Project", OwnerId: ACTIVE_WORKSPACE_ID},
159+
renderapi.EnvAttrs{Name: "production"},
160+
)
161+
162+
otherKV := seedKVInEnv(server, "other-cache", otherProject.Env("production").Id)
175163

176164
_, err := executeKVGet(t, server, otherKV.Id, "--project", "My Project", "--output", "text")
177165
require.Error(t, err)

cmd/kvlist_test.go

Lines changed: 37 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import (
55
"testing"
66

77
renderapi "github.com/render-oss/cli/internal/fakes/renderapi"
8-
"github.com/render-oss/cli/internal/testids"
98
"github.com/render-oss/cli/pkg/client"
109
"github.com/spf13/pflag"
1110
"github.com/stretchr/testify/assert"
@@ -67,17 +66,16 @@ func TestKVList_MultipleInstances(t *testing.T) {
6766

6867
func TestKVList_FilterByEnvironmentID(t *testing.T) {
6968
server := renderapi.NewServer(t)
70-
projectID := testids.ProjectID("project")
71-
envProdID := testids.EnvironmentID("production")
72-
envStagingID := testids.EnvironmentID("staging")
73-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID}))
74-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envProdID, Name: "production", ProjectId: projectID}))
75-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envStagingID, Name: "staging", ProjectId: projectID}))
69+
proj := server.CreateProject(
70+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
71+
renderapi.EnvAttrs{Name: "production"},
72+
renderapi.EnvAttrs{Name: "staging"},
73+
)
7674

77-
prodKV := seedKVInEnv(server, "prod-cache", envProdID)
78-
stagingKV := seedKVInEnv(server, "staging-cache", envStagingID)
75+
prodKV := seedKVInEnv(server, "prod-cache", proj.Env("production").Id)
76+
stagingKV := seedKVInEnv(server, "staging-cache", proj.Env("staging").Id)
7977

80-
result, err := executeKVList(t, server, "--environment", envProdID, "--output", "text")
78+
result, err := executeKVList(t, server, "--environment", proj.Env("production").Id, "--output", "text")
8179
require.NoError(t, err)
8280

8381
assert.Contains(t, result.Stdout, prodKV.Id)
@@ -86,15 +84,14 @@ func TestKVList_FilterByEnvironmentID(t *testing.T) {
8684

8785
func TestKVList_FilterByEnvironmentName(t *testing.T) {
8886
server := renderapi.NewServer(t)
89-
projectID := testids.ProjectID("project")
90-
envProdID := testids.EnvironmentID("production")
91-
envStagingID := testids.EnvironmentID("staging")
92-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID}))
93-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envProdID, Name: "production", ProjectId: projectID}))
94-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envStagingID, Name: "staging", ProjectId: projectID}))
87+
proj := server.CreateProject(
88+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
89+
renderapi.EnvAttrs{Name: "production"},
90+
renderapi.EnvAttrs{Name: "staging"},
91+
)
9592

96-
prodKV := seedKVInEnv(server, "prod-cache", envProdID)
97-
stagingKV := seedKVInEnv(server, "staging-cache", envStagingID)
93+
prodKV := seedKVInEnv(server, "prod-cache", proj.Env("production").Id)
94+
stagingKV := seedKVInEnv(server, "staging-cache", proj.Env("staging").Id)
9895

9996
result, err := executeKVList(t, server, "--environment", "production", "--output", "text")
10097
require.NoError(t, err)
@@ -147,26 +144,19 @@ func TestKVList_UnknownEnvironment_Errors(t *testing.T) {
147144
func TestKVList_FilterByProject(t *testing.T) {
148145
server := renderapi.NewServer(t)
149146

150-
projectAID := testids.ProjectID("project a")
151-
projectBID := testids.ProjectID("project b")
152-
projectAProdID := testids.EnvironmentID("project a production")
153-
projectAStagingID := testids.EnvironmentID("project a staging")
154-
projectBProdID := testids.EnvironmentID("project b production")
155-
156-
projectA := renderapi.NewProject(renderapi.ProjectAttrs{Id: projectAID, Name: "Project A", OwnerId: ACTIVE_WORKSPACE_ID})
157-
projectA.EnvironmentIds = []string{projectAProdID, projectAStagingID}
158-
projectB := renderapi.NewProject(renderapi.ProjectAttrs{Id: projectBID, Name: "Project B", OwnerId: ACTIVE_WORKSPACE_ID})
159-
projectB.EnvironmentIds = []string{projectBProdID}
160-
161-
server.Projects.Add(projectA)
162-
server.Projects.Add(projectB)
163-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectAProdID, Name: "production", ProjectId: projectAID}))
164-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectAStagingID, Name: "staging", ProjectId: projectAID}))
165-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectBProdID, Name: "production", ProjectId: projectBID}))
147+
projectA := server.CreateProject(
148+
renderapi.ProjectAttrs{Name: "Project A", OwnerId: ACTIVE_WORKSPACE_ID},
149+
renderapi.EnvAttrs{Name: "production"},
150+
renderapi.EnvAttrs{Name: "staging"},
151+
)
152+
projectB := server.CreateProject(
153+
renderapi.ProjectAttrs{Name: "Project B", OwnerId: ACTIVE_WORKSPACE_ID},
154+
renderapi.EnvAttrs{Name: "production"},
155+
)
166156

167-
aProdKV := seedKVInEnv(server, "a-prod-cache", projectAProdID)
168-
aStagingKV := seedKVInEnv(server, "a-staging-cache", projectAStagingID)
169-
bProdKV := seedKVInEnv(server, "b-prod-cache", projectBProdID)
157+
aProdKV := seedKVInEnv(server, "a-prod-cache", projectA.Env("production").Id)
158+
aStagingKV := seedKVInEnv(server, "a-staging-cache", projectA.Env("staging").Id)
159+
bProdKV := seedKVInEnv(server, "b-prod-cache", projectB.Env("production").Id)
170160

171161
result, err := executeKVList(t, server, "--project", "Project A", "--output", "text")
172162
require.NoError(t, err)
@@ -179,23 +169,17 @@ func TestKVList_FilterByProject(t *testing.T) {
179169
func TestKVList_FilterByProjectAndEnvironment_NarrowsToEnvWithinProject(t *testing.T) {
180170
server := renderapi.NewServer(t)
181171

182-
projectAID := testids.ProjectID("project a")
183-
projectBID := testids.ProjectID("project b")
184-
projectAProdID := testids.EnvironmentID("project a production")
185-
projectBProdID := testids.EnvironmentID("project b production")
186-
187-
projectA := renderapi.NewProject(renderapi.ProjectAttrs{Id: projectAID, Name: "Project A", OwnerId: ACTIVE_WORKSPACE_ID})
188-
projectA.EnvironmentIds = []string{projectAProdID}
189-
projectB := renderapi.NewProject(renderapi.ProjectAttrs{Id: projectBID, Name: "Project B", OwnerId: ACTIVE_WORKSPACE_ID})
190-
projectB.EnvironmentIds = []string{projectBProdID}
191-
192-
server.Projects.Add(projectA)
193-
server.Projects.Add(projectB)
194-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectAProdID, Name: "production", ProjectId: projectAID}))
195-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: projectBProdID, Name: "production", ProjectId: projectBID}))
172+
projectA := server.CreateProject(
173+
renderapi.ProjectAttrs{Name: "Project A", OwnerId: ACTIVE_WORKSPACE_ID},
174+
renderapi.EnvAttrs{Name: "production"},
175+
)
176+
projectB := server.CreateProject(
177+
renderapi.ProjectAttrs{Name: "Project B", OwnerId: ACTIVE_WORKSPACE_ID},
178+
renderapi.EnvAttrs{Name: "production"},
179+
)
196180

197-
aProdKV := seedKVInEnv(server, "a-prod-cache", projectAProdID)
198-
bProdKV := seedKVInEnv(server, "b-prod-cache", projectBProdID)
181+
aProdKV := seedKVInEnv(server, "a-prod-cache", projectA.Env("production").Id)
182+
bProdKV := seedKVInEnv(server, "b-prod-cache", projectB.Env("production").Id)
199183

200184
result, err := executeKVList(t, server,
201185
"--project", "Project A",

cmd/kvresume_test.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -121,16 +121,15 @@ func TestKVResume_JSONOutput(t *testing.T) {
121121

122122
func TestKVResume_NameCollision_NarrowedByEnvironment_Resumes(t *testing.T) {
123123
server := renderapi.NewServer(t)
124-
projectID := testids.ProjectID("project")
125-
envProdID := testids.EnvironmentID("production")
126-
envStagingID := testids.EnvironmentID("staging")
127-
server.Projects.Add(renderapi.NewProject(renderapi.ProjectAttrs{Id: projectID, Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID}))
128-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envProdID, Name: "production", ProjectId: projectID}))
129-
server.Environments.Add(renderapi.NewEnvironment(client.Environment{Id: envStagingID, Name: "staging", ProjectId: projectID}))
130-
131-
prodKV := seedKVInEnv(server, "key-value-not-unique-name", envProdID)
124+
project := server.CreateProject(
125+
renderapi.ProjectAttrs{Name: "My Project", OwnerId: ACTIVE_WORKSPACE_ID},
126+
renderapi.EnvAttrs{Name: "production"},
127+
renderapi.EnvAttrs{Name: "staging"},
128+
)
129+
130+
prodKV := seedKVInEnv(server, "key-value-not-unique-name", project.Env("production").Id)
132131
prodKV.Status = client.DatabaseStatusSuspended
133-
stagingKV := seedKVInEnv(server, "key-value-not-unique-name", envStagingID)
132+
stagingKV := seedKVInEnv(server, "key-value-not-unique-name", project.Env("staging").Id)
134133
stagingKV.Status = client.DatabaseStatusSuspended
135134

136135
result, err := executeKVResume(t, server, "key-value-not-unique-name", "--environment", "production", "--output", "text")

0 commit comments

Comments
 (0)