orca r3481 - in trunk: . test/html test/keystrokes/firefox



Author: joanied
Date: Sun Jan 20 05:37:07 2008
New Revision: 3481
URL: http://svn.gnome.org/viewvc/orca?rev=3481&view=rev

Log:
More regression tests....


Added:
   trunk/test/html/entries.html
   trunk/test/keystrokes/firefox/label_guess_entries.py
Modified:
   trunk/ChangeLog

Added: trunk/test/html/entries.html
==============================================================================
--- (empty file)
+++ trunk/test/html/entries.html	Sun Jan 20 05:37:07 2008
@@ -0,0 +1,82 @@
+<html><head>
+<meta http-equiv="content-type" content="text/html; charset=UTF-8">
+  </head><body>
+<h2>Here are some entries</h2>
+<form>
+   <p>Type <a href="http://bugzilla.gnome.org/hello";>something</a> rather <a href="http://bugzilla.gnome.org/blah";>amusing</a> here:
+      <input name="something" size="22" type="text"></p>
+   <p>Amusing numbers fall between <input name="amusing1" size="5" type="text"> and <input name="amusing2" size="5" type="text">.</p>
+   <p><input name="labelledOnRight" size="22" type="text">I'm a label</p>
+   <table>
+      <tbody><tr><td width="240"><input name="LOR2" size="22" type="text"></td><td>Am I a label as well?</td></tr>
+   </tbody></table>
+   <h2>What the heck should we do here?</h2>
+   <p>Looking at what follows visually, I'm not sure what I would type/i.e. what the labels are.</p>
+   <table>
+      <tbody><tr><td width="300"><input name="LOR2" size="22" type="text"></td><td>Too far away to be a label.</td></tr>
+   </tbody></table>
+   <table>
+      <tbody><tr><td width="400">Distance doesn't count on the left</td><td width="300"><input name="LOR2" size="22" type="text"></td></tr>
+   </tbody></table>
+   <h2>Sometimes labels can be below the fields due to &lt;br /&gt;</h2><p></p>
+   <table>
+          <tbody><tr><td><input name="first" size="22" type="text"><br>First Name</td>
+              <td><input name="middle" size="1" type="text"><br>M.I.</td>
+              <td><input name="last" size="22" type="text"><br>Last Name</td></tr>
+   </tbody></table>
+   <h2>Other times it's due to layout tables</h2><p></p>
+   <table><tbody><tr><td><input name="first" size="22" type="text"></td><td><input name="middle" size="1" type="text"></td><td><input name="last" size="22" type="text"></td></tr>
+          <tr><td>First name</td><td>Middle<br>initial</td><td>Last <a href="http://bugzilla.gnome.org/define-name";>name</a></td></tr>
+   </tbody></table>
+
+   <h2>Second verse same as the first (only now the labels are above the fields)</h2>
+   <table>
+          <tbody><tr><td>First Name</td><td>Middle<br>initial</td><td>Last <a href="http://bugzilla.gnome.org/define-name";>name</a></td></tr>
+          <tr><td><input name="first" size="22" type="text"></td><td><input name="middle" size="1" type="text"></td><td><input name="last" size="22" type="text"></td></tr>
+   </tbody></table>
+   <h2>Decisions, decisions.... When in doubt, closest table cell text wins</h2>
+   <table>
+          <tbody><tr height="50" valign="top"><td>First name</td><td>Middle<br>initial</td><td>Last name</td></tr>
+          <tr><td><input name="first" size="22" type="text"></td><td><input name="middle" size="1" type="text"></td><td><input name="last" size="22" type="text"></td></tr>
+          <tr><td>Given name</td><td>initial</td><td>Surname</td></tr>
+   </tbody></table>
+   <table>
+          <tbody><tr height="50" valign="bottom"><td>First name</td><td>Middle<br>initial</td><td>Last name</td></tr>
+          <tr><td><input name="first" size="22" type="text"></td><td><input name="middle" size="1" type="text"></td><td><input name="last" size="22" type="text"></td></tr>
+          <tr height="50" valign="bottom"><td>Given name</td><td>initial</td><td>Surname</td></tr>
+   </tbody></table>
+   <h2>Decisions, decisions.... We should try to figure out if we're in a grid of fields.</h2>
+   <table>
+          <tbody><tr height="50" valign="top"><td>First name</td><td>Middle<br>initial</td><td>Last name</td><td><img src="entries_files/P.png" alt="patched image"></td></tr>
+          <tr><td><input name="first" size="22" type="text"></td>
+              <td><input name="middle" size="1" type="text"></td>
+              <td><input name="last" size="22" type="text"></td>
+              <td><input name="patch" size="22" type="text"></td></tr>
+          <tr><td><input name="first2" size="22" type="text"></td>
+              <td><input name="middle2" size="1" type="text"></td>
+              <td><input name="last2"  size="22" type="text"></td>
+              <td><input name="patch2" size="22" type="text"></td></tr>
+          <tr><td><input name="first3" size="22" type="text"></td>
+              <td><input name="middle3" size="1" type="text"></td>
+              <td><input name="last3" size="22" type="text"></td>
+              <td><input name="patch2" size="22" type="text"></td></tr>
+   </tbody></table>
+   <h2>We mustn't forget images as labels -- even if that practice is lame</h2>
+   <p><img src="entries_files/P.png" alt="bandaid graphic"><input name="patch" size="22" type="text"></p>
+   <p><input name="patch2" size="22" type="text"><img src="entries_files/P.png" alt="bandaid graphic redux"></p>
+   <p>Magic disappearing text trick: 
+      <input value="tab to me and I disappear" onfocus="if(this.value=='tab to me and I disappear')this.value='';" name="magic" size="22" type="text">
+   </p>
+   <p>
+     Tell me a secret: 
+     <input name="secret" type="password">
+   </p>
+   <p>
+     Tell me a little more about yourself:<br>
+     <textarea name="self" rows="5" cols="40">I
+am a monkey with a long tail. I like to swing from trees and eat
+bananas. I've recently taken up typing and plan to write my memoirs. </textarea>
+   </p>
+  </form>
+
+</body></html>

