package websockets
import scala.concurrent.duration._
import io.gatling.core.Predef._
import io.gatling.http.Predef._
import io.gatling.jdbc.Predef._
import io.gatling.jsonpath._
class WebSockets extends Simulation {
val httpProtocol = http
.disableWarmUp
.userAgentHeader("gatling")
.wsBaseURL("ws://localhost:8080")
val scn = scenario("WebSocket")
.exec(ws("Connect WS").open("/websocket/dataEcho"))
.repeat(100, "i") {
exec(ws("request").sendText("1000")
.check(wsAwait.within(100000 seconds).until(1).regex(""".*"data_id" : 1000.0.*""")))
}
.exec(ws("Close WS").close)
setUp(scn.inject(atOnceUsers(1))).protocols(httpProtocol)
}