@@ -63,9 +63,53 @@ func TestKeyAuth(t *testing.T) {
6363 err := middlewareChain (c )
6464
6565 assert .Error (t , err )
66+ assert .EqualError (t , err , "code=401, message=Unauthorized, internal=some user defined error" )
6667 assert .False (t , handlerCalled )
6768 })
69+ t .Run ("auth no error failed" , func (t * testing.T ) {
70+ handlerCalled := false
71+ handler := func (c echo.Context ) error {
72+ handlerCalled = true
73+ return c .String (http .StatusOK , "test" )
74+ }
75+ middlewareChain := PathAuth ("apikey" , testKeyValidator )(handler )
6876
77+ e := echo .New ()
78+ e .GET ("/:apikey" , middlewareChain )
79+
80+ req := httptest .NewRequest (http .MethodGet , "/" , nil )
81+ rec := httptest .NewRecorder ()
82+
83+ c := e .NewContext (req , rec )
84+ e .Router ().Find (http .MethodGet , "/no-error" , c )
85+ err := middlewareChain (c )
86+
87+ assert .Error (t , err )
88+ assert .EqualError (t , err , "code=401, message=Unauthorized" )
89+ assert .False (t , handlerCalled )
90+ })
91+ t .Run ("auth nokey" , func (t * testing.T ) {
92+ handlerCalled := false
93+ handler := func (c echo.Context ) error {
94+ handlerCalled = true
95+ return c .String (http .StatusOK , "test" )
96+ }
97+ middlewareChain := PathAuth ("undef" , testKeyValidator )(handler )
98+
99+ e := echo .New ()
100+ e .GET ("/:apikey" , middlewareChain )
101+
102+ req := httptest .NewRequest (http .MethodGet , "/" , nil )
103+ rec := httptest .NewRecorder ()
104+
105+ c := e .NewContext (req , rec )
106+ e .Router ().Find (http .MethodGet , "/error-key" , c )
107+ err := middlewareChain (c )
108+
109+ assert .Error (t , err )
110+ assert .EqualError (t , err , "code=400, message=Bad Request, internal=code=400, message=Missing key in the request" )
111+ assert .False (t , handlerCalled )
112+ })
69113}
70114
71115func TestPathAuthWithConfig (t * testing.T ) {
@@ -103,7 +147,7 @@ func TestPathAuthWithConfig(t *testing.T) {
103147 return req
104148 },
105149 expectHandlerCalled : false ,
106- expectError : "code=400 , message=Bad Request " ,
150+ expectError : "code=401 , message=Unauthorized " ,
107151 },
108152 }
109153
0 commit comments