MCPcopy Index your code
hub / github.com/coder/coder / TestTemplatePull_SpecifiedStdout

Function TestTemplatePull_SpecifiedStdout

cli/templatepull_test.go:154–192  ·  view source on GitHub ↗

Stdout tests that 'templates pull' pulls down the specified template and writes it to stdout.

(t *testing.T)

Source from the content-addressed store, hash-verified

152// Stdout tests that 'templates pull' pulls down the specified template and
153// writes it to stdout.
154func TestTemplatePull_SpecifiedStdout(t *testing.T) {
155 t.Parallel()
156
157 client := coderdtest.New(t, &coderdtest.Options{
158 IncludeProvisionerDaemon: true,
159 })
160 owner := coderdtest.CreateFirstUser(t, client)
161 templateAdmin, _ := coderdtest.CreateAnotherUser(t, client, owner.OrganizationID, rbac.RoleTemplateAdmin())
162
163 source1 := genTemplateVersionSource()
164 source2 := genTemplateVersionSource()
165 source3 := genTemplateVersionSource()
166
167 expected, err := echo.Tar(source1)
168 require.NoError(t, err)
169
170 version1 := coderdtest.CreateTemplateVersion(t, client, owner.OrganizationID, source1)
171 _ = coderdtest.AwaitTemplateVersionJobCompleted(t, client, version1.ID)
172
173 template := coderdtest.CreateTemplate(t, client, owner.OrganizationID, version1.ID)
174
175 updatedVersion := coderdtest.UpdateTemplateVersion(t, client, owner.OrganizationID, source2, template.ID)
176 _ = coderdtest.AwaitTemplateVersionJobCompleted(t, client, updatedVersion.ID)
177
178 updatedVersion2 := coderdtest.UpdateTemplateVersion(t, client, owner.OrganizationID, source3, template.ID)
179 _ = coderdtest.AwaitTemplateVersionJobCompleted(t, client, updatedVersion2.ID)
180 coderdtest.UpdateActiveTemplateVersion(t, client, template.ID, updatedVersion2.ID)
181
182 inv, root := clitest.New(t, "templates", "pull", "--tar", template.Name, "--version", version1.Name)
183 clitest.SetupConfig(t, templateAdmin, root)
184
185 var buf bytes.Buffer
186 inv.Stdout = &buf
187
188 err = inv.Run()
189 require.NoError(t, err)
190
191 require.True(t, bytes.Equal(expected, buf.Bytes()), "tar files differ")
192}
193
194// Stdout tests that 'templates pull' pulls down the latest template
195// and writes it to stdout.

Callers

nothing calls this directly

Calls 15

NewFunction · 0.92
CreateFirstUserFunction · 0.92
CreateAnotherUserFunction · 0.92
RoleTemplateAdminFunction · 0.92
TarFunction · 0.92
CreateTemplateVersionFunction · 0.92
CreateTemplateFunction · 0.92
UpdateTemplateVersionFunction · 0.92
NewFunction · 0.92
SetupConfigFunction · 0.92

Tested by

no test coverage detected