You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by to...@apache.org on 2014/11/11 00:21:38 UTC
[13/42] incubator-usergrid git commit: adding switch for simulation
selector
adding switch for simulation selector
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/1589d041
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/1589d041
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/1589d041
Branch: refs/heads/es-type-updates
Commit: 1589d0417f3c74ba0116eec29c7736857ef717d7
Parents: 66b1468
Author: Shawn Feldman <sf...@apache.org>
Authored: Thu Nov 6 09:47:42 2014 -0700
Committer: Shawn Feldman <sf...@apache.org>
Committed: Thu Nov 6 09:47:42 2014 -0700
----------------------------------------------------------------------
.../org/apache/usergrid/settings/Settings.scala | 2 +
.../usergrid/simulations/AppSimulation.scala | 41 +++++++++++++-------
2 files changed, 29 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/1589d041/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
index 03a4200..3a0d23d 100755
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/settings/Settings.scala
@@ -64,4 +64,6 @@ object Settings {
val constantUsers:Int = Settings.numUsers/Settings.duration
println(s"Will inject $constantUsers users per sec")
+ var simulation:String = if(System.getProperty("simulation") != null) System.getProperty("simulation") else "all"
+
}
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/1589d041/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
----------------------------------------------------------------------
diff --git a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
index aa246a4..9805eea 100644
--- a/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
+++ b/stack/loadtests/src/main/scala/org/apache/usergrid/simulations/AppSimulation.scala
@@ -25,26 +25,39 @@ import io.gatling.core.scenario.Simulation
import org.apache.usergrid.helpers.Setup
import org.apache.usergrid.scenarios.NotificationScenarios
import org.apache.usergrid.settings.Settings
+import scala.annotation.switch
import scala.concurrent.duration._
/**
* Classy class class.
*/
class AppSimulation extends Simulation{
- before{
- println("Begin setup")
- Setup.setupOrg()
- Setup.setupApplication()
- Setup.setupNotifier()
- Setup.setupUsers()
- println("End Setup")
- }
- setUp(
- NotificationScenarios.createScenario
- .inject(constantUsersPerSec(Settings.constantUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
- .throttle(reachRps(Settings.throttle) in ( Settings.rampTime.seconds))
- .protocols( Settings.httpConf.acceptHeader("application/json"))
- )
+ val simulation = Settings.simulation
+ println(s"Running simulation $simulation")
+
+ println("Begin setup")
+ Setup.setupOrg()
+ Setup.setupApplication()
+ Setup.setupNotifier()
+ Setup.setupUsers()
+ println("End Setup")
+ def sim(choice:String) = (choice: @switch) match {
+ case "connections" =>
+ setUp(
+ NotificationScenarios.createScenario
+ .inject(constantUsersPerSec(Settings.constantUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
+ .throttle(reachRps(Settings.throttle) in ( Settings.rampTime.seconds))
+ .protocols( Settings.httpConf.acceptHeader("application/json"))
+ )
+ case "all" =>
+ setUp(
+ NotificationScenarios.createScenario
+ .inject(constantUsersPerSec(Settings.constantUsers) during (Settings.duration)) // wait for 15 seconds so create org can finish, need to figure out coordination
+ .throttle(reachRps(Settings.throttle) in (Settings.rampTime.seconds))
+ .protocols(Settings.httpConf.acceptHeader("application/json"))
+ )
+ }
+ sim(simulation)
}