Context("a second container", func() { var originContainer garden.Container JustBeforeEach(func() { var err error originContainer = container container, err = client.Create(garden.ContainerSpec{ Network: subnet, }) Expect(err).NotTo(HaveOccurred()) }) AfterEach(func() { Expect(client.Destroy(originContainer.Handle())).To(Succeed()) }) It("should have the next IP address", func() { buffer := gbytes.NewBuffer() proc, err := container.Run( garden.ProcessSpec{ Path: "ifconfig", User: "******", }, garden.ProcessIO{Stdout: buffer}, ) Expect(err).NotTo(HaveOccurred()) Expect(proc.Wait()).To(Equal(0)) Expect(buffer).To(gbytes.Say(ipAddress(subnet, 3)))
var _ = Describe("Destroying a Container", func() { var ( client *runner.RunningGarden container garden.Container ) BeforeEach(func() { client = startGarden() }) AfterEach(func() { Expect(client.DestroyAndStop()).To(Succeed()) }) JustBeforeEach(func() { Expect(client.Destroy(container.Handle())).To(Succeed()) }) Context("when running a process", func() { var ( process garden.Process initProcPid int ) BeforeEach(func() { var err error container, err = client.Create(garden.ContainerSpec{}) Expect(err).NotTo(HaveOccurred()) initProcPid = initProcessPID(container.Handle())