Expect(buildpackRepo.DeleteBuildpackGuid).To(Equal("my-buildpack-guid")) Expect(len(ui.Prompts)).To(Equal(0)) Expect(ui.Outputs).To(ContainSubstrings( []string{"Deleting buildpack", "my-buildpack"}, []string{"OK"}, )) }) }) }) Context("when the buildpack provided is not found", func() { BeforeEach(func() { ui = &testterm.FakeUI{Inputs: []string{"y"}} buildpackRepo.FindByNameNotFound = true }) It("warns the user", func() { runCommand("my-buildpack") Expect(buildpackRepo.FindByNameName).To(Equal("my-buildpack")) Expect(buildpackRepo.FindByNameNotFound).To(BeTrue()) Expect(ui.Outputs).To(ContainSubstrings( []string{"Deleting", "my-buildpack"}, []string{"OK"}, )) Expect(ui.WarnOutputs).To(ContainSubstrings([]string{"my-buildpack", "does not exist"})) })
It("renames a buildpack", func() { fakeRepo.FindByNameBuildpack = models.Buildpack{ Name: "my-buildpack", Guid: "my-buildpack-guid", } runCommand("my-buildpack", "new-buildpack") Expect(ui.Outputs).To(ContainSubstrings( []string{"Renaming buildpack", "my-buildpack"}, []string{"OK"}, )) }) It("fails when the buildpack does not exist", func() { fakeRepo.FindByNameNotFound = true runCommand("my-buildpack1", "new-buildpack") Expect(ui.Outputs).To(ContainSubstrings( []string{"Renaming buildpack", "my-buildpack"}, []string{"FAILED"}, []string{"Buildpack my-buildpack1 not found"}, )) }) It("fails when there is an error updating the buildpack", func() { fakeRepo.FindByNameBuildpack = models.Buildpack{ Name: "my-buildpack", Guid: "my-buildpack-guid", } fakeRepo.UpdateBuildpackReturns.Error = errors.New("SAD TROMBONE")