From cb37143fa4c61e9672ec61f9536069854ddcf955 Mon Sep 17 00:00:00 2001 From: Ben Potter Date: Wed, 3 Aug 2022 04:10:58 +0000 Subject: [PATCH 1/2] chore: alphabetize template list --- coderd/database/queries.sql.go | 4 ++-- coderd/database/queries/templates.sql | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/coderd/database/queries.sql.go b/coderd/database/queries.sql.go index f62956e01dda6..3d082e17fb40e 100644 --- a/coderd/database/queries.sql.go +++ b/coderd/database/queries.sql.go @@ -1889,7 +1889,7 @@ func (q *sqlQuerier) GetTemplateByOrganizationAndName(ctx context.Context, arg G const getTemplates = `-- name: GetTemplates :many SELECT id, created_at, updated_at, organization_id, deleted, name, provisioner, active_version_id, description, max_ttl, min_autostart_interval, created_by FROM templates -ORDER BY (created_at, id) ASC +ORDER BY (name, id) ASC ` func (q *sqlQuerier) GetTemplates(ctx context.Context) ([]Template, error) { @@ -1954,7 +1954,7 @@ WHERE id = ANY($4) ELSE true END -ORDER BY (created_at, id) ASC +ORDER BY (name, id) ASC ` type GetTemplatesWithFilterParams struct { diff --git a/coderd/database/queries/templates.sql b/coderd/database/queries/templates.sql index c9860c1ce4833..5d10ae185da09 100644 --- a/coderd/database/queries/templates.sql +++ b/coderd/database/queries/templates.sql @@ -34,7 +34,7 @@ WHERE id = ANY(@ids) ELSE true END -ORDER BY (created_at, id) ASC +ORDER BY (name, id) ASC ; -- name: GetTemplateByOrganizationAndName :one @@ -51,7 +51,7 @@ LIMIT -- name: GetTemplates :many SELECT * FROM templates -ORDER BY (created_at, id) ASC +ORDER BY (name, id) ASC ; -- name: InsertTemplate :one From 10717542fec0a01d23ee2c498d1e4a9cdd9b2340 Mon Sep 17 00:00:00 2001 From: Ben Potter Date: Thu, 4 Aug 2022 16:29:41 +0000 Subject: [PATCH 2/2] alphabetize templates in tests and databasefake --- cli/templatelist_test.go | 10 ++++++++-- coderd/database/databasefake/databasefake.go | 8 ++++---- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/cli/templatelist_test.go b/cli/templatelist_test.go index 0f660e4bd4d79..3324604d6abe0 100644 --- a/cli/templatelist_test.go +++ b/cli/templatelist_test.go @@ -1,6 +1,7 @@ package cli_test import ( + "sort" "testing" "github.com/stretchr/testify/require" @@ -36,10 +37,15 @@ func TestTemplateList(t *testing.T) { errC <- cmd.Execute() }() + // expect that templates are listed alphebetically + var templatesList = []string{firstTemplate.Name, secondTemplate.Name} + sort.Strings(templatesList) + require.NoError(t, <-errC) - pty.ExpectMatch(firstTemplate.Name) - pty.ExpectMatch(secondTemplate.Name) + for _, name := range templatesList { + pty.ExpectMatch(name) + } }) t.Run("NoTemplates", func(t *testing.T) { t.Parallel() diff --git a/coderd/database/databasefake/databasefake.go b/coderd/database/databasefake/databasefake.go index a38e41d81ad2a..e8c12b12a0fb1 100644 --- a/coderd/database/databasefake/databasefake.go +++ b/coderd/database/databasefake/databasefake.go @@ -897,8 +897,8 @@ func (q *fakeQuerier) GetTemplatesWithFilter(_ context.Context, arg database.Get } if len(templates) > 0 { slices.SortFunc(templates, func(i, j database.Template) bool { - if !i.CreatedAt.Before(j.CreatedAt) { - return false + if i.Name != j.Name { + return i.Name < j.Name } return i.ID.String() < j.ID.String() }) @@ -1080,8 +1080,8 @@ func (q *fakeQuerier) GetTemplates(_ context.Context) ([]database.Template, erro templates := slices.Clone(q.templates) slices.SortFunc(templates, func(i, j database.Template) bool { - if !i.CreatedAt.Before(j.CreatedAt) { - return false + if i.Name != j.Name { + return i.Name < j.Name } return i.ID.String() < j.ID.String() })