@@ -349,6 +349,42 @@ func TestReverseProxy_ServeHTTP1(t *testing.T) {
349349 return makeCustomRequest (p , req )
350350 },
351351 },
352+ {
353+ cfg : authCfg ,
354+ name : "headers auth ok" ,
355+ expResponse : okResponse ,
356+ expStatusCode : http .StatusOK ,
357+ f : func (p * reverseProxy ) * http.Response {
358+ req := httptest .NewRequest ("POST" , fakeServer .URL , nil )
359+ req .Header .Set ("X-ClickHouse-User" , "foo" )
360+ req .Header .Set ("X-ClickHouse-Key" , "bar" )
361+ return makeCustomRequest (p , req )
362+ },
363+ },
364+ {
365+ cfg : authCfg ,
366+ name : "header auth wrong name" ,
367+ expResponse : "invalid username or password for user \" fooo\" " ,
368+ expStatusCode : http .StatusUnauthorized ,
369+ f : func (p * reverseProxy ) * http.Response {
370+ req := httptest .NewRequest ("POST" , fakeServer .URL , nil )
371+ req .Header .Set ("X-ClickHouse-User" , "fooo" )
372+ req .Header .Set ("X-ClickHouse-Key" , "bar" )
373+ return makeCustomRequest (p , req )
374+ },
375+ },
376+ {
377+ cfg : authCfg ,
378+ name : "header auth wrong name" ,
379+ expResponse : "invalid username or password for user \" foo\" " ,
380+ expStatusCode : http .StatusUnauthorized ,
381+ f : func (p * reverseProxy ) * http.Response {
382+ req := httptest .NewRequest ("POST" , fakeServer .URL , nil )
383+ req .Header .Set ("X-ClickHouse-User" , "foo" )
384+ req .Header .Set ("X-ClickHouse-Key" , "baar" )
385+ return makeCustomRequest (p , req )
386+ },
387+ },
352388 }
353389
354390 for _ , tc := range testCases {
0 commit comments