func makeAppWithRoute(appName string) models.Application { application := models.Application{} application.Name = appName application.Guid = "app-guid" application.BuildpackUrl = "http://123.com" application.Command = "command1" application.Diego = false application.DetectedStartCommand = "detected_command" application.DiskQuota = 100 application.EnvironmentVars = map[string]interface{}{"test": 123} application.RunningInstances = 2 application.HealthCheckTimeout = 100 application.SpaceGuid = "guids_in_spaaace" application.PackageState = "STAGED" application.StagingFailedReason = "no reason" application.State = "started" application.InstanceCount = 2 application.RunningInstances = 2 application.Memory = 256 t := time.Date(2009, time.November, 10, 15, 0, 0, 0, time.UTC) application.PackageUpdatedAt = &t services := models.ServicePlanSummary{ Guid: "s1-guid", Name: "s1-service", } application.Services = []models.ServicePlanSummary{services} domain := models.DomainFields{Guid: "domain1-guid", Name: "example.com", OwningOrganizationGuid: "org-123", Shared: true} route := models.RouteSummary{Host: "foo", Guid: "foo-guid", Domain: domain} secondRoute := models.RouteSummary{Host: appName, Domain: domain} application.Stack = &models.Stack{ Name: "fake_stack", Guid: "123-123-123", } application.Routes = []models.RouteSummary{route, secondRoute} return application }
Expect(ui.Outputs).To(ContainSubstrings( []string{"my-app", "my-org", "my-space", "my-user"}, []string{"OK"}, []string{"0 of 2 instances running", "2 starting"}, []string{"started"}, )) Expect(requirementsFactory.ApplicationName).To(Equal("my-app")) appGUID, _ := appRepo.UpdateArgsForCall(0) Expect(appGUID).To(Equal("my-app-guid")) Expect(displayApp.AppToDisplay).To(Equal(defaultAppForStart)) }) It("displays the command start command instead of the detected start command when set", func() { defaultAppForStart.Command = "command start command" defaultAppForStart.DetectedStartCommand = "detected start command" ui, appRepo, _ = startAppWithInstancesAndErrors(displayApp, defaultAppForStart, requirementsFactory) appRepo.GetAppReturns(defaultAppForStart, nil) Expect(appRepo.ReadCallCount()).To(Equal(1)) Expect(ui.Outputs).To(ContainSubstrings( []string{"App my-app was started using this command `command start command`"}, )) }) It("displays the detected start command when no other command is set", func() { defaultAppForStart.DetectedStartCommand = "detected start command" defaultAppForStart.Command = "" ui, appRepo, _ := startAppWithInstancesAndErrors(displayApp, defaultAppForStart, requirementsFactory) Expect(appRepo.ReadCallCount()).To(Equal(1))