orca r4435 - in trunk: . src/orca test/keystrokes/firefox



Author: joanied
Date: Mon Jan 19 16:32:41 2009
New Revision: 4435
URL: http://svn.gnome.org/viewvc/orca?rev=4435&view=rev

Log:
* src/orca/structural_navigation.py:
  test/keystrokes/firefox/html_struct_nav_bug_567984.py: (new)
  Partial fix for bug #567984 -Structural navigation needs to
  consider text within the document frame.


Added:
   trunk/test/keystrokes/firefox/html_struct_nav_bug_567984.py
Modified:
   trunk/ChangeLog
   trunk/src/orca/structural_navigation.py

Modified: trunk/src/orca/structural_navigation.py
==============================================================================
--- trunk/src/orca/structural_navigation.py	(original)
+++ trunk/src/orca/structural_navigation.py	Mon Jan 19 16:32:41 2009
@@ -821,6 +821,14 @@
                                                                    arg)
             except:
                 debug.printException(debug.LEVEL_SEVERE)
+            else:
+                # If the document frame itself contains content and that is
+                # our current object, querying the collection interface will
+                # result in our starting at the top when looking for the next
+                # object rather than the current caret offset. See bug 567984.
+                #
+                if next and self._script.isSameObject(obj, document):
+                    criteria = None
 
         if criteria:
             try:

