From 1d2ffb8a2b6af752b6fd091e8e59682625c2b495 Mon Sep 17 00:00:00 2001
From: Michael Hunteman <michael@huntm.net>
Date: Wed, 28 Aug 2024 18:07:22 -0700
Subject: Make guests endpoint plural

---
 client/src/components/Rsvp.tsx      | 2 +-
 client/src/main.tsx                 | 2 +-
 client/src/mocks/handlers.ts        | 4 ++--
 client/src/pages.ts                 | 2 +-
 client/src/slices/api/guestSlice.ts | 2 +-
 server/cmd/main.go                  | 2 +-
 server/guest/handler.go             | 6 +++---
 server/test/guest_test.go           | 8 ++++----
 8 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/client/src/components/Rsvp.tsx b/client/src/components/Rsvp.tsx
index ab83cd7..d694393 100644
--- a/client/src/components/Rsvp.tsx
+++ b/client/src/components/Rsvp.tsx
@@ -22,7 +22,7 @@ function Rsvp() {
       <Outlet context={auth?.guest} />
     </>
   ) : (
-    <Navigate to="/guest/login" state={{ from: location }} replace />
+    <Navigate to="/guests/login" state={{ from: location }} replace />
   );
 }
 
diff --git a/client/src/main.tsx b/client/src/main.tsx
index 2268d5f..fff9446 100644
--- a/client/src/main.tsx
+++ b/client/src/main.tsx
@@ -33,7 +33,7 @@ const router = createBrowserRouter([
         element: <Registry />,
       },
       {
-        path: 'guest/login',
+        path: 'guests/login',
         element: <GuestLogin />,
       },
       {
diff --git a/client/src/mocks/handlers.ts b/client/src/mocks/handlers.ts
index 8dc92b7..0e882ee 100644
--- a/client/src/mocks/handlers.ts
+++ b/client/src/mocks/handlers.ts
@@ -4,7 +4,7 @@ import { nanoid } from '@reduxjs/toolkit';
 const token = nanoid();
 
 export const handlers = [
-  http.post('/guest/login', () => {
+  http.post('/guests/login', () => {
     return HttpResponse.json({
       guest: {
         id: 1,
@@ -17,7 +17,7 @@ export const handlers = [
       token,
     });
   }),
-  http.patch('/guest/1', () => {
+  http.patch('/guests/1', () => {
     return HttpResponse.json({
       id: 1,
       firstName: 'Michael',
diff --git a/client/src/pages.ts b/client/src/pages.ts
index 5ebb9c4..4b0ec9d 100644
--- a/client/src/pages.ts
+++ b/client/src/pages.ts
@@ -1,7 +1,7 @@
 const pages = [
   { name: 'Home', to: '/' },
   { name: 'Schedule', to: '/schedule' },
-  { name: 'RSVP', to: '/guest/login' },
+  { name: 'RSVP', to: '/guests/login' },
   { name: 'Registry', to: '/registry' },
   { name: 'Dashboard', to: '/admin/login' },
 ];
diff --git a/client/src/slices/api/guestSlice.ts b/client/src/slices/api/guestSlice.ts
index 38deb9a..b009ff0 100644
--- a/client/src/slices/api/guestSlice.ts
+++ b/client/src/slices/api/guestSlice.ts
@@ -30,7 +30,7 @@ export interface PartyGuest {
 export const guestSlice = createApi({
   reducerPath: 'guestApi',
   baseQuery: fetchBaseQuery({
-    baseUrl: import.meta.env.VITE_BASE_URL + 'guest/',
+    baseUrl: import.meta.env.VITE_BASE_URL + 'guests/',
     prepareHeaders: (headers, { getState }) => {
       const token = (getState() as RootState).guest.token;
       if (token) {
diff --git a/server/cmd/main.go b/server/cmd/main.go
index 38ccf37..21cdccc 100644
--- a/server/cmd/main.go
+++ b/server/cmd/main.go
@@ -36,7 +36,7 @@ func main() {
 	adminHandler := admin.NewAdminHandler(adminStore, guestStore)
 
 	mux := http.NewServeMux()
-	mux.Handle("/guest/", guestHandler)
+	mux.Handle("/guests/", guestHandler)
 	mux.Handle("/admin/", adminHandler)
 	log.Fatal(http.ListenAndServe(":8080", serveHTTP(mux)))
 }
diff --git a/server/guest/handler.go b/server/guest/handler.go
index 153a633..418c223 100644
--- a/server/guest/handler.go
+++ b/server/guest/handler.go
@@ -12,8 +12,8 @@ import (
 )
 
 var (
-	guestRegex   = regexp.MustCompile(`^/guest/*$`)
-	guestIDRegex = regexp.MustCompile(`^/guest/([0-9]+)$`)
+	guestRegex   = regexp.MustCompile(`^/guests/*$`)
+	guestIDRegex = regexp.MustCompile(`^/guests/([0-9]+)$`)
 )
 
 type GuestHandler struct {
@@ -43,7 +43,7 @@ func (guestHandler *GuestHandler) ServeHTTP(responseWriter http.ResponseWriter,
 	switch {
 	case request.Method == http.MethodOptions:
 		responseWriter.WriteHeader(http.StatusOK)
-	case request.Method == http.MethodPost && request.URL.Path == "/guest/login":
+	case request.Method == http.MethodPost && request.URL.Path == "/guests/login":
 		guestHandler.handleLogIn(responseWriter, request)
 	case request.Method == http.MethodPut && guestIDRegex.MatchString(request.URL.Path):
 		guestHandler.handlePut(responseWriter, request)
diff --git a/server/test/guest_test.go b/server/test/guest_test.go
index 206837a..f6cc243 100644
--- a/server/test/guest_test.go
+++ b/server/test/guest_test.go
@@ -63,7 +63,7 @@ func TestUpdateRSVP(test *testing.T) {
 func logInGuest(guestHandler *guest.GuestHandler, test *testing.T) guest.LoginResponse {
 	response := httptest.NewRecorder()
 	loginRequest, err := http.NewRequest(http.MethodPost,
-		"http://localhost:8080/guest/login", strings.NewReader(getName()))
+		"http://localhost:8080/guests/login", strings.NewReader(getName()))
 	if err != nil {
 		test.Error(err)
 	}
@@ -79,7 +79,7 @@ func logInGuest(guestHandler *guest.GuestHandler, test *testing.T) guest.LoginRe
 func addPartyGuest(guestHandler *guest.GuestHandler, token string, test *testing.T) {
 	response := httptest.NewRecorder()
 	guestWithParty := getGuestWithParty()
-	putRequest, err := http.NewRequest(http.MethodPut, "http://localhost:8080/guest/1",
+	putRequest, err := http.NewRequest(http.MethodPut, "http://localhost:8080/guests/1",
 		strings.NewReader(guestWithParty))
 	if err != nil {
 		test.Error(err)
@@ -107,7 +107,7 @@ func logInAdmin(adminHandler *admin.AdminHandler, test *testing.T) admin.LoginRe
 
 func getGuests(guestHandler *guest.GuestHandler, token string, test *testing.T) []guest.Guest {
 	response := httptest.NewRecorder()
-	getRequest, _ := http.NewRequest(http.MethodGet, "http://localhost:8080/guest/", nil)
+	getRequest, _ := http.NewRequest(http.MethodGet, "http://localhost:8080/guests/", nil)
 	getRequest.Header.Set("Authorization", token)
 	guestHandler.ServeHTTP(response, getRequest)
 	assertEquals(test, response.Result().StatusCode, 200)
@@ -120,7 +120,7 @@ func getGuests(guestHandler *guest.GuestHandler, token string, test *testing.T)
 
 func deletePartyGuest(guestHandler *guest.GuestHandler, token string, test *testing.T) {
 	response := httptest.NewRecorder()
-	putRequest, err := http.NewRequest(http.MethodPut, "http://localhost:8080/guest/1",
+	putRequest, err := http.NewRequest(http.MethodPut, "http://localhost:8080/guests/1",
 		strings.NewReader(getGuestWithoutParty()))
 	if err != nil {
 		test.Error(err)
-- 
cgit v1.2.3