LDTP
2.3.1
|
onwindowcreate('<window title>', '<callback function>'[, <arguments to callback function>])
Watch, window create event, with the given title and call the respective callback function. Window title supports regular expression too.
1 | on success, else LdtpExecutionError exception |
Refer: http://cgit.freedesktop.org/ldtp/ldtp/tree/src/client-handler.c http://cgit.freedesktop.org/ldtp/ldtp/tree/src/ldtp-gui.c
With respect to gedit application, replace dialog
from ldtp import * import threading launchapp('gedit') waittillguiexist('*-gedit') callbackRunning = threading.Event() callbackRunning.clear() callbackState = threading.Event() callbackState.clear() def cb(): callbackState.set() waittillguiexist('dlgReplace') click('dlgReplace', 'btnClose') callbackState.clear() callbackRunning.set() print 'callbackend' def cbwithvarargs(*args): for arg in args: print arg print 'callbackend' onwindowcreate('dlgReplace', cb) onwindowcreate('dlgOpenFiles', cbwithvarargs, 'test', 'var', 'args') click('*gedit', 'btnReplace') click('*gedit', 'btnOpen') waittillguiexist('dlgOpenFiles') click('dlgOpenFiles', 'btnCancel') if callbackState.isSet(): print 'Waiting for callback to complete' callbackRunning.wait() print 'callbackset' print 'test end'