add test cases for router sessionOn config
This commit is contained in:
parent
7d7c4539d3
commit
34068e63e6
@ -750,3 +750,59 @@ func TestRouterEntityTooLargeCopyBody(t *testing.T) {
|
|||||||
t.Errorf("TestRouterRequestEntityTooLarge can't run")
|
t.Errorf("TestRouterRequestEntityTooLarge can't run")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestRouterSessionSet(t *testing.T) {
|
||||||
|
oldGlobalSessionOn := BConfig.WebConfig.Session.SessionOn
|
||||||
|
defer func() {
|
||||||
|
BConfig.WebConfig.Session.SessionOn = oldGlobalSessionOn
|
||||||
|
}()
|
||||||
|
|
||||||
|
// global sessionOn = false, router sessionOn = false
|
||||||
|
r, _ := http.NewRequest("GET", "/user", nil)
|
||||||
|
w := httptest.NewRecorder()
|
||||||
|
handler := NewControllerRegister()
|
||||||
|
handler.Add("/user", &TestController{}, SetRouterMethods(&TestController{}, "get:Get"),
|
||||||
|
SetRouterSessionOn(false))
|
||||||
|
handler.ServeHTTP(w, r)
|
||||||
|
if w.Header().Get("Set-Cookie") != "" {
|
||||||
|
t.Errorf("TestRotuerSessionSet failed")
|
||||||
|
}
|
||||||
|
|
||||||
|
// global sessionOn = false, router sessionOn = true
|
||||||
|
r, _ = http.NewRequest("GET", "/user", nil)
|
||||||
|
w = httptest.NewRecorder()
|
||||||
|
handler = NewControllerRegister()
|
||||||
|
handler.Add("/user", &TestController{}, SetRouterMethods(&TestController{}, "get:Get"),
|
||||||
|
SetRouterSessionOn(true))
|
||||||
|
handler.ServeHTTP(w, r)
|
||||||
|
if w.Header().Get("Set-Cookie") != "" {
|
||||||
|
t.Errorf("TestRotuerSessionSet failed")
|
||||||
|
}
|
||||||
|
|
||||||
|
BConfig.WebConfig.Session.SessionOn = true
|
||||||
|
if err := registerSession(); err != nil {
|
||||||
|
t.Errorf("register session failed, error: %s", err.Error())
|
||||||
|
}
|
||||||
|
// global sessionOn = true, router sessionOn = false
|
||||||
|
r, _ = http.NewRequest("GET", "/user", nil)
|
||||||
|
w = httptest.NewRecorder()
|
||||||
|
handler = NewControllerRegister()
|
||||||
|
handler.Add("/user", &TestController{}, SetRouterMethods(&TestController{}, "get:Get"),
|
||||||
|
SetRouterSessionOn(false))
|
||||||
|
handler.ServeHTTP(w, r)
|
||||||
|
if w.Header().Get("Set-Cookie") != "" {
|
||||||
|
t.Errorf("TestRotuerSessionSet failed")
|
||||||
|
}
|
||||||
|
|
||||||
|
// global sessionOn = true, router sessionOn = true
|
||||||
|
r, _ = http.NewRequest("GET", "/user", nil)
|
||||||
|
w = httptest.NewRecorder()
|
||||||
|
handler = NewControllerRegister()
|
||||||
|
handler.Add("/user", &TestController{}, SetRouterMethods(&TestController{}, "get:Get"),
|
||||||
|
SetRouterSessionOn(true))
|
||||||
|
handler.ServeHTTP(w, r)
|
||||||
|
if w.Header().Get("Set-Cookie") == "" {
|
||||||
|
t.Errorf("TestRotuerSessionSet failed")
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user