Hostnames: []string{"allthetime.com", "herewego.org"}, Port: 1234, }, }, }, }, app_examiner.AppInfo{ ProcessGuid: "process4", DesiredInstances: 0, ActualRunningInstances: 0, DiskMB: 10, MemoryMB: 10, Routes: route_helpers.Routes{}, }, } fakeAppExaminer.ListAppsReturns(listApps, nil) listTasks := []task_examiner.TaskInfo{ task_examiner.TaskInfo{ TaskGuid: "task-guid-1", CellID: "cell-01", Failed: false, FailureReason: "", Result: "Finished", State: "COMPLETED", }, task_examiner.TaskInfo{ TaskGuid: "task-guid-2", CellID: "cell-02", Failed: true, FailureReason: "No compatible container", Result: "Finished",
appInfos := []app_examiner.AppInfo{ { Annotation: "", }, { Annotation: "junk", }, { Annotation: `{ "droplet_source": { "droplet_name": "other-drippy" } }`, }, } fakeAppExaminer.ListAppsReturns(appInfos, nil) Expect(dropletRunner.RemoveDroplet("drippy")).To(Succeed()) Expect(fakeBlobStore.ListCallCount()).To(Equal(1)) Expect(fakeBlobStore.DeleteCallCount()).To(Equal(3)) Expect(fakeBlobStore.DeleteArgsForCall(0)).To(Equal("drippy/bits.zip")) Expect(fakeBlobStore.DeleteArgsForCall(1)).To(Equal("drippy/droplet.tgz")) Expect(fakeBlobStore.DeleteArgsForCall(2)).To(Equal("drippy/result.json")) }) It("returns an error when querying the blob store fails", func() { fakeBlobStore.ListReturns(nil, errors.New("some error"))
}) It("displays all the existing apps & tasks, making sure output spacing is correct", func() { listApps := []app_examiner.AppInfo{ app_examiner.AppInfo{ProcessGuid: "process1", DesiredInstances: 21, ActualRunningInstances: 0, DiskMB: 100, MemoryMB: 50, Ports: []uint16{54321}, Routes: route_helpers.AppRoutes{route_helpers.AppRoute{Hostnames: []string{"alldaylong.com"}, Port: 54321}}}, app_examiner.AppInfo{ProcessGuid: "process2", DesiredInstances: 8, ActualRunningInstances: 9, DiskMB: 400, MemoryMB: 30, Ports: []uint16{1234}, Routes: route_helpers.AppRoutes{route_helpers.AppRoute{Hostnames: []string{"never.io"}, Port: 1234}}}, app_examiner.AppInfo{ProcessGuid: "process3", DesiredInstances: 5, ActualRunningInstances: 5, DiskMB: 600, MemoryMB: 90, Ports: []uint16{1234}, Routes: route_helpers.AppRoutes{route_helpers.AppRoute{Hostnames: []string{"allthetime.com", "herewego.org"}, Port: 1234}}}, app_examiner.AppInfo{ProcessGuid: "process4", DesiredInstances: 0, ActualRunningInstances: 0, DiskMB: 10, MemoryMB: 10, Routes: route_helpers.AppRoutes{}}, } listTasks := []task_examiner.TaskInfo{ task_examiner.TaskInfo{TaskGuid: "task-guid-1", CellID: "cell-01", Failed: false, FailureReason: "", Result: "Finished", State: "COMPLETED"}, task_examiner.TaskInfo{TaskGuid: "task-guid-2", CellID: "cell-02", Failed: true, FailureReason: "No compatible container", Result: "Finished", State: "COMPLETED"}, task_examiner.TaskInfo{TaskGuid: "task-guid-3", CellID: "", Failed: true, FailureReason: "", Result: "", State: "COMPLETED"}, } fakeAppExaminer.ListAppsReturns(listApps, nil) fakeTaskExaminer.ListTasksReturns(listTasks, nil) test_helpers.ExecuteCommandWithArgs(listAppsCommand, []string{}) Expect(outputBuffer).To(test_helpers.Say(colors.Bold("App Name"))) Expect(outputBuffer).To(test_helpers.Say(colors.Bold("Instances"))) Expect(outputBuffer).To(test_helpers.Say(colors.Bold("DiskMB"))) Expect(outputBuffer).To(test_helpers.Say(colors.Bold("MemoryMB"))) Expect(outputBuffer).To(test_helpers.Say(colors.Bold("Route"))) Expect(outputBuffer).To(test_helpers.Say(colors.Bold("process1"))) Expect(outputBuffer).To(test_helpers.Say(colors.Red("0/21"))) Expect(outputBuffer).To(test_helpers.Say(colors.NoColor("100"))) Expect(outputBuffer).To(test_helpers.Say(colors.NoColor("50"))) Expect(outputBuffer).To(test_helpers.Say("alldaylong.com => 54321"))