Ejemplo n.º 1
0
			values := make(url.Values)
			values.Set(":process_guid", processGuid)
			values.Set(":instance_guid", instanceGuid)
			req.URL.RawQuery = values.Encode()
		})

		Context("and StopContainer succeeds", func() {
			It("responds with 202 Accepted", func() {
				Expect(resp.Code).To(Equal(http.StatusAccepted))
			})

			It("eventually stops the instance", func() {
				Eventually(fakeClient.StopContainerCallCount).Should(Equal(1))

				processGuid, instanceGuid := fakeClient.StopContainerArgsForCall(0)
				Expect(processGuid).To(Equal(processGuid))
				Expect(instanceGuid).To(Equal(instanceGuid))
			})
		})

		Context("but StopContainer fails", func() {
			BeforeEach(func() {
				fakeClient.StopContainerReturns(errors.New("fail"))
			})

			It("responds with 500 Internal Server Error", func() {
				Expect(resp.Code).To(Equal(http.StatusInternalServerError))
			})
		})
	})
Ejemplo n.º 2
0
					Expect(logger).To(gbytes.Say(sessionPrefix + ".failed-deleting-container"))
				})
			})
		})
	})

	Describe("StopContainer", func() {
		var result bool

		JustBeforeEach(func() {
			result = containerDelegate.StopContainer(logger, expectedGuid)
		})

		It("stops the container", func() {
			Expect(executorClient.StopContainerCallCount()).To(Equal(1))
			_, containerGuid := executorClient.StopContainerArgsForCall(0)
			Expect(containerGuid).To(Equal(expectedGuid))
		})

		Context("when stopping succeeds", func() {
			It("returns true", func() {
				Expect(result).To(BeTrue())
			})

			It("logs the stopping", func() {
				Expect(logger).To(gbytes.Say(sessionPrefix + ".stopping-container"))
				Expect(logger).To(gbytes.Say(sessionPrefix + ".succeeded-stopping-container"))
			})
		})

		Context("when stopping fails", func() {