本文整理匯總了Golang中github.com/cloudfoundry-incubator/cf-test-helpers/helpers.CurlAppRoot函數的典型用法代碼示例。如果您正苦於以下問題:Golang CurlAppRoot函數的具體用法?Golang CurlAppRoot怎麽用?Golang CurlAppRoot使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了CurlAppRoot函數的11個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1:
"github.com/cloudfoundry-incubator/cf-test-helpers/generator"
"github.com/cloudfoundry-incubator/cf-test-helpers/helpers"
"github.com/cloudfoundry/cf-acceptance-tests/helpers/assets"
)
var _ = Describe("Copy app bits", func() {
var golangAppName string
var helloWorldAppName string
BeforeEach(func() {
golangAppName = generator.PrefixedRandomName("CATS-APP-")
helloWorldAppName = generator.PrefixedRandomName("CATS-APP-")
Expect(cf.Cf("push", golangAppName, "-p", assets.NewAssets().Golang, "--no-start").Wait(DEFAULT_TIMEOUT)).To(Exit(0))
Expect(cf.Cf("push", helloWorldAppName, "-p", assets.NewAssets().HelloWorld, "--no-start").Wait(DEFAULT_TIMEOUT)).To(Exit(0))
})
AfterEach(func() {
Expect(cf.Cf("delete", golangAppName, "-f").Wait(DEFAULT_TIMEOUT)).To(Exit(0))
Expect(cf.Cf("delete", helloWorldAppName, "-f").Wait(DEFAULT_TIMEOUT)).To(Exit(0))
})
It("Copies over the package from the source app to the destination app", func() {
Expect(cf.Cf("copy-source", helloWorldAppName, golangAppName).Wait(CF_PUSH_TIMEOUT)).To(Exit(0))
Eventually(func() string {
return helpers.CurlAppRoot(golangAppName)
}, DEFAULT_TIMEOUT).Should(ContainSubstring("Hello, world!"))
})
})
示例2:
Expect(cf.Cf("push", appName, "--no-start", "-b", config.RubyBuildpackName, "-m", DEFAULT_MEMORY_LIMIT, "-p", assets.NewAssets().Dora, "-d", config.AppsDomain).Wait(DEFAULT_TIMEOUT)).To(Exit(0))
app_helpers.SetBackend(appName)
Expect(cf.Cf("start", appName).Wait(CF_PUSH_TIMEOUT)).To(Exit(0))
})
AfterEach(func() {
app_helpers.AppReport(appName, DEFAULT_TIMEOUT)
Expect(cf.Cf("delete", appName, "-f", "-r").Wait(DEFAULT_TIMEOUT)).To(Exit(0))
})
Describe("pushing", func() {
It("makes the app reachable via its bound route", func() {
Eventually(func() string {
return helpers.CurlAppRoot(appName)
}, DEFAULT_TIMEOUT).Should(ContainSubstring("Hi, I'm Dora!"))
})
Describe("Context path", func() {
var app2 string
var path = "/imposter_dora"
BeforeEach(func() {
app2 = generator.PrefixedRandomName("CATS-APP-")
Expect(cf.Cf("push", app2, "--no-start", "-b", config.RubyBuildpackName, "-m", DEFAULT_MEMORY_LIMIT, "-p", assets.NewAssets().HelloWorld, "-d", config.AppsDomain).Wait(DEFAULT_TIMEOUT)).To(Exit(0))
app_helpers.SetBackend(app2)
Expect(cf.Cf("start", app2).Wait(CF_PUSH_TIMEOUT)).To(Exit(0))
})
AfterEach(func() {
示例3:
var workerProcess Process
processes := getProcess(appGuid, appName)
for _, process := range processes {
if process.Type == "web" {
webProcess = process
} else if process.Type == "worker" {
workerProcess = process
}
}
CreateAndMapRoute(appGuid, context.RegularUserContext().Space, helpers.LoadConfig().AppsDomain, webProcess.Name)
StartApp(appGuid)
Eventually(func() string {
return helpers.CurlAppRoot(webProcess.Name)
}, DEFAULT_TIMEOUT).Should(ContainSubstring("Hi, I'm Dora!"))
output := helpers.CurlApp(webProcess.Name, "/env")
Expect(output).To(ContainSubstring(fmt.Sprintf("application_name\\\":\\\"%s", appName)))
Expect(output).To(ContainSubstring(appCreationEnvironmentVariables))
Expect(cf.Cf("apps").Wait(DEFAULT_TIMEOUT)).To(Say(fmt.Sprintf("%s\\s+started", webProcess.Name)))
Expect(cf.Cf("apps").Wait(DEFAULT_TIMEOUT)).To(Say(fmt.Sprintf("%s\\s+started", workerProcess.Name)))
usageEvents := lastPageUsageEvents(appName)
event1 := AppUsageEvent{Entity{ProcessType: webProcess.Type, AppGuid: webProcess.Guid, State: "STARTED", ParentAppGuid: appGuid, ParentAppName: appName}}
event2 := AppUsageEvent{Entity{ProcessType: workerProcess.Type, AppGuid: workerProcess.Guid, State: "STARTED", ParentAppGuid: appGuid, ParentAppName: appName}}
Expect(eventsInclude(usageEvents, event1)).To(BeTrue())
Expect(eventsInclude(usageEvents, event2)).To(BeTrue())
示例4:
"github.com/cloudfoundry/cf-acceptance-tests/helpers/app_helpers"
"github.com/cloudfoundry/cf-acceptance-tests/helpers/assets"
"github.com/cloudfoundry/cf-acceptance-tests/helpers/random_name"
)
var _ = AppsDescribe("Delete Route", func() {
var appName string
BeforeEach(func() {
appName = random_name.CATSRandomName("APP")
Expect(cf.Cf("push", appName, "--no-start", "-b", Config.GetRubyBuildpackName(), "-m", DEFAULT_MEMORY_LIMIT, "-p", assets.NewAssets().Dora, "-d", Config.GetAppsDomain()).Wait(Config.DefaultTimeoutDuration())).To(Exit(0))
app_helpers.SetBackend(appName)
Expect(cf.Cf("start", appName).Wait(Config.CfPushTimeoutDuration())).To(Exit(0))
Eventually(func() string {
return helpers.CurlAppRoot(Config, appName)
}, Config.DefaultTimeoutDuration()).Should(ContainSubstring("Hi, I'm Dora!"))
})
AfterEach(func() {
app_helpers.AppReport(appName, Config.DefaultTimeoutDuration())
Expect(cf.Cf("delete", appName, "-f", "-r").Wait(Config.DefaultTimeoutDuration())).To(Exit(0))
})
Describe("Removing the route", func() {
It("Should be able to remove and delete the route", func() {
secondHost := random_name.CATSRandomName("ROUTE")
By("adding a route")
Eventually(cf.Cf("map-route", appName, Config.GetAppsDomain(), "-n", secondHost), Config.DefaultTimeoutDuration()).Should(Exit(0))
示例5:
BeforeEach(func() {
dropletGuid := StageBuildpackPackage(packageGuid, Config.GetRubyBuildpackName())
WaitForDropletToStage(dropletGuid)
AssignDropletToApp(appGuid, dropletGuid)
processes := GetProcesses(appGuid, appName)
webProcess = GetProcessByType(processes, "web")
CreateAndMapRoute(appGuid, TestSetup.RegularUserContext().Space, Config.GetAppsDomain(), webProcess.Name)
StartApp(appGuid)
Eventually(func() string {
return helpers.CurlAppRoot(Config, webProcess.Name)
}, Config.DefaultTimeoutDuration()).Should(ContainSubstring("Hi, I'm Dora!"))
Expect(string(cf.Cf("apps").Wait(Config.DefaultTimeoutDuration()).Out.Contents())).To(MatchRegexp(fmt.Sprintf("(v3-)?(%s)*(-web)?(\\s)+(started)", webProcess.Name)))
})
Context("/v3/apps/:guid/processes/:type/instances/:index", func() {
It("restarts the instance", func() {
statsUrl := fmt.Sprintf("/v3/apps/%s/processes/web/stats", appGuid)
By("ensuring the instance is running")
statsBody := cf.Cf("curl", statsUrl).Wait(Config.DefaultTimeoutDuration()).Out.Contents()
statsJSON := ProcessStats{}
json.Unmarshal(statsBody, &statsJSON)
Expect(statsJSON.Instance[0].State).To(Equal("RUNNING"))
示例6:
MapRouteToApp(domain, app2Path, app2)
MapRouteToApp(domain, app3Path, app3)
})
AfterEach(func() {
app_helpers.AppReport(app1, DEFAULT_TIMEOUT)
app_helpers.AppReport(app2, DEFAULT_TIMEOUT)
app_helpers.AppReport(app3, DEFAULT_TIMEOUT)
DeleteApp(app1)
DeleteApp(app2)
DeleteApp(app3)
})
Context("when another app has a route with a context path", func() {
It("routes to app with context path", func() {
Eventually(func() string {
return helpers.CurlAppRoot(domain)
}, DEFAULT_TIMEOUT).Should(ContainSubstring(app1))
Eventually(func() string {
return helpers.CurlApp(domain, app2Path)
}, DEFAULT_TIMEOUT).Should(ContainSubstring(app2))
Eventually(func() string {
return helpers.CurlApp(domain, app3Path)
}, DEFAULT_TIMEOUT).Should(ContainSubstring(app3))
})
})
})
示例7:
cf.Cf("curl", fmt.Sprintf("/v2/apps/%s/droplet/download", appGuid), "--output", app_droplet_path).Wait(Config.DefaultTimeoutDuration())
cmd := exec.Command("tar", "-ztf", app_droplet_path)
cmd.Stdout = &out
err = cmd.Run()
Expect(err).ToNot(HaveOccurred())
Expect(out.String()).To(ContainSubstring("./app/config.ru"))
Expect(out.String()).To(ContainSubstring("./tmp"))
Expect(out.String()).To(ContainSubstring("./logs"))
By("Pushing a different version of the app")
Expect(cf.Cf("push", helloWorldAppName, "-p", assets.NewAssets().Dora).Wait(Config.CfPushTimeoutDuration())).To(Exit(0))
Eventually(func() string {
return helpers.CurlAppRoot(Config, helloWorldAppName)
}, Config.DefaultTimeoutDuration()).Should(ContainSubstring("Hi, I'm Dora!"))
By("Uploading the originally downloaded droplet of the app")
token := v3_helpers.GetAuthToken()
uploadUrl := fmt.Sprintf("%s%s/v2/apps/%s/droplet/upload", Config.Protocol(), Config.GetApiEndpoint(), appGuid)
bits := fmt.Sprintf(`[email protected]%s`, app_droplet_path)
curl := helpers.Curl(Config, "-v", uploadUrl, "-X", "PUT", "-F", bits, "-H", fmt.Sprintf("Authorization: %s", token)).Wait(Config.DefaultTimeoutDuration())
Expect(curl).To(Exit(0))
var job struct {
Metadata struct {
Url string `json:"url"`
} `json:"metadata"`
}
示例8:
)
var _ = Describe("The Elasticsearch service", func() {
Describe("adding elasticsearch to an app", func() {
var (
appName string
)
BeforeEach(func() {
appName = generator.PrefixedRandomName("CATS-APP-")
Expect(cf.Cf(
"push", appName,
"--no-start",
"-b", config.GoBuildpackName,
"-p", "../example_apps/es_test_app",
"-d", config.AppsDomain,
).Wait(DEFAULT_TIMEOUT)).To(Exit(0))
})
It("can be added to an app", func() {
instanceName := generator.PrefixedRandomName("ES-SERVICE-")
Expect(cf.Cf("create-service", "elasticsearch13", "free", instanceName).Wait(DEFAULT_TIMEOUT)).To(Exit(0))
Expect(cf.Cf("bind-service", appName, instanceName).Wait(DEFAULT_TIMEOUT)).To(Exit(0))
Expect(cf.Cf("start", appName).Wait(CF_PUSH_TIMEOUT)).To(Exit(0))
Expect(helpers.CurlAppRoot(appName)).To(ContainSubstring("You Know, for Search"))
})
})
})
示例9:
AfterEach(func() {
DeleteApp(appName)
})
Context("when an app has multiple instances", func() {
BeforeEach(func() {
ScaleAppInstances(appName, 3)
})
Context("when the client does not send VCAP_ID and JSESSION cookies", func() {
It("routes requests round robin to all instances", func() {
var body string
Eventually(func() string {
body = helpers.CurlAppRoot(appName)
return body
}, DEFAULT_TIMEOUT).Should(ContainSubstring(fmt.Sprintf("Hello, %s", appName)))
indexPre := parseInstanceIndex(body)
Eventually(func() int {
body := helpers.CurlAppRoot(appName)
index := parseInstanceIndex(body)
return index
}, DEFAULT_TIMEOUT).ShouldNot(Equal(indexPre))
})
})
})
})
示例10:
hostname = app1
})
AfterEach(func() {
helpers.AppReport(app1, Config.DefaultTimeoutDuration())
helpers.DeleteApp(app1, Config.DefaultTimeoutDuration())
})
Context("when zipkin tracing is enabled", func() {
Context("when zipkin headers are not in the request", func() {
It("the sleuth error response has no error", func() {
var curlOutput string
// when req does not have headers
Eventually(func() string {
curlOutput = cf_helpers.CurlAppRoot(Config, hostname)
return curlOutput
}, Config.DefaultTimeoutDuration()).Should(ContainSubstring("parents:"))
appLogsSession := cf.Cf("logs", "--recent", app1)
Eventually(appLogsSession.Out, "5s").Should(gbytes.Say("x_b3_traceid"))
_, _, parentSpanId := grabIDs(string(appLogsSession.Out.Contents()), "")
Expect(parentSpanId).To(Equal("-"))
By("when request has zipkin trace headers")
traceId := "fee1f7ba6aeec41c"
header1 := fmt.Sprintf(`X-B3-TraceId: %s `, traceId)
示例11:
MapRouteToApp(app2, domain, hostname, app2Path)
MapRouteToApp(app3, domain, hostname, app3Path)
})
AfterEach(func() {
app_helpers.AppReport(app1, DEFAULT_TIMEOUT)
app_helpers.AppReport(app2, DEFAULT_TIMEOUT)
app_helpers.AppReport(app3, DEFAULT_TIMEOUT)
DeleteApp(app1)
DeleteApp(app2)
DeleteApp(app3)
})
Context("when another app has a route with a context path", func() {
It("routes to app with context path", func() {
Eventually(func() string {
return helpers.CurlAppRoot(hostname)
}, DEFAULT_TIMEOUT).Should(ContainSubstring(app1))
Eventually(func() string {
return helpers.CurlApp(hostname, app2Path)
}, DEFAULT_TIMEOUT).Should(ContainSubstring(app2))
Eventually(func() string {
return helpers.CurlApp(hostname, app3Path)
}, DEFAULT_TIMEOUT).Should(ContainSubstring(app3))
})
})
})