Expect(networker.DestroyCallCount()).To(Equal(1)) }) }) It("asks the containerizer to create a container", func() { _, err := gdnr.Create(garden.ContainerSpec{Handle: "bob"}) Expect(err).NotTo(HaveOccurred()) Expect(containerizer.CreateCallCount()).To(Equal(1)) _, spec := containerizer.CreateArgsForCall(0) Expect(spec.Handle).To(Equal("bob")) }) Context("when the containerizer fails to create the container", func() { BeforeEach(func() { containerizer.CreateReturns(errors.New("failed to create the banana")) }) It("should return an error", func() { _, err := gdnr.Create(garden.ContainerSpec{ Handle: "poor-banana", }) Expect(err).To(HaveOccurred()) }) It("should cleanup the networking configuration", func() { _, err := gdnr.Create(garden.ContainerSpec{ Handle: "poor-banana", }) Expect(err).To(HaveOccurred())