in commands/FBXCTestCommands.py [0:0]
def run(self, arguments, options):
element = arguments[0]
language = fb.currentLanguage()
if element == "__default__":
element = (
"XCUIApplication()"
if language == lldb.eLanguageTypeSwift
else "(XCUIApplication *)[[XCUIApplication alloc] init]"
)
# Evaluate object
element_sbvalue = fb.evaluateExpressionValue(
"{}".format(element), language=language
)
""":type: lldb.SBValue"""
# Get pointer value, so it will be working in Swift and Objective-C
element_pointer = int(element_sbvalue.GetValue(), 16)
# Get XCElementSnapshot object
snapshot = take_snapshot(element_pointer)
# Print tree for snapshot element
snapshot_object = XCElementSnapshot(snapshot, language=language)
print(
snapshot_object.tree().hierarchy_text(
pointer=options.pointer, trait=options.trait, frame=options.frame
)
)