locust 2.46.7.dev17__tar.gz → 2.46.7.dev21__tar.gz

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.
Files changed (69) hide show
  1. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/PKG-INFO +1 -1
  2. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/_version.py +2 -2
  3. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/fasthttp.py +20 -0
  4. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/date.py +1 -1
  5. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/.gitignore +0 -0
  6. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/LICENSE +0 -0
  7. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/README.md +0 -0
  8. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/hatch_build.py +0 -0
  9. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/__init__.py +0 -0
  10. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/__main__.py +0 -0
  11. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/argument_parser.py +0 -0
  12. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/clients.py +0 -0
  13. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/__init__.py +0 -0
  14. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/csv_request_logger.py +0 -0
  15. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/dns.py +0 -0
  16. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/milvus.py +0 -0
  17. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/mongodb.py +0 -0
  18. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/mqtt.py +0 -0
  19. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/oai.py +0 -0
  20. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/postgres.py +0 -0
  21. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/qdrant.py +0 -0
  22. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/contrib/socketio.py +0 -0
  23. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/debug.py +0 -0
  24. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/dispatch.py +0 -0
  25. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/env.py +0 -0
  26. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/event.py +0 -0
  27. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/exception.py +0 -0
  28. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/html.py +0 -0
  29. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/input_events.py +0 -0
  30. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/log.py +0 -0
  31. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/main.py +0 -0
  32. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/opentelemetry.py +0 -0
  33. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/py.typed +0 -0
  34. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/rpc/__init__.py +0 -0
  35. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/rpc/protocol.py +0 -0
  36. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/rpc/zmqrpc.py +0 -0
  37. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/runners.py +0 -0
  38. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/shape.py +0 -0
  39. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/stats.py +0 -0
  40. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/user/__init__.py +0 -0
  41. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/user/inspectuser.py +0 -0
  42. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/user/markov_taskset.py +0 -0
  43. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/user/sequential_taskset.py +0 -0
  44. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/user/task.py +0 -0
  45. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/user/users.py +0 -0
  46. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/user/wait_time.py +0 -0
  47. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/__init__.py +0 -0
  48. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/cache.py +0 -0
  49. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/deprecation.py +0 -0
  50. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/directory.py +0 -0
  51. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/exception_handler.py +0 -0
  52. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/load_locustfile.py +0 -0
  53. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/rounding.py +0 -0
  54. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/timespan.py +0 -0
  55. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/util/url.py +0 -0
  56. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/web.py +0 -0
  57. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/favicon-dark.png +0 -0
  58. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/favicon-light.png +0 -0
  59. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/graphs-dark.png +0 -0
  60. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/graphs-light.png +0 -0
  61. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/src-pSlzKFX1.js +0 -0
  62. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/terminal.gif +0 -0
  63. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/testruns-dark.png +0 -0
  64. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/assets/testruns-light.png +0 -0
  65. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/auth.html +0 -0
  66. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/index.html +0 -0
  67. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/locust/webui/dist/report.html +0 -0
  68. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/pyproject.toml +0 -0
  69. {locust-2.46.7.dev17 → locust-2.46.7.dev21}/pytest_locust/plugin.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: locust
3
- Version: 2.46.7.dev17
3
+ Version: 2.46.7.dev21
4
4
  Summary: Developer-friendly load testing framework
5
5
  Project-URL: Homepage, https://locust.cloud/
6
6
  Project-URL: Repository, https://github.com/locustio/locust
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '2.46.7.dev17'
22
- __version_tuple__ = version_tuple = (2, 46, 7, 'dev17')
21
+ __version__ = version = '2.46.7.dev21'
22
+ __version_tuple__ = version_tuple = (2, 46, 7, 'dev21')
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -12,6 +12,7 @@ import socket
12
12
  import time
13
13
  import zlib
14
14
  from base64 import b64encode
15
+ from contextlib import contextmanager
15
16
  from http.cookiejar import CookieJar
16
17
  from ssl import SSLError
17
18
  from typing import TYPE_CHECKING
@@ -111,6 +112,11 @@ class FastHttpSession:
111
112
  self.request_event = request_event
112
113
  self.cookiejar = CookieJar()
113
114
  self.user = user
115
+
116
+ # Requests can be grouped under a common name by setting request_name, or by using the rename_request context manager
117
+ # This is an alternative to passing in the "name" parameter to the requests function
118
+ self.request_name: str | None = None
119
+
114
120
  if not ssl_context_factory:
115
121
  if insecure:
116
122
  ssl_context_factory = insecure_ssl_context_factory
@@ -153,6 +159,16 @@ class FastHttpSession:
153
159
  else:
154
160
  return f"{self.base_url}{path}"
155
161
 
162
+ @contextmanager
163
+ def rename_request(self, name: str) -> Generator[None]:
164
+ """Group requests using the "with" keyword"""
165
+
166
+ self.request_name = name
167
+ try:
168
+ yield
169
+ finally:
170
+ self.request_name = None
171
+
156
172
  def _send_request_safe_mode(self, method: str, url: str, **kwargs) -> FastResponse:
157
173
  """
158
174
  Send an HTTP request, and catch any exception that might occur due to either
@@ -221,6 +237,10 @@ class FastHttpSession:
221
237
  :return: A :py:class:`FastResponse <locust.contrib.fasthttp.FastResponse>` object if catch_response is False, and
222
238
  :py:class:`ResponseContextManager <locust.contrib.fasthttp.ResponseContextManager>` if True.
223
239
  """
240
+ # if group name has been set and no name parameter has been passed in; set the name parameter to group_name
241
+ if self.request_name and not name:
242
+ name = self.request_name
243
+
224
244
  # prepend url with hostname unless it's already an absolute URL
225
245
  built_url = self._build_url(url)
226
246
 
@@ -10,7 +10,7 @@ def format_safe_timestamp(unix_timestamp):
10
10
 
11
11
 
12
12
  def format_duration(start_time, end_time):
13
- seconds = int(end_time) - int(start_time)
13
+ seconds = int(end_time - start_time)
14
14
  days = seconds // 86400
15
15
  hours = (seconds % 86400) // 3600
16
16
  minutes = (seconds % 3600) // 60
File without changes
File without changes
File without changes