File tree Expand file tree Collapse file tree 2 files changed +19
-1
lines changed Expand file tree Collapse file tree 2 files changed +19
-1
lines changed Original file line number Diff line number Diff line change @@ -207,7 +207,9 @@ def extract_http_status_code_tag(trigger_tags, response):
207207 if response is None :
208208 # Return a 502 status if no response is found
209209 status_code = "502"
210- elif response . get ( "statusCode " ):
210+ elif hasattr ( response , "get " ):
211211 status_code = response .get ("statusCode" )
212+ elif hasattr (response , "status_code" ):
213+ status_code = response .status_code
212214
213215 return status_code
Original file line number Diff line number Diff line change 1111 parse_event_source ,
1212 get_event_source_arn ,
1313 extract_trigger_tags ,
14+ extract_http_status_code_tag ,
1415)
1516
1617event_samples = "tests/event_samples/"
@@ -328,3 +329,18 @@ def test_extract_trigger_tags_unsupported(self):
328329 event = json .load (event )
329330 tags = extract_trigger_tags (event , ctx )
330331 self .assertEqual (tags , {})
332+
333+
334+ class ExtractHTTPStatusCodeTag (unittest .TestCase ):
335+ def test_extract_http_status_code_tag_from_response_dict (self ):
336+ trigger_tags = {"function_trigger.event_source" : "api-gateway" }
337+ response = {"statusCode" : 403 }
338+ status_code = extract_http_status_code_tag (trigger_tags , response )
339+ self .assertEqual (status_code , 403 )
340+
341+ def test_extract_http_status_code_tag_from_response_object (self ):
342+ trigger_tags = {"function_trigger.event_source" : "api-gateway" }
343+ response = MagicMock (spec = ["status_code" ])
344+ response .status_code = 403
345+ status_code = extract_http_status_code_tag (trigger_tags , response )
346+ self .assertEqual (status_code , 403 )
You can’t perform that action at this time.
0 commit comments