@@ -93,36 +93,42 @@ var _ = Describe("NewSessionStore", func() {
9393 // The following should only be for server stores
9494 PersistentSessionStoreTests := func() {
9595 Context("when Clear is called on a persistent store", func() {
96− var loadedAfterClear *sessionsapi.SessionState
96+ var resultCookies []*http.Cookie
97+
9798 BeforeEach(func() {
9899 req := httptest.NewRequest("GET", "http://example.com/", nil)
99100 saveResp := httptest.NewRecorder()
100101 err := ss.Save(saveResp, req, session)
101102 Expect(err).ToNot(HaveOccurred())
102103
103− resultCookies := saveResp.Result().Cookies()
104+ resultCookies = saveResp.Result().Cookies()
104105 for _, c := range resultCookies {
105106 request.AddCookie(c)
106107 }
107108 err = ss.Clear(response, request)
108109 Expect(err).ToNot(HaveOccurred())
110+ })
109111
110− loadReq := httptest.NewRequest("GET", "http://example.com/", nil)
111− for _, c := range resultCookies {
112− loadReq.AddCookie(c)
113− }
112+ Context("attempting to Load", func() {
113+ var loadedAfterClear *sessionsapi.SessionState
114+ var loadErr error
114115
115− loadedAfterClear, err = ss.Load(loadReq)
116− // If we have cleared the session, Load should fail
117− Expect(err).To(HaveOccurred())
118− })
116+ BeforeEach(func() {
117+ loadReq := httptest.NewRequest("GET", "http://example.com/", nil)
118+ for _, c := range resultCookies {
119+ loadReq.AddCookie(c)
120+ }
119121
120− It("sets a `set-cookie` header in the response", func() {
121− Expect(response.Header().Get("Set-Cookie")).ToNot(BeEmpty())
122− })
122+ loadedAfterClear, loadErr = ss.Load(loadReq)
123+ })
124+
125+ It("returns an empty session", func() {
126+ Expect(loadedAfterClear).To(BeNil())
127+ })
123128
124− It("attempting to Load returns an empty session", func() {
125− Expect(loadedAfterClear).To(BeNil())
129+ It("returns an error", func() {
130+ Expect(loadErr).To(HaveOccurred())
131+ })
126132 })
127133
128134 CheckCookieOptions()