コード例 #1
0
			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
		}
	}