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



Author: joanied
Date: Mon Feb 18 23:49:48 2008
New Revision: 3597
URL: http://svn.gnome.org/viewvc/orca?rev=3597&view=rev

Log:
New regression tests.


Added:
   trunk/test/html/heading-section.html
   trunk/test/html/table-cell-links.html
   trunk/test/html/two-combos-on-line.html
   trunk/test/keystrokes/firefox/line_nav_heading_section.py
   trunk/test/keystrokes/firefox/line_nav_table_cell_links.py
Modified:
   trunk/ChangeLog

Added: trunk/test/html/heading-section.html
==============================================================================
--- (empty file)
+++ trunk/test/html/heading-section.html	Mon Feb 18 23:49:48 2008
@@ -0,0 +1,15 @@
+<!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
+<html><head>
+
+
+  <title>HTML test page</title>
+</head><body>
+<h1>Heading 1.</h1>
+<h1>Heading 2.</h1>
+<div>sect 1<h1>Heading 3.</h1></div>
+<div>sect 2<h1>Heading 4.</h1><div>sect 3<h1>Heading 5.</h1></div></div>
+<h1>Heading 6.</h1>
+
+
+
+</body></html>
\ No newline at end of file

Added: trunk/test/html/table-cell-links.html
==============================================================================
--- (empty file)
+++ trunk/test/html/table-cell-links.html	Mon Feb 18 23:49:48 2008
@@ -0,0 +1,22 @@
+<html>
+<head>
+<title>Table Cell Links</title>
+</head>
+<body>
+<p>Here are some links</p>
+<table>
+<tbody>
+<tr>
+<td>
+<b>HTML Tags</b><br><br>
+<a target="_top" href="tags/tag_comment.asp">&lt;!--&gt;</a><br>
+<a target="_top" href="tags/tag_doctype.asp">&lt;!DOCTYPE&gt;</a><br>
+<a target="_top" href="tags/tag_a.asp">&lt;a&gt;</a><br>
+<a target="_top" href="tags/tag_abbr.asp">&lt;abbr&gt;</a><br>
+<a target="_top" href="tags/tag_acronym.asp">&lt;acronym&gt;</a><br>
+</td>
+</tr>
+</tbody>
+</table>
+</body>
+</html>

Added: trunk/test/html/two-combos-on-line.html
==============================================================================
--- (empty file)
+++ trunk/test/html/two-combos-on-line.html	Mon Feb 18 23:49:48 2008
@@ -0,0 +1,38 @@
+<html><head>
+<meta http-equiv="content-type" content="text/html; charset=UTF-8">
+
+<title>several combo boxes on one line</title>
+</head><body>
+<form>
+<legend>This is the form legend.</legend><br>
+<select name="day">
+<option>please select day</option>
+<option>mon</option>
+<option>tue</option>
+<option>wed</option>
+<option>thu</option>
+<option>fri</option>
+<option>sat</option>
+<option>sun</option>
+</select>
+
+<select name="month">
+<option>please select month</option>
+<option>jan</option>
+<option>feb</option>
+<option>mar</option>
+<option>apr</option>
+<option>may</option>
+<option>jun</option>
+<option>jul</option>
+<option>aug</option>
+<option>sep</option>
+<option>oct</option>
+<option>nov</option>
+<option>dec</option>
+</select>
+<br>
+<input type="submit">
+</form>
+
+</body></html>