Added: trunk/test/keystrokes/firefox/label_guess_entries.py
==============================================================================
--- (empty file)
+++ trunk/test/keystrokes/firefox/label_guess_entries.py	Sun Jan 20 05:37:07 2008
@@ -0,0 +1,475 @@
+# -*- coding: utf-8 -*-
+#!/usr/bin/python
+
+"""Test of line navigation output of entries test page.  Note that not
+all of these are "right"/ideal. But this is the current status quo for
+regression testing.  We can revisit/refine the guessing heuristics over
+time and based upon feedback.
+"""
+
+from macaroon.playback import *
+import utils
+
+sequence = MacroSequence()
+
+########################################################################
+# We wait for the focus to be on a blank Firefox window.
+#
+sequence.append(WaitForWindowActivate("Minefield",None))
+
+########################################################################
+# Load the local "simple form" test case.
+#
+sequence.append(KeyComboAction("<Control>l"))
+sequence.append(WaitForFocus("Location", acc_role=pyatspi.ROLE_ENTRY))
+
+sequence.append(TypeAction(utils.htmlURLPrefix + "entries.html"))
+sequence.append(KeyComboAction("Return"))
+
+sequence.append(WaitForDocLoad())
+
+sequence.append(WaitForFocus("",
+                             acc_role=pyatspi.ROLE_DOCUMENT_FRAME))
+
+########################################################################
+# Press Control+Home to move to the top.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("<Control>Home"))
+sequence.append(utils.AssertPresentationAction(
+    "Top of file",
+    ["BRAILLE LINE:  'Here are some entries h2'",
+     "     VISIBLE:  'Here are some entries h2', cursor=1",
+     "SPEECH OUTPUT: 'Here are some entries heading  '",
+     "SPEECH OUTPUT: 'level 2'"]))
+
+########################################################################
+# Press Insert+Tab to move from form field to form field.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'Type something Link  rather amusing Link  here:  $l'",
+     "     VISIBLE:  ' $l', cursor=1",
+     "SPEECH OUTPUT: 'Type something rather amusing here: text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'Amusing numbers fall between  $l  and  $l .'",
+     "     VISIBLE:  ' $l  and  $l .', cursor=1",
+     "SPEECH OUTPUT: 'Amusing numbers fall between text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'Amusing numbers fall between  $l  and  $l .'",
+     "     VISIBLE:  ' $l .', cursor=1",
+     "SPEECH OUTPUT: 'and text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l I'm a label'",
+     "     VISIBLE:  ' $l I'm a label', cursor=1",
+     "SPEECH OUTPUT: 'I'm a label text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l Am I a label as well?'",
+     "     VISIBLE:  ' $l Am I a label as well?', cursor=1",
+     "SPEECH OUTPUT: 'I'm a label text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l Too far away to be a label.'",
+     "     VISIBLE:  ' $l Too far away to be a label.', cursor=1",
+     "SPEECH OUTPUT: 'Looking at what follows visually, I'm not sure what I would type/i.e. what the labels are. text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'Distance doesn't count on the left  $l'",
+     "     VISIBLE:  ' $l', cursor=1",
+     "SPEECH OUTPUT: 'Distance doesn't count on the left text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l '",
+     "     VISIBLE:  ' $l ', cursor=1",
+     "SPEECH OUTPUT: 'First Name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l '",
+     "     VISIBLE:  ' $l ', cursor=1",
+     "SPEECH OUTPUT: 'M.I. text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l '",
+     "     VISIBLE:  ' $l ', cursor=1",
+     "SPEECH OUTPUT: 'Last Name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=1",
+     "SPEECH OUTPUT: 'First name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=5",
+     "SPEECH OUTPUT: 'Middle",
+     "initial text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=9",
+     "SPEECH OUTPUT: 'text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=1",
+     "SPEECH OUTPUT: 'First Name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=5",
+     "SPEECH OUTPUT: 'Middle",
+     "initial text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=9",
+     "SPEECH OUTPUT: 'text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=1",
+     "SPEECH OUTPUT: 'Given name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=5",
+     "SPEECH OUTPUT: 'initial text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=9",
+     "SPEECH OUTPUT: 'Surname text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=1",
+     "SPEECH OUTPUT: 'First name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=5",
+     "SPEECH OUTPUT: 'Middle",
+     "initial text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l', cursor=9",
+     "SPEECH OUTPUT: 'Last name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=1",
+     "SPEECH OUTPUT: 'First name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=5",
+     "SPEECH OUTPUT: 'Middle",
+     "initial text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=9",
+     "SPEECH OUTPUT: 'Last name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=13",
+     "SPEECH OUTPUT: 'text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=1",
+     "SPEECH OUTPUT: 'First name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=5",
+     "SPEECH OUTPUT: 'Middle",
+     "initial text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=9",
+     "SPEECH OUTPUT: 'Last name text '",]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=13",
+     "SPEECH OUTPUT: 'text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=1",
+     "SPEECH OUTPUT: 'First name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=5",
+     "SPEECH OUTPUT: 'Middle",
+     "initial text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=9",
+     "SPEECH OUTPUT: 'Last name text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l  $l  $l  $l'",
+     "     VISIBLE:  ' $l  $l  $l  $l', cursor=13",
+     "SPEECH OUTPUT: 'text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'bandaid graphic Image  $l'",
+     "     VISIBLE:  'bandaid graphic Image  $l', cursor=23",
+     "SPEECH OUTPUT: 'bandaid graphic text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  ' $l bandaid graphic redux Image'",
+     "     VISIBLE:  ' $l bandaid graphic redux Image', cursor=1",
+     "SPEECH OUTPUT: 'bandaid graphic redux text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'Magic disappearing text trick: tab to me and I disappear $l'",
+     "     VISIBLE:  'tab to me and I disappear $l', cursor=26",
+     "BRAILLE LINE:  'Magic disappearing text trick:  $l'",
+     "     VISIBLE:  ' $l', cursor=1",
+     "SPEECH OUTPUT: 'Magic disappearing text trick: text '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'Tell me a secret:  $l'",
+     "     VISIBLE:  'Tell me a secret:  $l', cursor=19",
+     "SPEECH OUTPUT: 'Tell me a secret: password '"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'I $l'",
+     "     VISIBLE:  'I $l', cursor=1",
+     "SPEECH OUTPUT: 'Tell me a little more about yourself: text I'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Tab"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+sequence.append(utils.AssertPresentationAction(
+    "Next form field", 
+    ["BRAILLE LINE:  'Type something Link  rather amusing Link  here:  $l'",
+     "     VISIBLE:  ' $l', cursor=1",
+     "SPEECH OUTPUT: 'Wrapping to top.'",
+     "SPEECH OUTPUT: 'Type something rather amusing here: text '"]))
+
+########################################################################
+# Move to the location bar by pressing Control+L.  When it has focus
+# type "about:blank" and press Return to restore the browser to the
+# conditions at the test's start.
+#
+sequence.append(KeyComboAction("<Control>l"))
+sequence.append(WaitForFocus("Location", acc_role=pyatspi.ROLE_ENTRY))
+
+sequence.append(TypeAction("about:blank"))
+sequence.append(KeyComboAction("Return"))
+
+sequence.append(WaitForDocLoad())
+
+# Just a little extra wait to let some events get through.
+#
+sequence.append(PauseAction(3000))
+
+sequence.start()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]