Example #1
0
		deps.RepoLocator = deps.RepoLocator.SetAppInstancesRepository(appInstancesRepo)
		command_registry.Commands.SetCommand(command_registry.Commands.FindCommand("app").SetDependency(deps, pluginCall))
	}

	BeforeEach(func() {
		ui = &testterm.FakeUI{}
		appSummaryRepo = &testapi.FakeAppSummaryRepo{}
		appLogsNoaaRepo = &testapi.FakeLogsNoaaRepository{}
		appInstancesRepo = &testAppInstanaces.FakeAppInstancesRepository{}
		configRepo = testconfig.NewRepositoryWithDefaults()
		requirementsFactory = &testreq.FakeReqFactory{
			LoginSuccess:         true,
			TargetedSpaceSuccess: true,
		}
		app = makeAppWithRoute("my-app")
		appSummaryRepo.GetSummarySummary = app

		deps = command_registry.NewDependency()
		updateCommandDependency(false)
	})

	runCommand := func(args ...string) bool {
		cmd := command_registry.Commands.FindCommand("app")
		return testcmd.RunCliCommand(cmd, args, requirementsFactory)
	}

	Describe("requirements", func() {
		It("fails if not logged in", func() {
			requirementsFactory.LoginSuccess = false
			Expect(runCommand("my-app")).To(BeFalse())
		})
				MemUsage:  13 * formatters.BYTE,
			}

			appInstance2 = models.AppInstanceFields{
				State: models.InstanceDown,
				Since: testtime.MustParse("Mon Jan 2 15:04:05 -0700 MST 2006", "Mon Apr 1 15:04:05 -0700 MST 2012"),
			}

			instances = []models.AppInstanceFields{appInstance, appInstance2}
			appInstancesRepo.GetInstancesReturns(instances, nil)
		})

		Context("app with Services, Routes, Environment Vars", func() {
			BeforeEach(func() {
				app := makeAppWithOptions("my-app")
				appSummaryRepo.GetSummarySummary = app
				requirementsFactory.Application = app
			})

			It("creates a manifest with services, routes and environment vars", func() {
				runCommand("my-app")
				Ω(fakeManifest.MemoryCallCount()).To(Equal(1))
				Ω(fakeManifest.EnvironmentVarsCallCount()).To(Equal(1))
				Ω(fakeManifest.HealthCheckTimeoutCallCount()).To(Equal(1))
				Ω(fakeManifest.InstancesCallCount()).To(Equal(1))
				Ω(fakeManifest.DomainCallCount()).To(Equal(2))
				Ω(fakeManifest.ServiceCallCount()).To(Equal(1))
				Ω(fakeManifest.StartCommandCallCount()).To(Equal(1))
			})
		})