Added: trunk/test/keystrokes/firefox/line_nav_heading_section.py
==============================================================================
--- (empty file)
+++ trunk/test/keystrokes/firefox/line_nav_heading_section.py	Mon Feb 18 23:49:48 2008
@@ -0,0 +1,207 @@
+# -*- coding: utf-8 -*-
+#!/usr/bin/python
+
+"""Test of line navigation output of Firefox on a page with headings
+in sections.
+"""
+
+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 + "heading-section.html"))
+sequence.append(KeyComboAction("Return"))
+
+sequence.append(WaitForDocLoad())
+
+sequence.append(WaitForFocus("HTML test page",
+                             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:  'Heading 1. h1'",
+     "     VISIBLE:  'Heading 1. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 1. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+########################################################################
+# Down Arrow.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'Heading 2. h1'",
+     "     VISIBLE:  'Heading 2. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 2. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'sect 1'",
+     "     VISIBLE:  'sect 1', cursor=1",
+     "SPEECH OUTPUT: 'sect 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'Heading 3. h1'",
+     "     VISIBLE:  'Heading 3. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 3. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'sect 2'",
+     "     VISIBLE:  'sect 2', cursor=1",
+     "SPEECH OUTPUT: 'sect 2'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'Heading 4. h1'",
+     "     VISIBLE:  'Heading 4. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 4. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'sect 3'",
+     "     VISIBLE:  'sect 3', cursor=1",
+     "SPEECH OUTPUT: 'sect 3'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'Heading 5. h1'",
+     "     VISIBLE:  'Heading 5. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 5. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'Heading 6. h1'",
+     "     VISIBLE:  'Heading 6. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 6. heading  '",
+     "SPEECH OUTPUT: 'level 1'",]))
+
+########################################################################
+# Up Arrow.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'Heading 5. h1'",
+     "     VISIBLE:  'Heading 5. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 5. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'sect 3'",
+     "     VISIBLE:  'sect 3', cursor=1",
+     "SPEECH OUTPUT: 'sect 3'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'Heading 4. h1'",
+     "     VISIBLE:  'Heading 4. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 4. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'sect 2'",
+     "     VISIBLE:  'sect 2', cursor=1",
+     "SPEECH OUTPUT: 'sect 2'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'Heading 3. h1'",
+     "     VISIBLE:  'Heading 3. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 3. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'sect 1'",
+     "     VISIBLE:  'sect 1', cursor=1",
+     "SPEECH OUTPUT: 'sect 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'Heading 2. h1'",
+     "     VISIBLE:  'Heading 2. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 2. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'Heading 1. h1'",
+     "     VISIBLE:  'Heading 1. h1', cursor=1",
+     "SPEECH OUTPUT: 'Heading 1. heading  '",
+     "SPEECH OUTPUT: 'level 1'"]))
+
+########################################################################
+# 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.append(utils.AssertionSummaryAction())
+
+sequence.start()

Added: trunk/test/keystrokes/firefox/line_nav_table_cell_links.py
==============================================================================
--- (empty file)
+++ trunk/test/keystrokes/firefox/line_nav_table_cell_links.py	Mon Feb 18 23:49:48 2008
@@ -0,0 +1,168 @@
+# -*- coding: utf-8 -*-
+#!/usr/bin/python
+
+"""Test of line navigation output of Firefox on a page with links
+in a table cell with line breaks.
+"""
+
+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 + "table-cell-links.html"))
+sequence.append(KeyComboAction("Return"))
+
+sequence.append(WaitForDocLoad())
+
+sequence.append(WaitForFocus("Table Cell Links",
+                             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 links'",
+     "     VISIBLE:  'Here are some links', cursor=1",
+     "SPEECH OUTPUT: 'Here are some links'"]))
+
+########################################################################
+# Down Arrow.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  'HTML Tags'",
+     "     VISIBLE:  'HTML Tags', cursor=1",
+     "SPEECH OUTPUT: 'HTML Tags",
+     "'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  '<!--> Link'",
+     "     VISIBLE:  '<!--> Link', cursor=1",
+     "SPEECH OUTPUT: '<!--> link'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  '<!DOCTYPE> Link'",
+     "     VISIBLE:  '<!DOCTYPE> Link', cursor=1",
+     "SPEECH OUTPUT: '<!DOCTYPE> link'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  '<a> Link '",
+     "     VISIBLE:  '<a> Link ', cursor=1",
+     "SPEECH OUTPUT: '<a> link ",
+     "'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  '<abbr> Link'",
+     "     VISIBLE:  '<abbr> Link', cursor=1",
+     "SPEECH OUTPUT: '<abbr> link'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Down"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Down",
+    ["BRAILLE LINE:  '<acronym> Link'",
+     "     VISIBLE:  '<acronym> Link', cursor=1",
+     "SPEECH OUTPUT: '<acronym> link'"]))
+
+########################################################################
+# Up Arrow.
+#
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  '<abbr> Link'",
+     "     VISIBLE:  '<abbr> Link', cursor=1",
+     "SPEECH OUTPUT: '<abbr> link'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  '<a> Link '",
+     "     VISIBLE:  '<a> Link ', cursor=1",
+     "SPEECH OUTPUT: '<a> link ",
+     "'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  '<!DOCTYPE> Link'",
+     "     VISIBLE:  '<!DOCTYPE> Link', cursor=1",
+     "SPEECH OUTPUT: '<!DOCTYPE> link'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  '<!--> Link'",
+     "     VISIBLE:  '<!--> Link', cursor=1",
+     "SPEECH OUTPUT: '<!--> link'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'HTML Tags'",
+     "     VISIBLE:  'HTML Tags', cursor=1",
+     "SPEECH OUTPUT: 'HTML Tags",
+     "'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Up"))
+sequence.append(utils.AssertPresentationAction(
+    "Line Up",
+    ["BRAILLE LINE:  'Here are some links'",
+     "     VISIBLE:  'Here are some links', cursor=1",
+     "SPEECH OUTPUT: 'Here are some links'"]))
+
+########################################################################
+# 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.append(utils.AssertionSummaryAction())
+
+sequence.start()



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