@@ -19,21 +19,20 @@ def obfuscate_email(email: str | None) -> str:
1919 return re .sub (r"(.).*@.*(.\..*)" , r"\1****@****\2" , email )
2020
2121
22- def obfuscate_string (input : str ) -> str :
22+ def obfuscate_string (input : str | None ) -> str :
2323 """Mask string."""
2424 return re .sub (r"[a-zA-Z0-9_.-]*" , "*" , str (input ))
2525
2626
27- # pylint: disable=too-many-branches
2827def obfuscate_sensitive_data (data : dict [str , Any ]) -> JSON :
2928 """Mask Overkiz JSON data to remove sensitive data."""
3029 mask_next_value = False
3130
3231 for key , value in data .items ():
33- if key in [ "gatewayId" , "id" , "deviceURL" ] :
32+ if key in { "gatewayId" , "id" , "deviceURL" } :
3433 data [key ] = obfuscate_id (value )
3534
36- if key in [
35+ if key in {
3736 "label" ,
3837 "city" ,
3938 "country" ,
@@ -42,7 +41,7 @@ def obfuscate_sensitive_data(data: dict[str, Any]) -> JSON:
4241 "addressLine2" ,
4342 "longitude" ,
4443 "latitude" ,
45- ] :
44+ } :
4645 data [key ] = obfuscate_string (value )
4746
4847 if value in [
@@ -62,17 +61,7 @@ def obfuscate_sensitive_data(data: dict[str, Any]) -> JSON:
6261 obfuscate_sensitive_data (value )
6362 elif isinstance (value , list ):
6463 for val in value :
65- if isinstance (val , str ):
66- continue
67- if isinstance (val , int ):
68- continue
69- if isinstance (val , float ):
70- continue
71- if isinstance (val , list ):
72- continue
73- if val is None :
74- continue
75-
76- obfuscate_sensitive_data (val )
64+ if isinstance (val , dict ):
65+ obfuscate_sensitive_data (val )
7766
7867 return data
0 commit comments