summaryrefslogtreecommitdiff
path: root/tools/python_test_v4.py
diff options
context:
space:
mode:
authorMax Wittig <max.wittig@siemens.com>2018-04-18 10:34:07 +0200
committerMax Wittig <max.wittig@siemens.com>2018-04-18 10:34:07 +0200
commite216f06d4d25d37a67239e93a8e2e400552be396 (patch)
treed22fba22c60acb27edb158df0b808f8748f1534e /tools/python_test_v4.py
parentad4de20fe3a2fba2d35d4204bf5b0b7f589d4188 (diff)
downloadgitlab-e216f06d4d25d37a67239e93a8e2e400552be396.tar.gz
chore(tests): add rate limit tests
Diffstat (limited to 'tools/python_test_v4.py')
-rw-r--r--tools/python_test_v4.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/tools/python_test_v4.py b/tools/python_test_v4.py
index 695722f..83dd967 100644
--- a/tools/python_test_v4.py
+++ b/tools/python_test_v4.py
@@ -646,3 +646,28 @@ gl.user_activities.list()
# events
gl.events.list()
+
+# rate limit
+settings = gl.settings.get()
+settings.throttle_authenticated_api_enabled = True
+settings.throttle_authenticated_api_requests_per_period = 1
+settings.throttle_authenticated_api_period_in_seconds = 3
+settings.save()
+projects = list()
+for i in range(0, 20):
+ projects.append(gl.projects.create(
+ {'name': str(i) + "ok"}))
+
+error_message = None
+for i in range(20, 40):
+ try:
+ projects.append(
+ gl.projects.create(
+ {'name': str(i) + 'shouldfail'}, obey_rate_limit=False))
+ except gitlab.GitlabCreateError as e:
+ error_message = e.error_message
+ break
+assert 'Retry later' in error_message
+[current_project.delete() for current_project in projects]
+settings.throttle_authenticated_api_enabled = False
+settings.save()