@@ -145,18 +145,16 @@ def test_healthcheck(self, interface: Interface, get_entry_span_tag, asm_enabled
145
145
assert get_entry_span_tag ("http.status_code" ) == "200"
146
146
assert self .headers (response )["content-type" ] == "text/html; charset=utf-8"
147
147
148
- @pytest .mark .parametrize ("rename_service" , [True , False ])
149
- def test_simple_attack (self , interface : Interface , entry_span , get_entry_span_tag , rename_service ):
148
+ def test_simple_attack (self , interface : Interface , entry_span , get_entry_span_tag ):
150
149
with override_global_config (dict (_asm_enabled = True )):
151
150
self .update_tracer (interface )
152
- response = interface .client .get ("/.git?q=1" , headers = { "x-rename-service" : str ( rename_service ). lower ()} )
151
+ response = interface .client .get ("/.git?q=1" )
153
152
assert response .status_code == 404
154
153
triggers = get_triggers (entry_span ())
155
154
assert triggers is not None , "no appsec struct in root span"
156
155
assert get_entry_span_tag ("http.response.headers.content-length" )
157
156
158
- @pytest .mark .parametrize ("rename_service" , [True , False ])
159
- def test_simple_attack_timeout (self , interface : Interface , entry_span , get_entry_span_metric , rename_service ):
157
+ def test_simple_attack_timeout (self , interface : Interface , entry_span , get_entry_span_metric ):
160
158
from unittest .mock import MagicMock
161
159
from unittest .mock import patch as mock_patch
162
160
@@ -170,9 +168,7 @@ def test_simple_attack_timeout(self, interface: Interface, entry_span, get_entry
170
168
self .update_tracer (interface )
171
169
query_params = urlencode ({"q" : "1" })
172
170
url = f"/?{ query_params } "
173
- response = interface .client .get (
174
- url , headers = {"User-Agent" : "Arachni/v1.5.1" , "x-rename-service" : str (rename_service ).lower ()}
175
- )
171
+ response = interface .client .get (url , headers = {"User-Agent" : "Arachni/v1.5.1" })
176
172
assert response .status_code == 200
177
173
assert get_entry_span_metric ("_dd.appsec.waf.timeouts" ) > 0 , (entry_span ()._meta , entry_span ()._metrics )
178
174
args_list = [
@@ -896,8 +892,18 @@ def test_request_suspicious_request_block_match_response_status(
896
892
("/asm/1/a" , {"header_name" : "NoWorryBeHappy" }, None ),
897
893
],
898
894
)
895
+ @pytest .mark .parametrize ("rename_service" , [True , False ])
899
896
def test_request_suspicious_request_block_match_response_headers (
900
- self , interface : Interface , get_entry_span_tag , asm_enabled , metastruct , entry_span , uri , headers , blocked
897
+ self ,
898
+ interface : Interface ,
899
+ get_entry_span_tag ,
900
+ asm_enabled ,
901
+ metastruct ,
902
+ entry_span ,
903
+ uri ,
904
+ headers ,
905
+ blocked ,
906
+ rename_service ,
901
907
):
902
908
from ddtrace .ext import http
903
909
@@ -909,7 +915,7 @@ def test_request_suspicious_request_block_match_response_headers(
909
915
self .update_tracer (interface )
910
916
if headers :
911
917
uri += "?headers=" + quote ("," .join (f"{ k } ={ v } " for k , v in headers .items ()))
912
- response = interface .client .get (uri )
918
+ response = interface .client .get (uri , headers = { "x-rename-service" : "true" if rename_service else "false" } )
913
919
# DEV Warning: encoded URL will behave differently
914
920
assert get_entry_span_tag (http .URL ) == "http://localhost:8000" + uri
915
921
assert get_entry_span_tag (http .METHOD ) == "GET"
0 commit comments