Added: trunk/test/keystrokes/firefox/html_struct_nav_bug_567984.py
==============================================================================
--- (empty file)
+++ trunk/test/keystrokes/firefox/html_struct_nav_bug_567984.py	Mon Jan 19 16:32:41 2009
@@ -0,0 +1,278 @@
+# -*- coding: utf-8 -*-
+#!/usr/bin/python
+
+"""Test of table cell navigation output of Firefox. 
+"""
+
+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 + "bug-567984.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(
+    "1. Top of file",
+    ["BRAILLE LINE:  'Index VakbarÃt HÃrportÃl h1'",
+     "     VISIBLE:  'Index VakbarÃt HÃrportÃl h1', cursor=1",
+     "SPEECH OUTPUT: 'Index VakbarÃt HÃrportÃl heading level 1'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "2. h",
+    ["BRAILLE LINE:  'Legfrissebb hÃrek h2'",
+     "     VISIBLE:  'Legfrissebb hÃrek h2', cursor=1",
+     "SPEECH OUTPUT: 'Legfrissebb hÃrek heading level 2'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "3. h",
+    ["BRAILLE LINE:  'Izrael bejelentette az  h3'",
+     "     VISIBLE:  'Izrael bejelentette az  h3', cursor=1",
+     "SPEECH OUTPUT: 'Izrael bejelentette az ",
+     "egyoldalà tÃzszÃnetet link heading level 3'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "4. h",
+    ["BRAILLE LINE:  'VideÃk a Hudsonba zuhanà repÃlÃrÃl h3'",
+     "     VISIBLE:  'VideÃk a Hudsonba zuhanà repÃlÃr', cursor=1",
+     "SPEECH OUTPUT: 'VideÃk a Hudsonba zuhanà repÃlÃrÃl link heading level 3'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "5. h",
+    ["BRAILLE LINE:  'Ãjabb pÃnzÃgyi guru tÃnt el, pÃnzzel egyÃtt h3'",
+     "     VISIBLE:  'Ãjabb pÃnzÃgyi guru tÃnt el, pÃn', cursor=1",
+     "SPEECH OUTPUT: 'Ãjabb pÃnzÃgyi guru tÃnt el, pÃnzzel egyÃtt link heading level 3'"]))
+
+########################################################################
+# Down Arrow to move to some text in the document frame
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "6. Down",
+    ["BRAILLE LINE:  'A 75 Ãves Arthur NadeltÃl tÃbb szÃzmillià dollÃr kÃvetelnÃnek az Ãgyfelei, de mÃg a fÃrfit sem talÃljÃk.'",
+     "     VISIBLE:  'A 75 Ãves Arthur NadeltÃl tÃbb s', cursor=1",
+     "SPEECH OUTPUT: 'A 75 Ãves Arthur NadeltÃl tÃbb szÃzmillià dollÃr kÃvetelnÃnek az Ãgyfelei, de mÃg a fÃrfit sem talÃljÃk.'"]))
+
+########################################################################
+# Down Arrow to move to some text in the document frame
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "7. Down",
+    ["BRAILLE LINE:  '1150 embert utcÃra tesz a pÃcsi Elcoteq h3'",
+     "     VISIBLE:  '1150 embert utcÃra tesz a pÃcsi ', cursor=1",
+     "SPEECH OUTPUT: '1150 embert utcÃra tesz a pÃcsi Elcoteq link heading level 3'"]))
+
+########################################################################
+# H to move to the next heading. It should NOT be the first heading.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "8. h",
+    ["BRAILLE LINE:  'Hamarosan Ãjraindul a gÃzszÃllÃtÃs h3'",
+     "     VISIBLE:  'Hamarosan Ãjraindul a gÃzszÃllÃt', cursor=1",
+     "SPEECH OUTPUT: 'Hamarosan Ãjraindul a gÃzszÃllÃtÃs link heading level 3'"]))
+
+########################################################################
+# 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()
+# -*- coding: utf-8 -*-
+#!/usr/bin/python
+
+"""Test of table cell navigation output of Firefox. 
+"""
+
+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 + "bug-567984.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(
+    "1. Top of file",
+    ["BRAILLE LINE:  'Index VakbarÃt HÃrportÃl h1'",
+     "     VISIBLE:  'Index VakbarÃt HÃrportÃl h1', cursor=1",
+     "SPEECH OUTPUT: 'Index VakbarÃt HÃrportÃl heading level 1'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "2. h",
+    ["BRAILLE LINE:  'Legfrissebb hÃrek h2'",
+     "     VISIBLE:  'Legfrissebb hÃrek h2', cursor=1",
+     "SPEECH OUTPUT: 'Legfrissebb hÃrek heading level 2'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "3. h",
+    ["BRAILLE LINE:  'Izrael bejelentette az  h3'",
+     "     VISIBLE:  'Izrael bejelentette az  h3', cursor=1",
+     "SPEECH OUTPUT: 'Izrael bejelentette az ",
+     "egyoldalà tÃzszÃnetet link heading level 3'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "4. h",
+    ["BRAILLE LINE:  'VideÃk a Hudsonba zuhanà repÃlÃrÃl h3'",
+     "     VISIBLE:  'VideÃk a Hudsonba zuhanà repÃlÃr', cursor=1",
+     "SPEECH OUTPUT: 'VideÃk a Hudsonba zuhanà repÃlÃrÃl link heading level 3'"]))
+
+########################################################################
+# H to move amongst headings
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "5. h",
+    ["BRAILLE LINE:  'Ãjabb pÃnzÃgyi guru tÃnt el, pÃnzzel egyÃtt h3'",
+     "     VISIBLE:  'Ãjabb pÃnzÃgyi guru tÃnt el, pÃn', cursor=1",
+     "SPEECH OUTPUT: 'Ãjabb pÃnzÃgyi guru tÃnt el, pÃnzzel egyÃtt link heading level 3'"]))
+
+########################################################################
+# Down Arrow to move to some text in the document frame
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "6. Down",
+    ["BRAILLE LINE:  'A 75 Ãves Arthur NadeltÃl tÃbb szÃzmillià dollÃr kÃvetelnÃnek az Ãgyfelei, de mÃg a fÃrfit sem talÃljÃk.'",
+     "     VISIBLE:  'A 75 Ãves Arthur NadeltÃl tÃbb s', cursor=1",
+     "SPEECH OUTPUT: 'A 75 Ãves Arthur NadeltÃl tÃbb szÃzmillià dollÃr kÃvetelnÃnek az Ãgyfelei, de mÃg a fÃrfit sem talÃljÃk.'"]))
+
+########################################################################
+# Down Arrow to move to some text in the document frame
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "7. Down",
+    ["BRAILLE LINE:  '1150 embert utcÃra tesz a pÃcsi Elcoteq h3'",
+     "     VISIBLE:  '1150 embert utcÃra tesz a pÃcsi ', cursor=1",
+     "SPEECH OUTPUT: '1150 embert utcÃra tesz a pÃcsi Elcoteq link heading level 3'"]))
+
+########################################################################
+# H to move to the next heading. It should NOT be the first heading.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("h"))
+sequence.append(utils.AssertPresentationAction(
+    "8. h",
+    ["BRAILLE LINE:  'Hamarosan Ãjraindul a gÃzszÃllÃtÃs h3'",
+     "     VISIBLE:  'Hamarosan Ãjraindul a gÃzszÃllÃt', cursor=1",
+     "SPEECH OUTPUT: 'Hamarosan Ãjraindul a gÃzszÃllÃtÃs link heading level 3'"]))
+
+########################################################################
+# 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]