}) Describe("Setter", func() { var requestBody string BeforeEach(func() { server.AppendHandlers( ghttp.CombineHandlers( ghttp.VerifyRequest("POST", "/api/containers/containerhandle/grace_time"), ghttp.RespondWith(200, `{}`), func(w http.ResponseWriter, req *http.Request) { body, err := ioutil.ReadAll(req.Body) req.Body.Close() Expect(err).ShouldNot(HaveOccurred()) requestBody = string(body) }, ), ) }) It("sets the gracetime", func() { container := netContainer.NewContainer(client, "containerhandle", logger) err := container.SetGraceTime(time.Second) Expect(err).NotTo(HaveOccurred()) Expect(server.ReceivedRequests()).Should(HaveLen(1)) Expect(requestBody).Should(Equal(`{"grace_time":1000000000}`)) }) }) }) })
Ω(rule.Networks).Should(HaveLen(1)) Ω(rule.Networks[0]).Should(Equal(garden.IPRange{Start: net.ParseIP("1.2.3.4"), End: net.ParseIP("1.2.3.4")})) Ω(rule.Ports).Should(HaveLen(1)) Ω(rule.Ports[0]).Should(Equal(garden.PortRange{Start: 12, End: 24})) Ω(rule.Log).Should(Equal(true)) }) }) Describe(("GraceTime"), func() { It("send the set grace time request", func() { graceTime := time.Second * 5 Ω(container.SetGraceTime(graceTime)).Should(Succeed()) Ω(fakeConnection.SetGraceTimeCallCount()).Should(Equal(1)) handle, actualGraceTime := fakeConnection.SetGraceTimeArgsForCall(0) Ω(handle).Should(Equal("some-handle")) Ω(actualGraceTime).Should(Equal(graceTime)) }) Context("when the request fails", func() { disaster := errors.New("banana") BeforeEach(func() { fakeConnection.SetGraceTimeReturns(disaster) }) It("returns the error", func() {