func testDisplayingAppSummaryWithErrorCode(t *testing.T, errorCode string) { reqApp := cf.Application{} reqApp.Name = "my-app" reqApp.Guid = "my-app-guid" domain3 := cf.DomainFields{} domain3.Name = "example.com" domain4 := cf.DomainFields{} domain4.Name = "example.com" route1 := cf.RouteSummary{} route1.Host = "my-app" route1.Domain = domain3 route2 := cf.RouteSummary{} route2.Host = "foo" route2.Domain = domain4 routes := []cf.RouteSummary{ route1, route2, } app := cf.ApplicationFields{} app.State = "stopped" app.InstanceCount = 2 app.RunningInstances = 0 app.Memory = 256 appSummary := cf.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(t, []string{"my-app"}, reqFactory, appSummaryRepo, appInstancesRepo) assert.Equal(t, appSummaryRepo.GetSummaryAppGuid, "my-app-guid") assert.Equal(t, appInstancesRepo.GetInstancesAppGuid, "my-app-guid") testassert.SliceContains(t, 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"}, }) }
func TestApps(t *testing.T) { domain := cf.DomainFields{} domain.Name = "cfapps.io" domain2 := cf.DomainFields{} domain2.Name = "example.com" route1 := cf.RouteSummary{} route1.Host = "app1" route1.Domain = domain route2 := cf.RouteSummary{} route2.Host = "app1" route2.Domain = domain2 app1Routes := []cf.RouteSummary{route1, route2} domain3 := cf.DomainFields{} domain3.Name = "cfapps.io" route3 := cf.RouteSummary{} route3.Host = "app2" route3.Domain = domain3 app2Routes := []cf.RouteSummary{route3} app := cf.AppSummary{} app.Name = "Application-1" app.State = "started" app.RunningInstances = 1 app.InstanceCount = 1 app.Memory = 512 app.DiskQuota = 1024 app.RouteSummaries = app1Routes app2 := cf.AppSummary{} app2.Name = "Application-2" app2.State = "started" app2.RunningInstances = 1 app2.InstanceCount = 2 app2.Memory = 256 app2.DiskQuota = 1024 app2.RouteSummaries = app2Routes apps := []cf.AppSummary{app, app2} appSummaryRepo := &testapi.FakeAppSummaryRepo{ GetSummariesInCurrentSpaceApps: apps, } reqFactory := &testreq.FakeReqFactory{LoginSuccess: true, TargetedSpaceSuccess: true} ui := callApps(t, appSummaryRepo, reqFactory) assert.True(t, testcmd.CommandDidPassRequirements) testassert.SliceContains(t, ui.Outputs, testassert.Lines{ {"Getting apps in", "my-org", "development", "my-user"}, {"OK"}, {"Application-1", "started", "1/1", "512M", "1G", "app1.cfapps.io", "app1.example.com"}, {"Application-2", "started", "1/2", "256M", "1G", "app2.cfapps.io"}, }) }
func TestDisplayingAppSummary(t *testing.T) { reqApp := cf.Application{} reqApp.Name = "my-app" reqApp.Guid = "my-app-guid" route1 := cf.RouteSummary{} route1.Host = "my-app" domain := cf.DomainFields{} domain.Name = "example.com" route1.Domain = domain route2 := cf.RouteSummary{} route2.Host = "foo" domain2 := cf.DomainFields{} domain2.Name = "example.com" route2.Domain = domain2 appSummary := cf.AppSummary{} appSummary.State = "started" appSummary.InstanceCount = 2 appSummary.RunningInstances = 2 appSummary.Memory = 256 appSummary.RouteSummaries = []cf.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") assert.NoError(t, err) time2, err := time.Parse("Mon Jan 2 15:04:05 -0700 MST 2006", "Mon Apr 1 15:04:05 -0700 MST 2012") assert.NoError(t, err) appInstance := cf.AppInstanceFields{} appInstance.State = cf.InstanceRunning appInstance.Since = time1 appInstance.CpuUsage = 1.0 appInstance.DiskQuota = 1 * formatters.GIGABYTE appInstance.DiskUsage = 32 * formatters.MEGABYTE appInstance.MemQuota = 64 * formatters.MEGABYTE appInstance.MemUsage = 13 * formatters.BYTE appInstance2 := cf.AppInstanceFields{} appInstance2.State = cf.InstanceDown appInstance2.Since = time2 instances := []cf.AppInstanceFields{appInstance, appInstance2} appSummaryRepo := &testapi.FakeAppSummaryRepo{GetSummarySummary: appSummary} appInstancesRepo := &testapi.FakeAppInstancesRepo{GetInstancesResponses: [][]cf.AppInstanceFields{instances}} reqFactory := &testreq.FakeReqFactory{LoginSuccess: true, TargetedSpaceSuccess: true, Application: reqApp} ui := callApp(t, []string{"my-app"}, reqFactory, appSummaryRepo, appInstancesRepo) assert.Equal(t, appSummaryRepo.GetSummaryAppGuid, "my-app-guid") testassert.SliceContains(t, ui.Outputs, testassert.Lines{ {"Showing health and status", "my-app"}, {"state", "started"}, {"instances", "2/2"}, {"usage", "256M x 2 instances"}, {"urls", "my-app.example.com", "foo.example.com"}, {"#0", "running", "2012-01-02 03:04:05 PM", "100.0%", "13 of 64M", "32M of 1G"}, {"#1", "down", "2012-04-01 03:04:05 PM", "0%", "0 of 0", "0 of 0"}, }) }