Introduction¶
Currently, Squish cannot hook into the native macOS file dialogs. Nonetheless, it is still possible to automate interaction with these dialogs using the nativeType() function.
Example:
def main():
# ...
# the file dialog gets opened here
# Snooze long enough for the dialog to pop up and be ready
snooze(2)
# Open path input field:
nativeType("<Command+Shift+g>")
# Wait long enough for the sheet to appear
snooze(1)
# Enter desired path:
nativeType("/Users/myuser/temp.txt")
# Give the dialog a moment's pause
snooze(1)
nativeType("<Return>")
# Give the dialog a moment's pause
snooze(1)
# Close the dialog
nativeType("<Return>")
# Give the AUT a chance to handle the closing of the file dialog
snooze(1)
⚠️ The snooze() statements are important to avoid sending the key presses before the dialog appears, or faster than the dialog can process them.
⚠️ The Command+Shift+g key press causes the "Go to the folder" sheet to appear:
