[LDTP-Dev] [Bug 578644] New: Provide a means to wait for an event from an object

LDTP (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Fri Apr 10 11:00:30 PDT 2009


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=578644

  LDTP | ldtp | Ver: unspecified
           Summary: Provide a means to wait for an event from an object
           Product: LDTP
           Version: unspecified
          Platform: Other
        OS/Version: opensolaris
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ldtp
        AssignedTo: ldtp-maint at gnome.bugs
        ReportedBy: william.walker at sun.com
         QAContact: ldtp-dev at lists.freedesktop.org
     GNOME version: Unspecified
   GNOME milestone: Unspecified


There is a waittillguiexist method that allows a test to wait until a GUI
exists.  However, there are times where I'd like to wait until a specific
object has focus or a caret has moved or a checkbox has changed state or an
item in a table has been selected before moving on.  The typical usage pattern
is to perform an action to make something change in the API (e.g., Press the
<Tab> key to navigate somewhere) and then wait for the change to happen (e.g.,
a new text area gets focus as a result of the <Tab>).

These give me the opportunity to verify things have occurred in the UI and to
also programmatically consult with external processes (e.g., the Orca screen
reader) for things that they may have done in response to this event.

The "Macaroon" package that Eitan Isaacson wrote is something we use in the
Orca regression test harness for this kind of thing:

http://svn.gnome.org/svn/accerciser/trunk/macaroon/

Macaroon allows you to express the wait operation via convenience methods such
as the following:

WaitForFocus(acc_role=pyatspi.ROLE_TEXT)
WaitForWindowActivate("Panes",None)

But, it also allows you to wait for specific events:

WaitAction("object:state-changed:checked",
           None,
           None,
           pyatspi.ROLE_CHECK_BOX,
           5000)

It would be great if we could have similar mechanisms in LDTP to do this.  I
believe the macaroon model is different from LDTP, however, so I wouldn't
expect the mechanisms to be the same.

Thanks!


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=578644.


More information about the LDTP-dev mailing list