Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class LaunchResources extends Simulation {
- val scenarioRepeatCount = Integer.getInteger("scenarioRepeatCount", 1).toInt
- val userCount = Integer.getInteger("userCount", 1).toInt
- val UUID = System.getProperty("UUID", "24d0e03")
- val username = System.getProperty("username", "p1")
- val password = System.getProperty("password", "P12")
- val testServerUrl = System.getProperty("testServerUrl", "https://someurl.net")
- val count = new java.util.concurrent.atomic.AtomicInteger(0)
- val httpProtocol = http
- .baseURL(testServerUrl)
- .basicAuth(username, password)
- .connection("""keep-alive""")
- .contentTypeHeader("""application/vnd+json""")
- val headers_0 = Map(
- """Cache-Control""" -> """no-cache""",
- """Origin""" -> """chrome-extension://fdmmgasdw1dojojpjoooidkmcomcm""")
- val scn = scenario("LaunchAction")
- .repeat (scenarioRepeatCount) {
- exec(http("LaunchAResources")
- .post( """/api/actions""")
- .headers(headers_0)
- .body(StringBody(s"""{"UUID": "$UUID", "stringVariables" : {"externalFilePath" : "/Test.mp4"}}"""))
- .check(jsonPath("$.id").saveAs("WorkflowID")))
- .exec(http("SaveWorkflowStatus")
- .get("""/api/actions/{$WorkflowID}""")
- .headers(headers_0)
- .check(jsonPath("$.status").saveAs("WorkflowStatus")))
- }
- .asLongAs(session => session.attributes("WorkflowStatus") != "false" && count.getAndIncrement() < 8) {
- doIf(session => session("WorkflowFailed").validate[String].map(WorkflowFailed => !WorkflowFailed.contains("true")).recover(true))
- {
- pause(pauseTime)
- .exec(http("SaveWorkflowStatus")
- .get("""/api/actions/${WorkflowID}""")
- .headers(headers_0)
- .check(jsonPath("$.running").saveAs("WorkflowStatus"))
- .check(jsonPath("$.failed").saveAs("WorkflowFailed")))
- .exec(session => {
- val wflowStatus1 = session.get("WorkflowStatus").asOption[String]
- val wflowFailed1 = session.get("WorkflowFailed").asOption[String]
- println("Inner Loop Workflow Status: ========>>>>>>>> " + wflowStatus1.getOrElse("COULD NOT FIND STATUS"))
- println("Inner Loop Workflow Failed?? ========>>>>>>>> " + wflowFailed1.getOrElse("COULD NOT FIND STATUS"))
- println("Count =====>> " + count)
- session})
- }
- }
- setUp(scn.inject(atOnceUsers(userCount))).protocols(httpProtocol)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement