locust 2.26.1.dev7__py3-none-any.whl → 2.26.1.dev16__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
locust/_version.py CHANGED
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '2.26.1.dev7'
16
- __version_tuple__ = version_tuple = (2, 26, 1, 'dev7')
15
+ __version__ = version = '2.26.1.dev16'
16
+ __version_tuple__ = version_tuple = (2, 26, 1, 'dev16')
locust/input_events.py CHANGED
@@ -56,7 +56,7 @@ class WindowsKeyPoller:
56
56
  self.cur_keys_length = 0
57
57
  self.captured_chars = []
58
58
  except pywintypes.error:
59
- raise InitError("Terminal says its a tty but we couldnt enable line input. Keyboard input disabled.")
59
+ raise InitError("Terminal says its a tty but we couldn't enable line input. Keyboard input disabled.")
60
60
  else:
61
61
  raise InitError("Terminal was not a tty. Keyboard input disabled")
62
62
 
locust/main.py CHANGED
@@ -220,7 +220,7 @@ def main():
220
220
  children.append(child_pid)
221
221
  logging.debug(f"Started child worker with pid #{child_pid}")
222
222
  else:
223
- # child is always a worker, even when it wasnt set on command line
223
+ # child is always a worker, even when it wasn't set on command line
224
224
  options.worker = True
225
225
  # remove options that dont make sense on worker
226
226
  options.run_time = None
@@ -286,7 +286,7 @@ def main():
286
286
  exit_code = max(exit_code, child_exit_code)
287
287
  if exit_code > 1:
288
288
  logging.error(f"Bad response code from worker children: {exit_code}")
289
- # ensure master doesnt finish until output from workers has arrived
289
+ # ensure master doesn't finish until output from workers has arrived
290
290
  # otherwise the terminal might look weird.
291
291
  time.sleep(0.1)
292
292
 
@@ -433,8 +433,7 @@ See https://github.com/locustio/locust/wiki/Installation#increasing-maximum-numb
433
433
 
434
434
  if options.run_time:
435
435
  if options.worker:
436
- logger.error("--run-time should be specified on the master node, and not on worker nodes")
437
- sys.exit(1)
436
+ logger.info("--run-time specified for a worker node will be ignored.")
438
437
  try:
439
438
  options.run_time = parse_timespan(options.run_time)
440
439
  except ValueError:
locust/runners.py CHANGED
@@ -378,7 +378,7 @@ class Runner:
378
378
  caller = inspect.getframeinfo(inspect.stack()[1][0])
379
379
  logger.debug(f"Stopping all users (called from {caller.filename}:{caller.lineno})")
380
380
  except Exception:
381
- logger.debug("Stopping all users (couldnt determine where stop() was called from)")
381
+ logger.debug("Stopping all users (couldn't determine where stop() was called from)")
382
382
  self.environment.events.test_stopping.fire(environment=self.environment)
383
383
  self.final_user_classes_count = {**self.user_classes_count}
384
384
  self.update_state(STATE_CLEANUP)
locust/test/test_main.py CHANGED
@@ -832,7 +832,7 @@ class StandaloneIntegrationTests(ProcessIntegrationTest):
832
832
  def test_web_options(self):
833
833
  port = get_free_tcp_port()
834
834
  if platform.system() != "Darwin":
835
- # MacOS only sets up the loopback interface for 127.0.0.1 and not for 127.*.*.*, so we cant test this
835
+ # MacOS only sets up the loopback interface for 127.0.0.1 and not for 127.*.*.*, so we can't test this
836
836
  with mock_locustfile() as mocked:
837
837
  proc = subprocess.Popen(
838
838
  ["locust", "-f", mocked.file_path, "--web-host", "127.0.0.2", "--web-port", str(port)],
@@ -3214,7 +3214,7 @@ class TestMasterRunner(LocustRunnerTestCase):
3214
3214
 
3215
3215
  def test_worker_sends_unrecognized_message_to_master(self):
3216
3216
  """
3217
- Validate master ignores message from worker when it cannot parse adddress info.
3217
+ Validate master ignores message from worker when it cannot parse address info.
3218
3218
  """
3219
3219
 
3220
3220
  class TestUser(User):
locust/test/test_stats.py CHANGED
@@ -367,7 +367,7 @@ class TestStatsPrinting(LocustTestCase):
367
367
  headlines = info[1].replace("# ", "#").split()
368
368
  # check number of columns in headlines vs table ascii separator
369
369
  self.assertEqual(len(headlines), len(info[2].split("|")))
370
- # table ascii seprators
370
+ # table ascii separators
371
371
  self.assertEqual(info[2], info[-2])
372
372
 
373
373
 
locust/util/timespan.py CHANGED
@@ -2,7 +2,7 @@ import re
2
2
  from datetime import timedelta
3
3
 
4
4
 
5
- def parse_timespan(time_str):
5
+ def parse_timespan(time_str) -> int:
6
6
  """
7
7
  Parse a string representing a time span and return the number of seconds.
8
8
  Valid formats are: 20, 20s, 3m, 2h, 1h20m, 3h30m10s, etc.
@@ -18,8 +18,7 @@ def parse_timespan(time_str):
18
18
  parts = timespan_regex.match(time_str)
19
19
  if not parts:
20
20
  raise ValueError("Invalid time span format. Valid formats: 20, 20s, 3m, 2h, 1h20m, 3h30m10s, etc.")
21
- parts = parts.groupdict()
22
- time_params = {name: int(value) for name, value in parts.items() if value}
21
+ time_params = {name: int(value) for name, value in parts.groupdict().items() if value}
23
22
  if not time_params:
24
23
  raise ValueError("Invalid time span format. Valid formats: 20, 20s, 3m, 2h, 1h20m, 3h30m10s, etc.")
25
24
  return int(timedelta(**time_params).total_seconds())
locust/web.py CHANGED
@@ -104,7 +104,7 @@ class WebUI:
104
104
  environment: Reference to the current Locust Environment
105
105
  host: Host/interface that the web server should accept connections to
106
106
  port: Port that the web server should listen to
107
- web_login: Enables a login page for the modern UI
107
+ web_login: Enables a login page
108
108
  tls_cert: A path to a TLS certificate
109
109
  tls_key: A path to a TLS private key
110
110
  delayed_start: Whether or not to delay starting web UI until `start()` is called. Delaying web UI start
@@ -147,7 +147,7 @@ class WebUI:
147
147
  def handle_exception(error):
148
148
  error_message = str(error)
149
149
  logger.log(logging.CRITICAL, error_message)
150
- return make_response(error_message, 500)
150
+ return make_response(error_message, getattr(error, "code", 500))
151
151
 
152
152
  @app.route("/assets/<path:path>")
153
153
  def send_assets(path):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: locust
3
- Version: 2.26.1.dev7
3
+ Version: 2.26.1.dev16
4
4
  Summary: Developer friendly load testing framework
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://github.com/locustio/locust
@@ -116,7 +116,7 @@ Locust's code base is intentionally kept small and doesn't solve everything out
116
116
  ## Authors
117
117
 
118
118
  * Maintainer: [Lars Holmberg](https://github.com/cyberw)
119
- * Modern UI: [Andrew Baldwin](https://github.com/andrewbaldwin44)
119
+ * UI: [Andrew Baldwin](https://github.com/andrewbaldwin44)
120
120
  * Original creator: [Jonatan Heyman](https://github.com/heyman)
121
121
  * Massive thanks to [all of our contributors](https://github.com/locustio/locust/graphs/contributors)
122
122
 
@@ -1,6 +1,6 @@
1
1
  locust/__init__.py,sha256=g6oA-Ba_hs3gLWVf5MKJ1mvfltI8MFnDWG8qslqm8yg,1402
2
2
  locust/__main__.py,sha256=vBQ82334kX06ImDbFlPFgiBRiLIinwNk3z8Khs6hd74,31
3
- locust/_version.py,sha256=3veUhUmsTLjhnzaNLqgswdPQDWWnCSjT1jJuKb3nAJQ,426
3
+ locust/_version.py,sha256=zATBBES6mVEiFZ2s2JJ69GRnNnIRImZ5L4UYyTaBPqo,428
4
4
  locust/argument_parser.py,sha256=gOyB1rqEEFNVkhGa-oAuCxf573aB_lATSY9w6FlCbHk,32008
5
5
  locust/clients.py,sha256=-vKHkTkUQwYUXUpuROvHdiAbSbOPY8s4V7xFDF5KU1A,14819
6
6
  locust/debug.py,sha256=We6Z9W0btkKSc7PxWmrZx-xMynvOOsKhG6jmDgQin0g,5134
@@ -9,14 +9,14 @@ locust/env.py,sha256=nd6ui1bv6n-kkLkP3r61ZkskDY627dsKOAkYHhtOW7o,12472
9
9
  locust/event.py,sha256=xgNKbcejxy1TNUfIdgV75KgD2_BOwQmvjrJ4hWuydRw,7740
10
10
  locust/exception.py,sha256=jGgJ32ubuf4pWdlaVOkbh2Y0LlG0_DHi-lv3ib8ppOE,1791
11
11
  locust/html.py,sha256=IrOYxmmowzcO96c9fytzR4U0lifTJyMTA7Rd96WOXkk,5708
12
- locust/input_events.py,sha256=WZtjFMJQpPszxgqwZkxzRBOhygHIersHsvt-9S34M9k,3271
12
+ locust/input_events.py,sha256=VQIrgXaoph3JgLo6REKtPBThEPUXYXG5Kcedly5aRYc,3272
13
13
  locust/log.py,sha256=2IVp9YL4ZPfWdj3sBFuOHfgneg3g7m7tUGR-sy2s3E8,3155
14
- locust/main.py,sha256=emuULU-y1SmHTLcLqfOiZn_SnZzWDcf_IYRmB4Yc348,28194
14
+ locust/main.py,sha256=OEuiWI49TB3xfiyLh6G6-bnV3s11hSYNki173PSV4uw,28152
15
15
  locust/py.typed,sha256=gkWLl8yD4mIZnNYYAIRM8g9VarLvWmTAFeUfEbxJLBw,65
16
- locust/runners.py,sha256=CsT0J1RDANceL3BfF7L0nSvYdk9O20vGRy4gtef_Urw,67953
16
+ locust/runners.py,sha256=7qJE6cHETFEOo7kr0vo_PN3bdfOIw-fbKrc2aPPrjKw,67954
17
17
  locust/shape.py,sha256=t-lwBS8LOjWcKXNL7j2U3zroIXJ1b0fazUwpRYQOKXw,1973
18
18
  locust/stats.py,sha256=l2cxxVre8dvA4MIOD_ZKNj_fYySz5gTGC2f9Rc4-CL0,46134
19
- locust/web.py,sha256=tgTRfzAxKBxudjhLkQr5JGppoEOD6hcmZ-i_rGvwOlQ,28245
19
+ locust/web.py,sha256=zj0Lm3tQq0MhbeJ1oKROnvauNibwUSBXsTehw2q2nAA,28251
20
20
  locust/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
21
  locust/contrib/fasthttp.py,sha256=B_VofSuvb9cehQxlUZnLVvYAr2AquedxeALua4mVOuM,26749
22
22
  locust/rpc/__init__.py,sha256=nVGoHWFQxZjnhCDWjbgXIbmFbN9sizAjkhvSs9_642c,58
@@ -61,12 +61,12 @@ locust/test/test_interruptable_task.py,sha256=LZKSV-aJNnwfvAxguz6SckBEuGEnfGimoI
61
61
  locust/test/test_load_locustfile.py,sha256=v-muHoM-CYu8t7DXm4AQtFP2q8RYfnTTUBqj7uVqhig,8494
62
62
  locust/test/test_locust_class.py,sha256=oGhhOX848jHRQnIfFlhLlW-kHGYLyYsfDX8hM07Ro7g,25506
63
63
  locust/test/test_log.py,sha256=YPY6vgTAy1KaNU2qoVvQrTH5x_mzRrljEHrkSBy3yxs,7553
64
- locust/test/test_main.py,sha256=lchekHHgQBsY5wOuKbjjVm7U8cJ9qzJWmGSUu_Ebw7k,83553
64
+ locust/test/test_main.py,sha256=LOVES_hyNs9kftr9WYRIn6SrfeonAZC7lK4WWJHZOyM,83554
65
65
  locust/test/test_old_wait_api.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
66
66
  locust/test/test_parser.py,sha256=R2RATAHVC1n4gRYZyRD3yO5P9QMFbruZ3A4dwaw8Up0,18287
67
- locust/test/test_runners.py,sha256=rtmm9cV82lc7jqEYW3FTM8CNmLlswTIPr9UbeE5vfPc,159382
67
+ locust/test/test_runners.py,sha256=6FPd-3Glp5_xtVIE8yCHDonM0aYJ0A6He5KSxuWOk34,159381
68
68
  locust/test/test_sequential_taskset.py,sha256=QjVMWWfGHn9hU5AvPxRDU7Vo5DcVW1VkMVfDA0k9OPE,3398
69
- locust/test/test_stats.py,sha256=g5WXKbKtjtPxR_Ixukz04wZUsEC7RkHx5hCNHzofob4,33928
69
+ locust/test/test_stats.py,sha256=F51VkL3k3y4OhYBlRyV6vWzisenSAOmSWKy2IPVrnWM,33929
70
70
  locust/test/test_tags.py,sha256=mzhGLPMizSnSItTHLHizYvloxDfuIDAOgelwInyrf28,13138
71
71
  locust/test/test_taskratio.py,sha256=SQ-sBqeFm2GhkfCD_57-fPzQrk1ilSw3DRb0_nwyxAI,2742
72
72
  locust/test/test_users.py,sha256=lp6yAKGK9_MIs9F7s1Vc3561P4oRavhpeVo2y9w3SUU,2135
@@ -88,16 +88,16 @@ locust/util/deprecation.py,sha256=pFipULkYFjYnuFSycJZ0s95r0CTSlvx8otGnqSu1bsQ,20
88
88
  locust/util/exception_handler.py,sha256=jTMyBq2a0O07fRjmqGkheyaPj58tUgnbbcjoesKGPws,797
89
89
  locust/util/load_locustfile.py,sha256=hn70KcIG8jHmZyuKv2pcEmwgWtOEu24Efeji1KRYNUE,2964
90
90
  locust/util/rounding.py,sha256=5haxR8mKhATqag6WvPby-MSRRgIw5Ob6thbyvMYZM7o,92
91
- locust/util/timespan.py,sha256=rrMk4AR5t9HA59GktWCvOsYBDhkKAwLkk0Orj-l2EGY,997
91
+ locust/util/timespan.py,sha256=Y0LtnhUq2Mq19p04u0XtBlYQ_-S2cRvwRdgru8W9WhA,986
92
92
  locust/webui/dist/auth.html,sha256=xDquX2awbYPO0FHo0SUTeylBjwbwUWpu2_blXKD0J5s,501
93
93
  locust/webui/dist/index.html,sha256=7LG5sNTcH3Hu07hxAdlpSRTy5fCHq1tNekJo-ZfaWxI,901
94
94
  locust/webui/dist/report.html,sha256=sOdZZVgZbqgu86BBCSQf3uQUYXgmgSnXF32JpnyAII8,513
95
95
  locust/webui/dist/assets/favicon.ico,sha256=IUl-rYqfpHdV38e-s0bkmFIeLS-n3Ug0DQxk-h202hI,8348
96
96
  locust/webui/dist/assets/index-941b6e82.js,sha256=G3n5R81Svt0HzbWaV3AV20jLWGLr4X50UZ-Adu2KcxU,1645614
97
97
  locust/webui/dist/assets/logo.png,sha256=EIVPqr6wE_yqguHaqFHIsH0ZACLSrvNWyYO7PbyIj4w,19299
98
- locust-2.26.1.dev7.dist-info/LICENSE,sha256=78XGpIn3fHVBfaxlPNUfjVufSN7QsdhpJMRJHv2AFpo,1095
99
- locust-2.26.1.dev7.dist-info/METADATA,sha256=oYWSG2mlrlNKusKZA-2gpX6rhfhmMjBFiZfBWLcr3ms,7253
100
- locust-2.26.1.dev7.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
101
- locust-2.26.1.dev7.dist-info/entry_points.txt,sha256=RAdt8Ku-56m7bFjmdj-MBhbF6h4NX7tVODR9QNnOg0E,44
102
- locust-2.26.1.dev7.dist-info/top_level.txt,sha256=XSsjgPA8Ggf9TqKVbkwSqZFuPlZ085X13M9orDycE20,7
103
- locust-2.26.1.dev7.dist-info/RECORD,,
98
+ locust-2.26.1.dev16.dist-info/LICENSE,sha256=78XGpIn3fHVBfaxlPNUfjVufSN7QsdhpJMRJHv2AFpo,1095
99
+ locust-2.26.1.dev16.dist-info/METADATA,sha256=T-wQ7Bi9iJNdyPj0xvjWXgF7ot7QsKNj_19dZiCI7kM,7247
100
+ locust-2.26.1.dev16.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
101
+ locust-2.26.1.dev16.dist-info/entry_points.txt,sha256=RAdt8Ku-56m7bFjmdj-MBhbF6h4NX7tVODR9QNnOg0E,44
102
+ locust-2.26.1.dev16.dist-info/top_level.txt,sha256=XSsjgPA8Ggf9TqKVbkwSqZFuPlZ085X13M9orDycE20,7
103
+ locust-2.26.1.dev16.dist-info/RECORD,,