func TestSmokeTests(t *testing.T) { testConfig := smoke.GetConfig() testUserContext := cf.NewUserContext( testConfig.ApiEndpoint, testConfig.User, testConfig.Password, testConfig.Org, testConfig.Space, testConfig.SkipSSLValidation, ) RegisterFailHandler(Fail) cf.CF_API_TIMEOUT = CF_API_TIMEOUT_OVERRIDE var originalCfHomeDir, currentCfHomeDir string BeforeEach(func() { originalCfHomeDir, currentCfHomeDir = cf.InitiateUserContext(testUserContext) if !testConfig.UseExistingOrg { Expect(cf.Cf("create-quota", quotaName(testConfig.Org), "-m", "10G", "-r", "10", "-s", "2").Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) Expect(cf.Cf("create-org", testConfig.Org).Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) Expect(cf.Cf("set-quota", testConfig.Org, quotaName(testConfig.Org)).Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) } Expect(cf.Cf("target", "-o", testConfig.Org).Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) if !testConfig.UseExistingSpace { Expect(cf.Cf("create-space", "-o", testConfig.Org, testConfig.Space).Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) } Expect(cf.Cf("target", "-s", testConfig.Space).Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) }) AfterEach(func() { if testConfig.Cleanup && !testConfig.UseExistingSpace { Expect(cf.Cf("delete-space", testConfig.Space, "-f").Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) } if testConfig.Cleanup && !testConfig.UseExistingOrg { Expect(cf.Cf("delete-org", testConfig.Org, "-f").Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) Expect(cf.Cf("delete-quota", quotaName(testConfig.Org), "-f").Wait(CF_TIMEOUT_IN_SECONDS)).To(Exit(0)) } cf.RestoreUserContext(testUserContext, originalCfHomeDir, currentCfHomeDir) }) rs := []Reporter{} if testConfig.ArtifactsDirectory != "" { os.Setenv("CF_TRACE", traceLogFilePath(testConfig)) rs = append(rs, reporters.NewJUnitReporter(jUnitReportFilePath(testConfig))) } RunSpecsWithDefaultAndCustomReporters(t, "CF-Runtime-Smoke-Tests", rs) }
func DropletContext(config helpers.Config) cf.UserContext { return cf.NewUserContext( config.ApiEndpoint, config.AdminUser, config.AdminPassword, "BSMT-droplet-test-org", "BSMT-droplet-test-space", true) }
func (c context) RegularUserContext() cf.UserContext { return cf.NewUserContext( c.config.ApiEndpoint, c.regularUserUsername, c.regularUserPassword, c.organizationName, c.spaceName, c.config.SkipSSLValidation, ) }
func (c context) AdminUserContext() cf.UserContext { return cf.NewUserContext( c.config.ApiEndpoint, c.config.AdminUser, c.config.AdminPassword, "", "", c.config.SkipSSLValidation, ) }
var _ = Describe("AsUser", func() { var FakeThingsToRunAsUser = func() {} var FakeCfCalls = [][]string{} var FakeCf = func(args ...string) *gexec.Session { FakeCfCalls = append(FakeCfCalls, args) var session, _ = gexec.Start(exec.Command("echo", "nothing"), nil, nil) return session } var user cf.UserContext BeforeEach(func() { FakeCfCalls = [][]string{} cf.Cf = FakeCf user = cf.NewUserContext("http://FAKE_API.example.com", "FAKE_USERNAME", "FAKE_PASSWORD", "FAKE_ORG", "FAKE_SPACE", true) }) It("calls cf api", func() { cf.AsUser(user, FakeThingsToRunAsUser) Expect(FakeCfCalls[0]).To(Equal([]string{"api", "http://FAKE_API.example.com", "--skip-ssl-validation"})) }) It("calls cf auth", func() { cf.AsUser(user, FakeThingsToRunAsUser) Expect(FakeCfCalls[1]).To(Equal([]string{"auth", "FAKE_USERNAME", "FAKE_PASSWORD"})) }) Describe("calling cf target", func() {
package cf_test import ( . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" "github.com/cloudfoundry-incubator/cf-test-helpers/cf" ) var _ = Describe("NewUserContext", func() { var createUser = func() cf.UserContext { return cf.NewUserContext("http://FAKE_API.example.com", "FAKE_USERNAME", "FAKE_PASSWORD", "FAKE_ORG", "FAKE_SPACE", false) } It("returns a UserContext struct", func() { Expect(createUser()).To(BeAssignableToTypeOf(cf.UserContext{})) }) It("sets UserContext.ApiUrl", func() { Expect(createUser().ApiUrl).To(Equal("http://FAKE_API.example.com")) }) It("sets UserContext.Username", func() { Expect(createUser().Username).To(Equal("FAKE_USERNAME")) }) It("sets UserContext.Password", func() { Expect(createUser().Password).To(Equal("FAKE_PASSWORD")) })