|
10 | 10 | # Benchmark parameters |
11 | 11 | PRO = ENV.fetch("PRO", "false") == "true" |
12 | 12 | APP_DIR = PRO ? "react_on_rails_pro/spec/dummy" : "spec/dummy" |
13 | | -ROUTES = ENV.fetch("ROUTES", nil) |
14 | | -BASE_URL = ENV.fetch("BASE_URL", "localhost:3001") |
| 13 | +ROUTES = ENV["ROUTES"].to_s.empty? ? nil : ENV.fetch("ROUTES", nil) |
| 14 | +BASE_URL = ENV["BASE_URL"] || "localhost:3001" |
15 | 15 | # requests per second; if "max" will get maximum number of queries instead of a fixed rate |
16 | | -RATE = ENV.fetch("RATE", "50") |
| 16 | +RATE = ENV["RATE"] || "50" |
17 | 17 | # concurrent connections/virtual users |
18 | | -CONNECTIONS = ENV.fetch("CONNECTIONS", "10").to_i |
| 18 | +CONNECTIONS = (ENV["CONNECTIONS"] || 10).to_i |
19 | 19 | # maximum connections/virtual users |
20 | | -MAX_CONNECTIONS = ENV.fetch("MAX_CONNECTIONS", CONNECTIONS).to_i |
| 20 | +MAX_CONNECTIONS = (ENV["MAX_CONNECTIONS"] || CONNECTIONS).to_i |
21 | 21 | # benchmark duration (duration string like "30s", "1m", "90s") |
22 | | -DURATION = ENV.fetch("DURATION", "30s") |
| 22 | +DURATION = ENV["DURATION"] || "30s" |
23 | 23 | # request timeout (duration string as above) |
24 | | -REQUEST_TIMEOUT = ENV.fetch("REQUEST_TIMEOUT", "60s") |
| 24 | +REQUEST_TIMEOUT = ENV["REQUEST_TIMEOUT"] || "60s" |
25 | 25 | # Tools to run (comma-separated) |
26 | | -TOOLS = ENV.fetch("TOOLS", "fortio,vegeta,k6").split(",") |
| 26 | +TOOLS = (ENV["TOOLS"] || "fortio,vegeta,k6").split(",") |
27 | 27 |
|
28 | 28 | OUTDIR = "bench_results" |
29 | 29 | SUMMARY_TXT = "#{OUTDIR}/summary.txt".freeze |
@@ -93,11 +93,13 @@ def get_benchmark_routes(app_dir) |
93 | 93 | # Get all routes to benchmark |
94 | 94 | routes = |
95 | 95 | if ROUTES |
96 | | - ROUTES.split(",").map(&:strip) |
| 96 | + ROUTES.split(",").map(&:strip).reject(&:empty?) |
97 | 97 | else |
98 | 98 | get_benchmark_routes(APP_DIR) |
99 | 99 | end |
100 | 100 |
|
| 101 | +raise "No routes to benchmark" if routes.empty? |
| 102 | + |
101 | 103 | validate_rate(RATE) |
102 | 104 | validate_positive_integer(CONNECTIONS, "CONNECTIONS") |
103 | 105 | validate_positive_integer(MAX_CONNECTIONS, "MAX_CONNECTIONS") |
|
0 commit comments