}) Describe("Destroy", func() { It("sends a destroy request", func() { err := client.Destroy("some-handle") Ω(err).ShouldNot(HaveOccurred()) Ω(fakeConnection.Destroyed()).Should(ContainElement("some-handle")) }) Context("when there is a connection error", func() { disaster := errors.New("oh no!") BeforeEach(func() { fakeConnection.WhenDestroying = func(string) error { return disaster } }) It("returns it", func() { err := client.Destroy("some-handle") Ω(err).Should(Equal(disaster)) }) }) }) Describe("Lookup", func() { It("sends a list request", func() { fakeConnection.WhenListing = func(warden.Properties) ([]string, error) { return []string{"some-handle", "some-other-handle"}, nil }