Files
instagram-bot/scratch_dump_scanner.py

42 lines
1.2 KiB
Python

import os
import glob
import xml.etree.ElementTree as ET
dumps = glob.glob('debug/xml_dumps/*.xml')
edge_cases = {
'dialogs': set(),
'bottom_sheets': set(),
'errors': set(),
'weird_states': set()
}
for dump in dumps:
try:
tree = ET.parse(dump)
root = tree.getroot()
for node in root.iter('node'):
rid = node.get('resource-id', '')
class_name = node.get('class', '')
text = node.get('text', '')
if 'dialog' in rid.lower() or 'alert' in rid.lower() or 'popup' in rid.lower():
edge_cases['dialogs'].add(rid)
elif 'bottom_sheet' in rid.lower() or 'action_sheet' in rid.lower():
edge_cases['bottom_sheets'].add(rid)
elif 'error' in rid.lower() or 'fail' in rid.lower():
edge_cases['errors'].add(rid)
# Unusual views that might break logic
if 'survey' in rid.lower() or 'rate' in rid.lower() or 'nux' in rid.lower():
edge_cases['weird_states'].add(rid)
except:
pass
print("=== Discovered Edge Cases in Dumps ===")
for k, v in edge_cases.items():
print(f"\n[{k.upper()}]")
for item in list(v)[:10]:
print(f" - {item}")