It("destroys the session", func() { Expect(sessionMgr.DestroyCallCount()).To(Equal(1)) id, _ := sessionMgr.DestroyArgsForCall(0) Expect(id).To(Equal(session.ID())) }) It("removes the session", func() { Eventually(func() *api.SessionEntry { entries, _, err := client.Session().List(nil) Expect(err).NotTo(HaveOccurred()) return findSession(session.ID(), entries) }).Should(BeNil()) }) It("sends a nil error", func() { Eventually(session.Err()).Should(Receive(BeNil())) }) It("can be called multiple times", func() { session.Destroy() }) }) }) }) func findSession(sessionID string, entries []*api.SessionEntry) *api.SessionEntry { for _, e := range entries { if e.ID == sessionID { return e } }