Compare commits

...

2 Commits

Author SHA1 Message Date
Jeremy Stretch
9eaa754889 Extend test_send_webhook() to check for inclusion of request path 2026-03-20 15:17:16 -04:00
Jeremy Stretch
6210ded1ea Closes #21702: Include originating HTTP request in outbound webhook context data 2026-03-20 14:56:17 -04:00
2 changed files with 13 additions and 1 deletions
+6 -1
View File
@@ -345,6 +345,7 @@ class EventRuleTest(APITestCase):
def test_send_webhook(self):
request_id = uuid.uuid4()
url_path = reverse('dcim:site_add')
def dummy_send(_, request, **kwargs):
"""
@@ -370,11 +371,15 @@ class EventRuleTest(APITestCase):
self.assertEqual(body['data']['name'], 'Site 1')
self.assertEqual(body['data']['foo'], 1)
self.assertEqual(body['context']['foo'], 123) # From netbox.tests.dummy_plugin
self.assertEqual(body['request']['id'], str(request_id))
self.assertEqual(body['request']['method'], 'GET')
self.assertEqual(body['request']['path'], url_path)
self.assertEqual(body['request']['user'], 'testuser')
return HttpResponse()
# Create a dummy request
request = RequestFactory().get(reverse('dcim:site_add'))
request = RequestFactory().get(url_path)
request.id = request_id
request.user = self.user
+7
View File
@@ -57,6 +57,13 @@ def send_webhook(event_rule, object_type, event_type, data, timestamp, username,
'request_id': request.id if request else None,
'data': data,
}
if request:
context['request'] = {
'id': str(request.id) if request.id else None,
'method': request.method,
'path': request.path,
'user': str(request.user),
}
if snapshots:
context.update({
'snapshots': snapshots