func testDisplayingAppSummaryWithErrorCode(errorCode string) { reqApp := models.Application{} reqApp.Name = "my-app" reqApp.Guid = "my-app-guid" domain3 := models.DomainFields{} domain3.Name = "example.com" domain4 := models.DomainFields{} domain4.Name = "example.com" route1 := models.RouteSummary{} route1.Host = "my-app" route1.Domain = domain3 route2 := models.RouteSummary{} route2.Host = "foo" route2.Domain = domain4 routes := []models.RouteSummary{ route1, route2, } app := models.ApplicationFields{} app.State = "stopped" app.InstanceCount = 2 app.RunningInstances = 0 app.Memory = 256 appSummary := models.AppSummary{} appSummary.ApplicationFields = app appSummary.RouteSummaries = routes appSummaryRepo := &testapi.FakeAppSummaryRepo{GetSummarySummary: appSummary, GetSummaryErrorCode: errorCode} appInstancesRepo := &testapi.FakeAppInstancesRepo{} reqFactory := &testreq.FakeReqFactory{LoginSuccess: true, TargetedSpaceSuccess: true, Application: reqApp} ui := callApp([]string{"my-app"}, reqFactory, appSummaryRepo, appInstancesRepo) Expect(appSummaryRepo.GetSummaryAppGuid).To(Equal("my-app-guid")) Expect(appInstancesRepo.GetInstancesAppGuid).To(Equal("my-app-guid")) testassert.SliceContains(ui.Outputs, testassert.Lines{ {"Showing health and status", "my-app", "my-org", "my-space", "my-user"}, {"state", "stopped"}, {"instances", "0/2"}, {"usage", "256M x 2 instances"}, {"urls", "my-app.example.com, foo.example.com"}, {"no running instances"}, }) }
testcmd "testhelpers/commands" testconfig "testhelpers/configuration" testreq "testhelpers/requirements" testterm "testhelpers/terminal" ) var _ = Describe("list-apps command", func() { It("TestApps", func() { domain := models.DomainFields{} domain.Name = "cfapps.io" domain2 := models.DomainFields{} domain2.Name = "example.com" route1 := models.RouteSummary{} route1.Host = "app1" route1.Domain = domain route2 := models.RouteSummary{} route2.Host = "app1" route2.Domain = domain2 app1Routes := []models.RouteSummary{route1, route2} domain3 := models.DomainFields{} domain3.Name = "cfapps.io" route3 := models.RouteSummary{} route3.Host = "app2" route3.Domain = domain3 app2Routes := []models.RouteSummary{route3}
Expect(*appRepo.UpdateParams.StackGuid).To(Equal("differentStack-guid")) }) Describe("when the app already exists and has a route bound", func() { BeforeEach(func() { domain := models.DomainFields{ Name: "example.com", Guid: "domain-guid", Shared: true, } domainRepo.ListSharedDomainsDomains = []models.DomainFields{domain} existingRoute := models.RouteSummary{} existingRoute.Host = "existing-app" existingRoute.Domain = domain routeRepo.FindByHostAndDomainRoute = models.Route{ RouteSummary: existingRoute, } existingApp := models.Application{} existingApp.Name = "existing-app" existingApp.Guid = "existing-app-guid" existingApp.Routes = []models.RouteSummary{existingRoute} appRepo.ReadApp = existingApp appRepo.UpdateAppResult = existingApp }) It("uses the existing route when an app already has it bound", func() {
defaultInstanceReponses = [][]models.AppInstanceFields{} defaultInstanceErrorCodes = []string{"", ""} defaultStartTimeout = 50 * time.Millisecond ) BeforeEach(func() { defaultAppForStart.Name = "my-app" defaultAppForStart.Guid = "my-app-guid" defaultAppForStart.InstanceCount = 2 domain := models.DomainFields{} domain.Name = "example.com" route := models.RouteSummary{} route.Host = "my-app" route.Domain = domain defaultAppForStart.Routes = []models.RouteSummary{route} instance1 := models.AppInstanceFields{} instance1.State = models.InstanceStarting instance2 := models.AppInstanceFields{} instance2.State = models.InstanceStarting instance3 := models.AppInstanceFields{} instance3.State = models.InstanceRunning instance4 := models.AppInstanceFields{} instance4.State = models.InstanceStarting
Expect(ui.FailedWithUsage).To(BeTrue()) Expect(testcmd.CommandDidPassRequirements).To(BeFalse()) }) It("displays a summary of the app", func() { reqApp := models.Application{} reqApp.Name = "my-app" reqApp.Guid = "my-app-guid" route1 := models.RouteSummary{} route1.Host = "my-app" domain := models.DomainFields{} domain.Name = "example.com" route1.Domain = domain route2 := models.RouteSummary{} route2.Host = "foo" domain2 := models.DomainFields{} domain2.Name = "example.com" route2.Domain = domain2 appSummary := models.AppSummary{} appSummary.State = "started" appSummary.InstanceCount = 2 appSummary.RunningInstances = 2 appSummary.Memory = 256 appSummary.RouteSummaries = []models.RouteSummary{route1, route2} time1, err := time.Parse("Mon Jan 2 15:04:05 -0700 MST 2006", "Mon Jan 2 15:04:05 -0700 MST 2012")