Expect(err).NotTo(HaveOccurred()) Eventually(func() []string { return ui.Prompts }).Should(ContainSubstrings( []string{"Really delete the route"}, )) }) }) Context("when the response is to proceed", func() { BeforeEach(func() { ui.Inputs = []string{"y"} }) It("tries to find the route", func() { Expect(err).NotTo(HaveOccurred()) Eventually(routeRepo.FindCallCount).Should(Equal(1)) host, domain, path, port := routeRepo.FindArgsForCall(0) Expect(host).To(Equal("")) Expect(path).To(Equal("")) Expect(port).To(Equal(0)) Expect(domain).To(Equal(fakeDomain)) }) Context("when a path is passed", func() { BeforeEach(func() { err := flagContext.Parse("domain-name", "-f", "--path", "the-path") Expect(err).NotTo(HaveOccurred()) cmd.Requirements(factory, flagContext) }) It("tries to find the route with the path", func() { Expect(err).NotTo(HaveOccurred())
GUID: "route-guid", Domain: httpDomain, Path: "path", }, nil, ) fakeRouteRepository.BindReturns(nil) }) It("creates and binds the route", func() { Expect(findAndBindRouteErr).NotTo(HaveOccurred()) actualDomainName := fakeDomainRepository.FindSharedByNameArgsForCall(1) Expect(actualDomainName).To(Equal("domain.com")) actualHost, actualDomain, actualPath, actualPort := fakeRouteRepository.FindArgsForCall(0) Expect(actualHost).To(Equal("host")) Expect(actualDomain).To(Equal(httpDomain)) Expect(actualPath).To(Equal("")) Expect(actualPort).To(Equal(0)) actualHost, actualDomain, actualPath, actualPort, actualUseRandomPort := fakeRouteRepository.CreateArgsForCall(0) Expect(actualHost).To(Equal("host")) Expect(actualDomain).To(Equal(httpDomain)) Expect(actualPath).To(Equal("")) Expect(actualPort).To(Equal(0)) Expect(actualUseRandomPort).To(BeFalse()) routeGUID, appGUID := fakeRouteRepository.BindArgsForCall(0) Expect(routeGUID).To(Equal("route-guid")) Expect(appGUID).To(Equal("app-guid"))