Expect(routeRepo.FindByHostAndDomainCalledWith.Host).To(Equal("my-new-app-laughing-cow")) }) It("provides a random hostname when the random-route option is set in the manifest", func() { manifestApp.Set("random-route", true) callPush("my-new-app") Expect(routeRepo.FindByHostAndDomainCalledWith.Host).To(Equal("my-new-app-laughing-cow")) }) }) It("pushes the contents of the directory specified using the -p flag", func() { callPush("-p", "../some/path-to/an-app", "app-with-path") appDir, _ := actor.GatherFilesArgsForCall(0) Expect(appDir).To(Equal("../some/path-to/an-app")) }) It("pushes the contents of the current working directory by default", func() { callPush("app-with-default-path") dir, _ := os.Getwd() appDir, _ := actor.GatherFilesArgsForCall(0) Expect(appDir).To(Equal(dir)) }) It("fails when given a bad manifest path", func() { manifestRepo.ReadManifestReturns.Manifest = manifest.NewEmptyManifest() manifestRepo.ReadManifestReturns.Error = errors.New("read manifest error")
}) }) It("includes the app files in dir", func() { expectedLocalFiles := []models.AppFileFields{ { Path: "the-path", }, { Path: "the-other-path", }, } appfiles.AppFilesInDirReturns(expectedLocalFiles, nil) callPush("-p", "../some/path-to/an-app/file.zip", "app-with-path") actualLocalFiles, _, _ := actor.GatherFilesArgsForCall(0) Expect(actualLocalFiles).To(Equal(expectedLocalFiles)) }) It("prints a message when there are no app files to process", func() { appfiles.AppFilesInDirReturns([]models.AppFileFields{}, nil) callPush("-p", "../some/path-to/an-app/file.zip", "app-with-path") Expect(ui.Outputs).To(ContainSubstrings( []string{"No app files found in '../some/path-to/an-app/file.zip'"}, )) }) It("prints a message when there is an error getting app files", func() { appfiles.AppFilesInDirReturns([]models.AppFileFields{}, errors.New("some error")) callPush("-p", "../some/path-to/an-app/file.zip", "app-with-path")