From fc1087a42b797c75835e15d6366998471d78c281 Mon Sep 17 00:00:00 2001 From: binwiederhier Date: Wed, 17 May 2023 11:19:48 -0400 Subject: [PATCH] The last one --- server/server_middleware.go | 2 +- server/server_twilio.go | 2 ++ user/manager_test.go | 6 ++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/server/server_middleware.go b/server/server_middleware.go index 0e4aff7c..7aea45a3 100644 --- a/server/server_middleware.go +++ b/server/server_middleware.go @@ -87,7 +87,7 @@ func (s *Server) ensureAdmin(next handleFunc) handleFunc { func (s *Server) ensureCallsEnabled(next handleFunc) handleFunc { return func(w http.ResponseWriter, r *http.Request, v *visitor) error { - if s.config.TwilioAccount == "" { + if s.config.TwilioAccount == "" || s.userManager == nil { return errHTTPNotFound } return next(w, r, v) diff --git a/server/server_twilio.go b/server/server_twilio.go index 11f58aa7..06723574 100644 --- a/server/server_twilio.go +++ b/server/server_twilio.go @@ -58,6 +58,8 @@ func (s *Server) convertPhoneNumber(u *user.User, phoneNumber string) (string, * return "", errHTTPBadRequestPhoneNumberNotVerified } +// callPhone calls the Twilio API to make a phone call to the given phone number, using the given message. +// Failures will be logged, but not returned to the caller. func (s *Server) callPhone(v *visitor, r *http.Request, m *message, to string) { u, sender := v.User(), m.Sender.String() if u != nil { diff --git a/user/manager_test.go b/user/manager_test.go index de1ad6fb..5e01f497 100644 --- a/user/manager_test.go +++ b/user/manager_test.go @@ -910,6 +910,12 @@ func TestUser_PhoneNumberAddListRemove(t *testing.T) { phoneNumbers, err = a.PhoneNumbers(phil.ID) require.Nil(t, err) require.Equal(t, 0, len(phoneNumbers)) + + // Paranoia check: We do NOT want to keep phone numbers in there + rows, err := a.db.Query(`SELECT * FROM user_phone`) + require.Nil(t, err) + require.False(t, rows.Next()) + require.Nil(t, rows.Close()) } func TestUser_PhoneNumberAdd_Multiple_Users_Same_Number(t *testing.T) {