@@ -1249,6 +1249,41 @@ def test_cleanse_setting_recurses_in_dictionary(self):
12491249 {'login' : 'cooper' , 'password' : reporter_filter .cleansed_substitute },
12501250 )
12511251
1252+ def test_cleanse_setting_recurses_in_list_tuples (self ):
1253+ reporter_filter = SafeExceptionReporterFilter ()
1254+ initial = [
1255+ {
1256+ 'login' : 'cooper' ,
1257+ 'password' : 'secret' ,
1258+ 'apps' : (
1259+ {'name' : 'app1' , 'api_key' : 'a06b-c462cffae87a' },
1260+ {'name' : 'app2' , 'api_key' : 'a9f4-f152e97ad808' },
1261+ ),
1262+ 'tokens' : ['98b37c57-ec62-4e39' , '8690ef7d-8004-4916' ],
1263+ },
1264+ {'SECRET_KEY' : 'c4d77c62-6196-4f17-a06b-c462cffae87a' },
1265+ ]
1266+ cleansed = [
1267+ {
1268+ 'login' : 'cooper' ,
1269+ 'password' : reporter_filter .cleansed_substitute ,
1270+ 'apps' : (
1271+ {'name' : 'app1' , 'api_key' : reporter_filter .cleansed_substitute },
1272+ {'name' : 'app2' , 'api_key' : reporter_filter .cleansed_substitute },
1273+ ),
1274+ 'tokens' : reporter_filter .cleansed_substitute ,
1275+ },
1276+ {'SECRET_KEY' : reporter_filter .cleansed_substitute },
1277+ ]
1278+ self .assertEqual (
1279+ reporter_filter .cleanse_setting ('SETTING_NAME' , initial ),
1280+ cleansed ,
1281+ )
1282+ self .assertEqual (
1283+ reporter_filter .cleanse_setting ('SETTING_NAME' , tuple (initial )),
1284+ tuple (cleansed ),
1285+ )
1286+
12521287 def test_request_meta_filtering (self ):
12531288 request = self .rf .get ('/' , HTTP_SECRET_HEADER = 'super_secret' )
12541289 reporter_filter = SafeExceptionReporterFilter ()
0 commit comments