[orca] Fix for bug #638373 and bug #638210.
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca] Fix for bug #638373 and bug #638210.
- Date: Fri, 31 Dec 2010 00:58:43 +0000 (UTC)
commit c1988239443692e1d79c443715f2911c1adadf2b
Author: Joanmarie Diggs <joanmarie diggs gmail com>
Date: Thu Dec 30 19:56:33 2010 -0500
Fix for bug #638373 and bug #638210.
* Bug #638373 - Orca does not present all selected items in multi-
select lists in Gecko
* Bug #638210 - Gecko generators should use getSelectedChild()
rather than iterating through children and using isChildSelected()
.../scripts/toolkits/Gecko/braille_generator.py | 24 ++--
.../scripts/toolkits/Gecko/speech_generator.py | 23 ++--
...arch.py.hang => label_guess_bugzilla_search.py} | 21 +--
..._search.py.hang => line_nav_bugzilla_search.py} | 144 ++++++++--------
test/keystrokes/firefox/sayAll_bugzilla_search.py | 181 ++++++++++++++++++++
.../firefox/sayAll_bugzilla_search.py.hang | 179 -------------------
6 files changed, 283 insertions(+), 289 deletions(-)
---
diff --git a/src/orca/scripts/toolkits/Gecko/braille_generator.py b/src/orca/scripts/toolkits/Gecko/braille_generator.py
index 5a8380b..7a91e2c 100644
--- a/src/orca/scripts/toolkits/Gecko/braille_generator.py
+++ b/src/orca/scripts/toolkits/Gecko/braille_generator.py
@@ -32,7 +32,6 @@ __license__ = "LGPL"
import pyatspi
import orca.braille_generator as braille_generator
-import orca.orca_state as orca_state
from orca.orca_i18n import _ # for gettext support
@@ -221,18 +220,17 @@ class BrailleGenerator(braille_generator.BrailleGenerator):
def _generateFocusedItem(self, obj, **args):
result = []
role = args.get('role', obj.getRole())
- if role == pyatspi.ROLE_LIST:
- item = None
- selection = obj.querySelection()
- for i in xrange(obj.childCount):
- if selection.isChildSelected(i):
- item = obj[i]
- break
- item = item or obj[0]
- if item and (item != orca_state.locusOfFocus):
- name = self._generateName(item, **args)
- if name and name != self._generateLabel(obj, **args):
- result.extend(name)
+ if role != pyatspi.ROLE_LIST:
+ return result
+
+ s = obj.querySelection()
+ items = [s.getSelectedChild(i) for i in xrange(s.nSelectedChildren)]
+ if not items:
+ items.append(obj[0])
+ items = map(self._generateName, items)
+ for item in items:
+ result.extend(item)
+
return result
def generateBraille(self, obj, **args):
diff --git a/src/orca/scripts/toolkits/Gecko/speech_generator.py b/src/orca/scripts/toolkits/Gecko/speech_generator.py
index 348047d..4b004a8 100644
--- a/src/orca/scripts/toolkits/Gecko/speech_generator.py
+++ b/src/orca/scripts/toolkits/Gecko/speech_generator.py
@@ -311,18 +311,17 @@ class SpeechGenerator(speech_generator.SpeechGenerator):
def _generateFocusedItem(self, obj, **args):
result = []
role = args.get('role', obj.getRole())
- if role == pyatspi.ROLE_LIST:
- item = None
- selection = obj.querySelection()
- for i in xrange(obj.childCount):
- if selection.isChildSelected(i):
- item = obj[i]
- break
- item = item or obj[0]
- if item:
- name = self._generateName(item, **args)
- if name and name != self._generateLabel(obj, **args):
- result.extend(name)
+ if role != pyatspi.ROLE_LIST:
+ return result
+
+ s = obj.querySelection()
+ items = [s.getSelectedChild(i) for i in xrange(s.nSelectedChildren)]
+ if not items:
+ items.append(obj[0])
+ items = map(self._generateName, items)
+ for item in items:
+ result.extend(item)
+
return result
def _generateAncestors(self, obj, **args):
diff --git a/test/keystrokes/firefox/label_guess_bugzilla_search.py.hang b/test/keystrokes/firefox/label_guess_bugzilla_search.py
similarity index 96%
rename from test/keystrokes/firefox/label_guess_bugzilla_search.py.hang
rename to test/keystrokes/firefox/label_guess_bugzilla_search.py
index 5829273..96de182 100644
--- a/test/keystrokes/firefox/label_guess_bugzilla_search.py.hang
+++ b/test/keystrokes/firefox/label_guess_bugzilla_search.py
@@ -45,6 +45,7 @@ sequence.append(utils.AssertPresentationAction(
" VISIBLE: 'Home Image Bugzilla New bug · Br', cursor=1",
"BRAILLE LINE: 'Home Image Bugzilla New bug · Browse · Search · Reports · Account · Admin · Help Logged In joanmarie diggs gmail com | Log Out'",
" VISIBLE: 'Home Image Bugzilla New bug · Br', cursor=1",
+ "SPEECH OUTPUT: 'Home link image Bugzilla New bug link · Browse link · Search link · Reports link · Account link · Admin link · Help link Logged In joanmarie diggs gmail com | Log Out link'",
"SPEECH OUTPUT: 'Home link image'"]))
########################################################################
@@ -89,10 +90,9 @@ sequence.append(KeyComboAction("Tab"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"Next form field",
- ["KNOWN ISSUE - Something is making this test stall here."]))
-# ["BRAILLE LINE: 'Classification: Admin List'",
-# " VISIBLE: 'Classification: Admin List', cursor=17",
-# "SPEECH OUTPUT: 'Classification: Admin multi-select List with 8 items'"]))
+ ["BRAILLE LINE: 'Classification: Admin List'",
+ " VISIBLE: 'Classification: Admin List', cursor=17",
+ "SPEECH OUTPUT: 'Classification: Admin multi-select List with 8 items'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
@@ -100,10 +100,9 @@ sequence.append(KeyComboAction("Tab"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"Next form field",
- ["KNOWN ISSUE - Something is making this test stall here."]))
-# ["BRAILLE LINE: 'Product: accerciser List'",
-# " VISIBLE: 'Product: accerciser List', cursor=10",
-# "SPEECH OUTPUT: 'Product: accerciser multi-select List with 379 items'"]))
+ ["BRAILLE LINE: 'Product: accerciser List'",
+ " VISIBLE: 'Product: accerciser List', cursor=10",
+ "SPEECH OUTPUT: 'Product: accerciser multi-select List with 379 items'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
@@ -202,9 +201,9 @@ sequence.append(KeyComboAction("Tab"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"Next form field",
- ["BRAILLE LINE: 'Status: UNCONFIRMED List'",
- " VISIBLE: 'Status: UNCONFIRMED List', cursor=9",
- "SPEECH OUTPUT: 'Status: UNCONFIRMED multi-select List with 8 items'"]))
+ ["BRAILLE LINE: 'Status: UNCONFIRMED NEW ASSIGNED REOPENED NEEDINFO List'",
+ " VISIBLE: 'Status: UNCONFIRMED NEW ASSIGNED', cursor=9",
+ "SPEECH OUTPUT: 'Status: UNCONFIRMED NEW ASSIGNED REOPENED NEEDINFO multi-select List with 8 items'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
diff --git a/test/keystrokes/firefox/line_nav_bugzilla_search.py.hang b/test/keystrokes/firefox/line_nav_bugzilla_search.py
similarity index 90%
rename from test/keystrokes/firefox/line_nav_bugzilla_search.py.hang
rename to test/keystrokes/firefox/line_nav_bugzilla_search.py
index c987b5b..fb60ab3 100644
--- a/test/keystrokes/firefox/line_nav_bugzilla_search.py.hang
+++ b/test/keystrokes/firefox/line_nav_bugzilla_search.py
@@ -43,7 +43,7 @@ sequence.append(utils.AssertPresentationAction(
" VISIBLE: 'Home Image Bugzilla New bug · Br', cursor=1",
"BRAILLE LINE: 'Home Image Bugzilla New bug · Browse · Search · Reports · Account · Admin · Help Logged In joanmarie diggs gmail com | Log Out'",
" VISIBLE: 'Home Image Bugzilla New bug · Br', cursor=1",
- "SPEECH OUTPUT: 'Home link Image Bugzilla New bug link · Browse link · Search link · Reports link · Account link · Admin link · Help link Logged In joanmarie diggs gmail com | Log Out link'",
+ "SPEECH OUTPUT: 'Home link image Bugzilla New bug link · Browse link · Search link · Reports link · Account link · Admin link · Help link Logged In joanmarie diggs gmail com | Log Out link'",
"SPEECH OUTPUT: 'Home link image'"]))
########################################################################
@@ -101,19 +101,17 @@ sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"Line Down",
- ["KNOWN ISSUE - Something is making this test stall here."]))
-# ["BRAILLE LINE: 'accerciser List'",
-# " VISIBLE: 'accerciser List', cursor=1",
-# "SPEECH OUTPUT: 'accerciser multi-select List with 379 items'"]))
+ ["BRAILLE LINE: 'accerciser List'",
+ " VISIBLE: 'accerciser List', cursor=1",
+ "SPEECH OUTPUT: 'accerciser multi-select List with 379 items'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"Line Down",
- ["KNOWN ISSUE - Something is making this test stall here."]))
-# ["BRAILLE LINE: 'Component:'",
-# " VISIBLE: 'Component:', cursor=1",
-# "SPEECH OUTPUT: 'Component link :'"]))
+ ["BRAILLE LINE: 'Component:'",
+ " VISIBLE: 'Component:', cursor=1",
+ "SPEECH OUTPUT: 'Component link : column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -129,7 +127,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Version:'",
" VISIBLE: 'Version:', cursor=1",
- "SPEECH OUTPUT: 'Version:'"]))
+ "SPEECH OUTPUT: 'Version: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -145,7 +143,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Target Milestone:'",
" VISIBLE: 'Target Milestone:', cursor=1",
- "SPEECH OUTPUT: 'Target Milestone:'"]))
+ "SPEECH OUTPUT: 'Target Milestone: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -161,7 +159,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'AÂ Comment: contains the string Combo $l'",
" VISIBLE: 'AÂ Comment: contains the string C', cursor=1",
- "SPEECH OUTPUT: 'AÂ Comment: contains the string combo box text'"]))
+ "SPEECH OUTPUT: 'AÂ Comment: row header contains the string combo box text'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -169,7 +167,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Whiteboard: contains all of the words/strings Combo $l'",
" VISIBLE: 'Whiteboard: contains all of the ', cursor=1",
- "SPEECH OUTPUT: 'Whiteboard: contains all of the words/strings combo box text'"]))
+ "SPEECH OUTPUT: 'Whiteboard: row header contains all of the words/strings combo box text'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -177,7 +175,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Keywords: contains all of the keywords Combo $l'",
" VISIBLE: 'Keywords: contains all of the ke', cursor=1",
- "SPEECH OUTPUT: 'Keywords link : contains all of the keywords combo box text'"]))
+ "SPEECH OUTPUT: 'Keywords link : row header contains all of the keywords combo box text'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -193,15 +191,15 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Status:'",
" VISIBLE: 'Status:', cursor=1",
- "SPEECH OUTPUT: 'Status:'"]))
+ "SPEECH OUTPUT: 'Status: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"Line Down",
- ["BRAILLE LINE: 'UNCONFIRMED List'",
- " VISIBLE: 'UNCONFIRMED List', cursor=1",
- "SPEECH OUTPUT: 'UNCONFIRMED' voice=uppercase",
+ ["BRAILLE LINE: 'UNCONFIRMED NEW ASSIGNED REOPENED NEEDINFO List'",
+ " VISIBLE: 'UNCONFIRMED NEW ASSIGNED REOPENE', cursor=1",
+ "SPEECH OUTPUT: 'UNCONFIRMED NEW ASSIGNED REOPENED NEEDINFO' voice=uppercase",
"SPEECH OUTPUT: 'multi-select List with 8 items'"]))
sequence.append(utils.StartRecordingAction())
@@ -210,7 +208,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Resolution:'",
" VISIBLE: 'Resolution:', cursor=1",
- "SPEECH OUTPUT: 'Resolution:'"]))
+ "SPEECH OUTPUT: 'Resolution: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -227,7 +225,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Severity:'",
" VISIBLE: 'Severity:', cursor=1",
- "SPEECH OUTPUT: 'Severity:'"]))
+ "SPEECH OUTPUT: 'Severity: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -243,7 +241,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'Priority:'",
" VISIBLE: 'Priority:', cursor=1",
- "SPEECH OUTPUT: 'Priority:'"]))
+ "SPEECH OUTPUT: 'Priority: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -259,7 +257,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'OS:'",
" VISIBLE: 'OS:', cursor=1",
- "SPEECH OUTPUT: 'OS:'"]))
+ "SPEECH OUTPUT: 'OS: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -441,17 +439,18 @@ sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"Line Down",
- ["BRAILLE LINE: 'Only bugs changed between:'",
- " VISIBLE: 'Only bugs changed between:', cursor=1",
- "SPEECH OUTPUT: 'Only bugs changed between:'"]))
+ ["BRAILLE LINE: 'â?¢Only bugs changed between:'",
+ " VISIBLE: 'â?¢Only bugs changed between:', cursor=1",
+ "SPEECH OUTPUT: 'â?¢Only bugs changed between:'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"Line Down",
- ["BRAILLE LINE: ' $l and Now $l'",
+ ["BUG? - As with label guess, we're not guessing this label correctly",
+ "BRAILLE LINE: ' $l and Now $l'",
" VISIBLE: ' $l and Now $l', cursor=1",
- "SPEECH OUTPUT: 'Only bugs changed between: text and text Now ",
+ "SPEECH OUTPUT: 'Email and Numbering text and text Now ",
"'"]))
sequence.append(utils.StartRecordingAction())
@@ -466,9 +465,9 @@ sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"Line Down",
- ["BRAILLE LINE: 'where one or more of the following changed:'",
- " VISIBLE: 'where one or more of the followi', cursor=1",
- "SPEECH OUTPUT: 'where one or more of the following changed:'"]))
+ ["BRAILLE LINE: 'â?¢where one or more of the following changed:'",
+ " VISIBLE: 'â?¢where one or more of the follow', cursor=1",
+ "SPEECH OUTPUT: 'â?¢where one or more of the following changed:'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -482,9 +481,9 @@ sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"Line Down",
- ["BRAILLE LINE: 'and the new value was:'",
- " VISIBLE: 'and the new value was:', cursor=1",
- "SPEECH OUTPUT: 'and the new value was:'"]))
+ ["BRAILLE LINE: 'â?¢and the new value was:'",
+ " VISIBLE: 'â?¢and the new value was:', cursor=1",
+ "SPEECH OUTPUT: 'â?¢and the new value was:'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -492,7 +491,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
- "SPEECH OUTPUT: 'and the new value was: text'"]))
+ "SPEECH OUTPUT: 'Email and Numbering text'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -500,7 +499,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'GNOME version:'",
" VISIBLE: 'GNOME version:', cursor=1",
- "SPEECH OUTPUT: 'GNOME version:'"]))
+ "SPEECH OUTPUT: 'GNOME version: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -516,7 +515,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Down",
["BRAILLE LINE: 'GNOME target:'",
" VISIBLE: 'GNOME target:', cursor=1",
- "SPEECH OUTPUT: 'GNOME target:'"]))
+ "SPEECH OUTPUT: 'GNOME target: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
@@ -695,7 +694,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'GNOME target:'",
" VISIBLE: 'GNOME target:', cursor=1",
- "SPEECH OUTPUT: 'GNOME target:'"]))
+ "SPEECH OUTPUT: 'GNOME target: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -711,7 +710,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'GNOME version:'",
" VISIBLE: 'GNOME version:', cursor=1",
- "SPEECH OUTPUT: 'GNOME version:'"]))
+ "SPEECH OUTPUT: 'GNOME version: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -719,15 +718,15 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
- "SPEECH OUTPUT: 'and the new value was: text'",]))
+ "SPEECH OUTPUT: 'Email and Numbering text'",]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"Line Up",
- ["BRAILLE LINE: 'and the new value was:'",
- " VISIBLE: 'and the new value was:', cursor=1",
- "SPEECH OUTPUT: 'and the new value was:'"]))
+ ["BRAILLE LINE: 'â?¢and the new value was:'",
+ " VISIBLE: 'â?¢and the new value was:', cursor=1",
+ "SPEECH OUTPUT: 'â?¢and the new value was:'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -741,9 +740,9 @@ sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"Line Up",
- ["BRAILLE LINE: 'where one or more of the following changed:'",
- " VISIBLE: 'where one or more of the followi', cursor=1",
- "SPEECH OUTPUT: 'where one or more of the following changed:'"]))
+ ["BRAILLE LINE: 'â?¢where one or more of the following changed:'",
+ " VISIBLE: 'â?¢where one or more of the follow', cursor=1",
+ "SPEECH OUTPUT: 'â?¢where one or more of the following changed:'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -757,18 +756,19 @@ sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"Line Up",
- ["BRAILLE LINE: ' $l and Now $l'",
+ ["BUG? - As with label guess, we're not guessing this label correctly",
+ "BRAILLE LINE: ' $l and Now $l'",
" VISIBLE: ' $l and Now $l', cursor=1",
- "SPEECH OUTPUT: 'Only bugs changed between: text and text Now ",
+ "SPEECH OUTPUT: 'Email and Numbering text and text Now ",
"'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"Line Up",
- ["BRAILLE LINE: 'Only bugs changed between:'",
- " VISIBLE: 'Only bugs changed between:', cursor=1",
- "SPEECH OUTPUT: 'Only bugs changed between:'"]))
+ ["BRAILLE LINE: 'â?¢Only bugs changed between:'",
+ " VISIBLE: 'â?¢Only bugs changed between:', cursor=1",
+ "SPEECH OUTPUT: 'â?¢Only bugs changed between:'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -952,7 +952,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'OS:'",
" VISIBLE: 'OS:', cursor=1",
- "SPEECH OUTPUT: 'OS:'"]))
+ "SPEECH OUTPUT: 'OS: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -968,7 +968,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Priority:'",
" VISIBLE: 'Priority:', cursor=1",
- "SPEECH OUTPUT: 'Priority:'"]))
+ "SPEECH OUTPUT: 'Priority: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -984,7 +984,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Severity:'",
" VISIBLE: 'Severity:', cursor=1",
- "SPEECH OUTPUT: 'Severity:'"]))
+ "SPEECH OUTPUT: 'Severity: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1001,15 +1001,15 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Resolution:'",
" VISIBLE: 'Resolution:', cursor=1",
- "SPEECH OUTPUT: 'Resolution:'"]))
+ "SPEECH OUTPUT: 'Resolution: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"Line Up",
- ["BRAILLE LINE: 'UNCONFIRMED List'",
- " VISIBLE: 'UNCONFIRMED List', cursor=1",
- "SPEECH OUTPUT: 'UNCONFIRMED' voice=uppercase",
+ ["BRAILLE LINE: 'UNCONFIRMED NEW ASSIGNED REOPENED NEEDINFO List'",
+ " VISIBLE: 'UNCONFIRMED NEW ASSIGNED REOPENE', cursor=1",
+ "SPEECH OUTPUT: 'UNCONFIRMED NEW ASSIGNED REOPENED NEEDINFO' voice=uppercase",
"SPEECH OUTPUT: 'multi-select List with 8 items'"]))
sequence.append(utils.StartRecordingAction())
@@ -1018,7 +1018,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Status:'",
" VISIBLE: 'Status:', cursor=1",
- "SPEECH OUTPUT: 'Status:'"]))
+ "SPEECH OUTPUT: 'Status: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1034,7 +1034,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Keywords: contains all of the keywords Combo $l'",
" VISIBLE: 'Keywords: contains all of the ke', cursor=1",
- "SPEECH OUTPUT: 'Keywords link : contains all of the keywords combo box text'"]))
+ "SPEECH OUTPUT: 'Keywords link : row header contains all of the keywords combo box text'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1042,7 +1042,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Whiteboard: contains all of the words/strings Combo $l'",
" VISIBLE: 'Whiteboard: contains all of the ', cursor=1",
- "SPEECH OUTPUT: 'Whiteboard: contains all of the words/strings combo box text'"]))
+ "SPEECH OUTPUT: 'Whiteboard: row header contains all of the words/strings combo box text'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1050,7 +1050,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'AÂ Comment: contains the string Combo $l'",
" VISIBLE: 'AÂ Comment: contains the string C', cursor=1",
- "SPEECH OUTPUT: 'AÂ Comment: contains the string combo box text'"]))
+ "SPEECH OUTPUT: 'AÂ Comment: row header contains the string combo box text'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1066,7 +1066,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Target Milestone:'",
" VISIBLE: 'Target Milestone:', cursor=1",
- "SPEECH OUTPUT: 'Target Milestone:'"]))
+ "SPEECH OUTPUT: 'Target Milestone: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1082,7 +1082,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Version:'",
" VISIBLE: 'Version:', cursor=1",
- "SPEECH OUTPUT: 'Version:'"]))
+ "SPEECH OUTPUT: 'Version: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1098,7 +1098,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Component:'",
" VISIBLE: 'Component:', cursor=1",
- "SPEECH OUTPUT: 'Component link :'"]))
+ "SPEECH OUTPUT: 'Component link : column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1114,7 +1114,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Product:'",
" VISIBLE: 'Product:', cursor=1",
- "SPEECH OUTPUT: 'Product:'"]))
+ "SPEECH OUTPUT: 'Product: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1130,7 +1130,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Classification:'",
" VISIBLE: 'Classification:', cursor=1",
- "SPEECH OUTPUT: 'Classification:'"]))
+ "SPEECH OUTPUT: 'Classification: column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1138,7 +1138,7 @@ sequence.append(utils.AssertPresentationAction(
"Line Up",
["BRAILLE LINE: 'Summary: contains all of the words/strings Combo $l Search Button'",
" VISIBLE: 'Summary: contains all of the wor', cursor=1",
- "SPEECH OUTPUT: 'Summary: contains all of the words/strings combo box text Search button'"]))
+ "SPEECH OUTPUT: 'Summary: row header contains all of the words/strings combo box text Search button'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
@@ -1160,13 +1160,9 @@ sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"Line Up",
- ["BRAILLE LINE: 'Home Image Bugzilla'",
- " VISIBLE: 'Home Image Bugzilla', cursor=1",
- "BRAILLE LINE: 'Home Image Bugzilla New bug · Browse · Search · Reports · Account · Admin · Help Logged In joanmarie diggs gmail com | Log Out'",
- " VISIBLE: 'Home Image Bugzilla New bug', cursor=1",
- "SPEECH OUTPUT: 'Home link Image Bugzilla New bug link · Browse link · Search link · Reports link · Account link · Admin link · Help link Logged In joanmarie diggs gmail com | Log Out link'",
- "SPEECH OUTPUT: 'Home link image Bugzilla'"
- "SPEECH OUTPUT: Home link image'"]))
+ ["BRAILLE LINE: 'New bug · Browse · Search · Reports · Account · Admin · Help Logged In joanmarie diggs gmail com | Log Out'",
+ " VISIBLE: 'New bug · Browse · Search · Repo', cursor=1",
+ "SPEECH OUTPUT: 'New bug link · Browse link · Search link · Reports link · Account link · Admin link · Help link Logged In joanmarie diggs gmail com | Log Out link'"]))
########################################################################
# Move to the location bar by pressing Control+L. When it has focus
diff --git a/test/keystrokes/firefox/sayAll_bugzilla_search.py b/test/keystrokes/firefox/sayAll_bugzilla_search.py
new file mode 100644
index 0000000..006cf43
--- /dev/null
+++ b/test/keystrokes/firefox/sayAll_bugzilla_search.py
@@ -0,0 +1,181 @@
+# -*- coding: utf-8 -*-
+#!/usr/bin/python
+
+"""Test of sayAll output of Firefox on bugzilla's advanced search page."""
+
+from macaroon.playback import *
+import utils
+
+sequence = MacroSequence()
+
+########################################################################
+# We wait for the focus to be on a blank Firefox window.
+#
+sequence.append(WaitForWindowActivate(utils.firefoxFrameNames, None))
+
+########################################################################
+# Load the local "simple form" test case.
+#
+sequence.append(KeyComboAction("<Control>l"))
+sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_ENTRY))
+
+sequence.append(TypeAction(utils.htmlURLPrefix + "bugzilla-advanced.html"))
+sequence.append(KeyComboAction("Return"))
+
+sequence.append(WaitForDocLoad())
+
+sequence.append(WaitForFocus("Search for bugs",
+ acc_role=pyatspi.ROLE_DOCUMENT_FRAME))
+
+########################################################################
+# Press Orca+Right to get out of the focused entry, then Control+Home
+# to move to the top.
+#
+sequence.append(KeyPressAction(0, None, "KP_Insert"))
+sequence.append(KeyComboAction("Right"))
+sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("<Control>Home"))
+sequence.append(utils.AssertPresentationAction(
+ "Top of file",
+ ["BRAILLE LINE: 'Home Image Bugzilla New bug · Browse · Search · Reports · Account · Admin · Help Logged In joanmarie diggs gmail com | Log Out'",
+ " VISIBLE: 'Home Image Bugzilla New bug · Br', cursor=1",
+ "BRAILLE LINE: 'Home Image Bugzilla New bug · Browse · Search · Reports · Account · Admin · Help Logged In joanmarie diggs gmail com | Log Out'",
+ " VISIBLE: 'Home Image Bugzilla New bug · Br', cursor=1",
+ "SPEECH OUTPUT: 'Home link image Bugzilla New bug link · Browse link · Search link · Reports link · Account link · Admin link · Help link Logged In joanmarie diggs gmail com | Log Out link'",
+ "SPEECH OUTPUT: 'Home link image'"]))
+
+########################################################################
+# SayAll to the End.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("KP_Add"))
+sequence.append(utils.AssertPresentationAction(
+ "KP_Add to do a SayAll",
+ ["SPEECH OUTPUT: 'Home link image'",
+ "SPEECH OUTPUT: 'Bugzilla New bug link · Browse link · Search link · Reports link · Account link · Admin link · Help link Logged In joanmarie diggs gmail com | Log Out link'",
+ "SPEECH OUTPUT: 'Â '",
+ "SPEECH OUTPUT: 'Short Bug Search Form link'",
+ "SPEECH OUTPUT: 'Complicated Bug Search Form'",
+ "SPEECH OUTPUT: 'Â '",
+ "SPEECH OUTPUT: 'Give me some help link'",
+ "SPEECH OUTPUT: ' (reloads page.)'",
+ "SPEECH OUTPUT: 'Summary: row header'",
+ "SPEECH OUTPUT: 'contains all of the words/strings combo box'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: 'Search button'",
+ "SPEECH OUTPUT: 'Classification: column header'",
+ "SPEECH OUTPUT: 'Admin multi-select List with 8 items'",
+ "SPEECH OUTPUT: 'Product: column header'",
+ "SPEECH OUTPUT: 'accerciser multi-select List with 379 items'",
+ "SPEECH OUTPUT: 'Component link'",
+ "SPEECH OUTPUT: ': column header'",
+ "SPEECH OUTPUT: 'abiscan multi-select List with 1248 items'",
+ "SPEECH OUTPUT: 'Version: column header'",
+ "SPEECH OUTPUT: '0.0.1 multi-select List with 857 items'",
+ "SPEECH OUTPUT: 'Target Milestone: column header'",
+ "SPEECH OUTPUT: '--- multi-select List with 555 items'",
+ "SPEECH OUTPUT: 'AÂ Comment: row header'",
+ "SPEECH OUTPUT: 'contains the string combo box'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: 'Whiteboard: row header'",
+ "SPEECH OUTPUT: 'contains all of the words/strings combo box'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: 'Keywords link'",
+ "SPEECH OUTPUT: ': row header'",
+ "SPEECH OUTPUT: 'contains all of the keywords combo box'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: 'separator'",
+ "SPEECH OUTPUT: 'Status: column header'",
+ "SPEECH OUTPUT: 'UNCONFIRMED NEW ASSIGNED REOPENED NEEDINFO'",
+ "SPEECH OUTPUT: 'multi-select List with 8 items'",
+ "SPEECH OUTPUT: 'Resolution: column header'",
+ "SPEECH OUTPUT: 'FIXED'",
+ "SPEECH OUTPUT: 'multi-select List with 12 items'",
+ "SPEECH OUTPUT: 'Severity: column header'",
+ "SPEECH OUTPUT: 'blocker multi-select List with 7 items'",
+ "SPEECH OUTPUT: 'Priority: column header'",
+ "SPEECH OUTPUT: 'Immediate multi-select List with 5 items'",
+ "SPEECH OUTPUT: 'OS: column header'",
+ "SPEECH OUTPUT: 'All multi-select List with 21 items'",
+ "SPEECH OUTPUT: 'Email and Numbering'",
+ "SPEECH OUTPUT: 'Any one of:'",
+ "SPEECH OUTPUT: 'check box checked'",
+ "SPEECH OUTPUT: ' the bug assignee'",
+ "SPEECH OUTPUT: 'check box not checked'",
+ "SPEECH OUTPUT: ' the reporter'",
+ "SPEECH OUTPUT: 'check box not checked'",
+ "SPEECH OUTPUT: ' the QA contact'",
+ "SPEECH OUTPUT: 'check box not checked'",
+ "SPEECH OUTPUT: ' a CC list member'",
+ "SPEECH OUTPUT: 'check box not checked'",
+ "SPEECH OUTPUT: ' a commenter'",
+ "SPEECH OUTPUT: 'contains combo box'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: 'Any one of:'",
+ "SPEECH OUTPUT: 'check box checked'",
+ "SPEECH OUTPUT: ' the bug assignee'",
+ "SPEECH OUTPUT: 'check box checked'",
+ "SPEECH OUTPUT: ' the reporter'",
+ "SPEECH OUTPUT: 'check box checked'",
+ "SPEECH OUTPUT: ' the QA contact'",
+ "SPEECH OUTPUT: 'check box checked'",
+ "SPEECH OUTPUT: ' a CC list member'",
+ "SPEECH OUTPUT: 'check box not checked'",
+ "SPEECH OUTPUT: ' a commenter'",
+ "SPEECH OUTPUT: 'contains combo box'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: 'separator'",
+ "SPEECH OUTPUT: 'Only include combo box'",
+ "SPEECH OUTPUT: 'bugs numbered:'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: '(comma-separated list)'",
+ "SPEECH OUTPUT: 'Bug Changes'",
+ "SPEECH OUTPUT: 'â?¢Only bugs changed between:'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: ' and text Now ",
+ "(YYYY-MM-DD or relative dates)'",
+ "SPEECH OUTPUT: 'â?¢where one or more of the following changed:'",
+ "SPEECH OUTPUT: '[Bug creation] multi-select List with 26 items'",
+ "SPEECH OUTPUT: 'â?¢and the new value was:'",
+ "SPEECH OUTPUT: 'text'",
+ "SPEECH OUTPUT: 'GNOME version: column header'",
+ "SPEECH OUTPUT: 'Unspecified multi-select List with 14 items'",
+ "SPEECH OUTPUT: 'GNOME target: column header'",
+ "SPEECH OUTPUT: 'Unspecified multi-select List with 12 items'",
+ "SPEECH OUTPUT: 'Sort results by: Reuse same sort as last time combo box'",
+ "SPEECH OUTPUT: 'Search button'",
+ "SPEECH OUTPUT: 'Â Â Â check box not checked and remember these as my default search options'",
+ "SPEECH OUTPUT: 'separator'",
+ "SPEECH OUTPUT: 'Advanced Searching Using Boolean Charts:'",
+ "SPEECH OUTPUT: 'check box not checked'",
+ "SPEECH OUTPUT: ' Not (negate this whole chart)'",
+ "SPEECH OUTPUT: '--- combo box'",
+ "SPEECH OUTPUT: '--- combo box text'",
+ "SPEECH OUTPUT: 'Or button'",
+ "SPEECH OUTPUT: 'And button'",
+ "SPEECH OUTPUT: '      Add another boolean chart button      '",
+ "SPEECH OUTPUT: 'separator'",
+ "SPEECH OUTPUT: 'Saved Searches: My Bugs and Patches link | All Orca link | Firefox link | open orca link | Open RFEs link'"]))
+
+########################################################################
+# 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(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.append(utils.AssertionSummaryAction())
+
+sequence.start()
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]