Describe("getting", func() { Context("when getting the property succeeds", func() { BeforeEach(func() { fakeContainer.GetPropertyReturns("some-property-value", nil) }) It("returns the property from the container", func() { value, err := container.GetProperty("some-property") Ω(err).ShouldNot(HaveOccurred()) Ω(value).Should(Equal("some-property-value")) Ω(fakeContainer.GetPropertyCallCount()).Should(Equal(1)) name := fakeContainer.GetPropertyArgsForCall(0) Ω(name).Should(Equal("some-property")) }) itResetsGraceTimeWhenHandling(func() { _, err := container.GetProperty("some-property") Ω(err).ShouldNot(HaveOccurred()) }) itFailsWhenTheContainerIsNotFound(func() error { _, err := container.GetProperty("some-property") return err }) }) Context("when getting the property fails", func() {