@@ -18,25 +18,33 @@ func (h *dummyHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
1818func TestAttachAuthToken (t * testing.T ) {
1919 fakeToken := "fake-token"
2020 dummyClientIP := "1.1.1.1"
21+ dummyAddr := dummyClientIP + ":12345"
2122 dummy := dummyHandler {}
2223 am , _ := New (& dummy , AuthToken (fakeToken ), Domains ([]string {"site1.com" , "site2.org" }))
24+
2325 req , _ := http .NewRequest ("GET" , "http://site1.com/abc.gz" , nil )
24- req .RemoteAddr = dummyClientIP
26+ req .RemoteAddr = dummyAddr
27+ am .ServeHTTP (nil , req )
28+ assert .Equal (t , fakeToken , dummy .req .Header .Get (common .CfgSvrAuthTokenHeader ), "should attach token" )
29+ assert .Equal (t , dummyClientIP , dummy .req .Header .Get (common .CfgSvrClientIPHeader ), "should attach client ip" )
30+
31+ req , _ = http .NewRequest ("GET" , "http://site2.org/abc.gz" , nil )
32+ req .RemoteAddr = dummyAddr
2533 am .ServeHTTP (nil , req )
26- assert .Equal (t , fakeToken , dummy .req .Header .Get (common .CfgSvrAuthTokenHeader ))
27- assert .Equal (t , dummyClientIP , dummy .req .Header .Get (common .CfgSvrClientIPHeader ))
34+ assert .Equal (t , fakeToken , dummy .req .Header .Get (common .CfgSvrAuthTokenHeader ), "should attach token" )
35+ assert .Equal (t , dummyClientIP , dummy .req .Header .Get (common .CfgSvrClientIPHeader ), "should attach client ip" )
2836
2937 req , _ = http .NewRequest ("GET" , "http://site2.org/abc.gz" , nil )
30- req .RemoteAddr = dummyClientIP
38+ req .RemoteAddr = "bad-addr"
3139 am .ServeHTTP (nil , req )
32- assert .Equal (t , fakeToken , dummy .req .Header .Get (common .CfgSvrAuthTokenHeader ))
33- assert .Equal (t , dummyClientIP , dummy .req .Header .Get (common .CfgSvrClientIPHeader ))
40+ assert .Equal (t , fakeToken , dummy .req .Header .Get (common .CfgSvrAuthTokenHeader ), "should attach token" )
41+ assert .Equal (t , "" , dummy .req .Header .Get (common .CfgSvrClientIPHeader ), "should not attach client ip if remote address is invalid" )
3442
3543 req , _ = http .NewRequest ("GET" , "http://not-config-server.org/abc.gz" , nil )
36- req .RemoteAddr = dummyClientIP
44+ req .RemoteAddr = dummyAddr
3745 am .ServeHTTP (nil , req )
38- assert .Equal (t , "" , dummy .req .Header .Get (common .CfgSvrAuthTokenHeader ))
39- assert .Equal (t , "" , dummy .req .Header .Get (common .CfgSvrClientIPHeader ))
46+ assert .Equal (t , "" , dummy .req .Header .Get (common .CfgSvrAuthTokenHeader ), "should not attach token for other sites" )
47+ assert .Equal (t , "" , dummy .req .Header .Get (common .CfgSvrClientIPHeader ), "should not attach client ip for other sites" )
4048}
4149
4250func TestInitialize (t * testing.T ) {
0 commit comments