Skip to content

Commit 7a39d34

Browse files
committed
Add tests
1 parent 73aa2dd commit 7a39d34

File tree

4 files changed

+45
-7
lines changed

4 files changed

+45
-7
lines changed

coderd/templateversions.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,9 @@ func (api *API) patchTemplateVersion(rw http.ResponseWriter, r *http.Request) {
7979
if !httpapi.Read(ctx, rw, r, &params) {
8080
return
8181
}
82+
if params.Name == "" {
83+
params.Name = templateVersion.Name
84+
}
8285
templateVersion, err := api.Database.UpdateTemplateVersionByID(ctx, database.UpdateTemplateVersionByIDParams{
8386
ID: templateVersion.ID,
8487
Name: params.Name,

coderd/templateversions_test.go

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1334,3 +1334,38 @@ func TestTemplateVersionVariables(t *testing.T) {
13341334
require.Equal(t, "*redacted*", actualVariables[0].Value)
13351335
})
13361336
}
1337+
1338+
func TestTemplateVersionPatch(t *testing.T) {
1339+
t.Parallel()
1340+
t.Run("Update the name", func(t *testing.T) {
1341+
t.Parallel()
1342+
client := coderdtest.New(t, nil)
1343+
user := coderdtest.CreateFirstUser(t, client)
1344+
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil)
1345+
1346+
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
1347+
defer cancel()
1348+
1349+
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{
1350+
Name: "new name",
1351+
})
1352+
1353+
require.NoError(t, err)
1354+
require.Equal(t, updatedVersion.Name, "new name")
1355+
})
1356+
1357+
t.Run("Use the same name if a new name is not passed", func(t *testing.T) {
1358+
t.Parallel()
1359+
client := coderdtest.New(t, nil)
1360+
user := coderdtest.CreateFirstUser(t, client)
1361+
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, nil)
1362+
1363+
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
1364+
defer cancel()
1365+
1366+
updatedVersion, err := client.UpdateTemplateVersion(ctx, version.ID, codersdk.PatchTemplateVersionRequest{})
1367+
1368+
require.NoError(t, err)
1369+
require.Equal(t, updatedVersion.Name, version.Name)
1370+
})
1371+
}

codersdk/deployment.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import (
44
"context"
55
"encoding/json"
66
"flag"
7-
"fmt"
87
"math"
98
"net/http"
109
"os"
@@ -199,7 +198,7 @@ func ParseSSHConfigOption(opt string) (key string, value string, err error) {
199198
return r == ' ' || r == '='
200199
})
201200
if idx == -1 {
202-
return "", "", xerrors.New(fmt.Sprintf("invalid config-ssh option %q", opt))
201+
return "", "", xerrors.Errorf("invalid config-ssh option %q", opt)
203202
}
204203
return opt[:idx], opt[idx+1:], nil
205204
}

codersdk/templateversions.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -296,14 +296,15 @@ func (c *Client) PreviousTemplateVersion(ctx context.Context, organization uuid.
296296
return version, json.NewDecoder(res.Body).Decode(&version)
297297
}
298298

299-
func (c *Client) UpdateTemplateVersion(ctx context.Context, version, req PatchTemplateVersionRequest) error {
300-
res, err := c.Request(ctx, http.MethodPatch, fmt.Sprintf("/api/v2/templateversions/%s", version), req)
299+
func (c *Client) UpdateTemplateVersion(ctx context.Context, versionId uuid.UUID, req PatchTemplateVersionRequest) (TemplateVersion, error) {
300+
res, err := c.Request(ctx, http.MethodPatch, fmt.Sprintf("/api/v2/templateversions/%s", versionId), req)
301301
if err != nil {
302-
return err
302+
return TemplateVersion{}, err
303303
}
304304
defer res.Body.Close()
305305
if res.StatusCode != http.StatusNoContent {
306-
return ReadBodyAsError(res)
306+
return TemplateVersion{}, ReadBodyAsError(res)
307307
}
308-
return nil
308+
var version TemplateVersion
309+
return version, json.NewDecoder(res.Body).Decode(&version)
309310
}

0 commit comments

Comments
 (0)