From ec3c24399cc5589a577c9b5bff8924ba3bbd4d84 Mon Sep 17 00:00:00 2001 From: Bryan Phelps Date: Wed, 2 Feb 2022 00:38:28 +0000 Subject: [PATCH 1/5] Update test to verify return value is non-nil --- coderd/projects_test.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/coderd/projects_test.go b/coderd/projects_test.go index 98261ba105cf7..059eea9daf89d 100644 --- a/coderd/projects_test.go +++ b/coderd/projects_test.go @@ -47,6 +47,7 @@ func TestProjects(t *testing.T) { _ = server.RandomInitialUser(t) projects, err := server.Client.Projects(context.Background(), "") require.NoError(t, err) + require.NotNil(t, projects) require.Len(t, projects, 0) }) @@ -77,6 +78,7 @@ func TestProjects(t *testing.T) { projects, err := server.Client.Projects(context.Background(), user.Organization) require.NoError(t, err) + require.NotNil(t, projects) require.Len(t, projects, 0) }) From 7ec0abc8fc5e61e7cb8242da7084599156a8fa57 Mon Sep 17 00:00:00 2001 From: Bryan Phelps Date: Wed, 2 Feb 2022 00:38:36 +0000 Subject: [PATCH 2/5] Get tests green --- coderd/projects.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/coderd/projects.go b/coderd/projects.go index b7e161adcd7bc..ada5eb60fc6ca 100644 --- a/coderd/projects.go +++ b/coderd/projects.go @@ -42,6 +42,7 @@ func (api *api) projects(rw http.ResponseWriter, r *http.Request) { projects, err := api.Database.GetProjectsByOrganizationIDs(r.Context(), organizationIDs) if errors.Is(err, sql.ErrNoRows) { err = nil + projects = []database.Project{} } if err != nil { httpapi.Write(rw, http.StatusInternalServerError, httpapi.Response{ @@ -59,6 +60,7 @@ func (api *api) projectsByOrganization(rw http.ResponseWriter, r *http.Request) projects, err := api.Database.GetProjectsByOrganizationIDs(r.Context(), []string{organization.ID}) if errors.Is(err, sql.ErrNoRows) { err = nil + projects = []database.Project{} } if err != nil { httpapi.Write(rw, http.StatusInternalServerError, httpapi.Response{ From 886d647c9bccaab6aff91f9f508f32e05221d817 Mon Sep 17 00:00:00 2001 From: Bryan Phelps Date: Wed, 2 Feb 2022 00:41:40 +0000 Subject: [PATCH 3/5] Remove now-unnecessary hack in projects page --- site/pages/projects/index.tsx | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/site/pages/projects/index.tsx b/site/pages/projects/index.tsx index 42df98f666ddf..bf67deb52502b 100644 --- a/site/pages/projects/index.tsx +++ b/site/pages/projects/index.tsx @@ -19,13 +19,9 @@ const ProjectsPage: React.FC = () => { const styles = useStyles() const router = useRouter() const { me, signOut } = useUser(true) - const { data, error } = useSWR("/api/v2/projects") + const { data: projects, error } = useSWR("/api/v2/projects") const { data: orgs, error: orgsError } = useSWR("/api/v2/users/me/organizations") - // TODO: The API call is currently returning `null`, which isn't ideal - // - it breaks checking for data presence with SWR. - const projects = data || [] - if (error) { return } From dc9ccea89d2414456607a783951d29fe1480481d Mon Sep 17 00:00:00 2001 From: Bryan Phelps Date: Wed, 2 Feb 2022 02:40:45 +0000 Subject: [PATCH 4/5] Try setting projects outside - is it possible sqlc is returning nil,nil? --- coderd/projects.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/coderd/projects.go b/coderd/projects.go index ada5eb60fc6ca..84540ad08fd8c 100644 --- a/coderd/projects.go +++ b/coderd/projects.go @@ -42,7 +42,6 @@ func (api *api) projects(rw http.ResponseWriter, r *http.Request) { projects, err := api.Database.GetProjectsByOrganizationIDs(r.Context(), organizationIDs) if errors.Is(err, sql.ErrNoRows) { err = nil - projects = []database.Project{} } if err != nil { httpapi.Write(rw, http.StatusInternalServerError, httpapi.Response{ @@ -50,6 +49,10 @@ func (api *api) projects(rw http.ResponseWriter, r *http.Request) { }) return } + // Don't return 'null' + if projects == nil { + projects = []database.Project{} + } render.Status(r, http.StatusOK) render.JSON(rw, r, projects) } @@ -60,7 +63,6 @@ func (api *api) projectsByOrganization(rw http.ResponseWriter, r *http.Request) projects, err := api.Database.GetProjectsByOrganizationIDs(r.Context(), []string{organization.ID}) if errors.Is(err, sql.ErrNoRows) { err = nil - projects = []database.Project{} } if err != nil { httpapi.Write(rw, http.StatusInternalServerError, httpapi.Response{ @@ -68,6 +70,10 @@ func (api *api) projectsByOrganization(rw http.ResponseWriter, r *http.Request) }) return } + // Don't return 'null' + if projects == nil { + projects = []database.Project{} + } render.Status(r, http.StatusOK) render.JSON(rw, r, projects) } From 9cb53dd5e63d50938b0a3734a71d1285cca50aa8 Mon Sep 17 00:00:00 2001 From: Bryan Phelps Date: Wed, 9 Feb 2022 04:21:13 +0000 Subject: [PATCH 5/5] Remove extra newline --- coderd/projects.go | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/coderd/projects.go b/coderd/projects.go index b41c097055186..f50c192e6a006 100644 --- a/coderd/projects.go +++ b/coderd/projects.go @@ -58,11 +58,9 @@ func (api *api) projects(rw http.ResponseWriter, r *http.Request) { }) return } - if projects == nil { projects = []database.Project{} } - render.Status(r, http.StatusOK) render.JSON(rw, r, projects) } @@ -80,17 +78,9 @@ func (api *api) projectsByOrganization(rw http.ResponseWriter, r *http.Request) }) return } -<<<<<<< HEAD - // Don't return 'null' - if projects == nil { - projects = []database.Project{} - } -||||||| 2afad8b -======= if projects == nil { projects = []database.Project{} } ->>>>>>> main render.Status(r, http.StatusOK) render.JSON(rw, r, projects) } pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy