git.iko.soy/typeable/oauth2-proxy
on master help sign in
Clean up persistent SessionStore tests
42f14a4Joel Speed
pkg/sessions/session_store_test.go+10−4
@@ -122,7 +122,7 @@ var _ = Describe("NewSessionStore", func() {
122 Expect(err).ToNot(HaveOccurred())
122 Expect(err).ToNot(HaveOccurred())
123 })
123 })
124
124
125− It("sets a `set-cookie` header in the response and session to not be loadable after clear", func() {
125+ It("sets a `set-cookie` header in the response", func() {
126 Expect(response.Header().Get("Set-Cookie")).ToNot(BeEmpty())
126 Expect(response.Header().Get("Set-Cookie")).ToNot(BeEmpty())
127 })
127 })
128
128
@@ -169,8 +169,9 @@ var _ = Describe("NewSessionStore", func() {
169 })
169 })
170 }
170 }
171
171
172+ // The following should only be for server stores
172 PersistentSessionStoreTests := func() {
173 PersistentSessionStoreTests := func() {
173− Context("when Clear is called the session should not be recoverable", func() {
174+ Context("when Clear is called on a persistent store", func() {
174 var loadedAfterClear *sessionsapi.SessionState
175 var loadedAfterClear *sessionsapi.SessionState
175 BeforeEach(func() {
176 BeforeEach(func() {
176 req := httptest.NewRequest("GET", "http://example.com/", nil)
177 req := httptest.NewRequest("GET", "http://example.com/", nil)
@@ -185,16 +186,21 @@ var _ = Describe("NewSessionStore", func() {
185 err = ss.Clear(response, request)
186 err = ss.Clear(response, request)
186 Expect(err).ToNot(HaveOccurred())
187 Expect(err).ToNot(HaveOccurred())
187
188
188− // The following should only be for server stores
189 loadReq := httptest.NewRequest("GET", "http://example.com/", nil)
189 loadReq := httptest.NewRequest("GET", "http://example.com/", nil)
190 for _, c := range resultCookies {
190 for _, c := range resultCookies {
191 loadReq.AddCookie(c)
191 loadReq.AddCookie(c)
192 }
192 }
193+
193 loadedAfterClear, err = ss.Load(loadReq)
194 loadedAfterClear, err = ss.Load(loadReq)
195+ // If we have cleared the session, Load should fail
196+ Expect(err).To(HaveOccurred())
194 })
197 })
195
198
196− It("sets a `set-cookie` header in the response and session to not be loadable after clear", func() {
199+ It("sets a `set-cookie` header in the response", func() {
197 Expect(response.Header().Get("Set-Cookie")).ToNot(BeEmpty())
200 Expect(response.Header().Get("Set-Cookie")).ToNot(BeEmpty())
201+ })
202+
203+ It("attempting to Load returns an empty session", func() {
198 Expect(loadedAfterClear).To(BeNil())
204 Expect(loadedAfterClear).To(BeNil())
199 })
205 })
200
206