Initial commit, very few changes from orca 45. Added xfce4-notification daemon support.

This commit is contained in:
Storm Dragon
2024-10-16 17:06:34 -04:00
parent cef8363cfd
commit a523205ac2
1447 changed files with 1537893 additions and 2 deletions

View File

@ -0,0 +1,78 @@
#!/usr/bin/python
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("<Shift>F10"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"1. Review current line",
["BRAILLE LINE: 'Cut $l'",
" VISIBLE: 'Cut $l', cursor=1",
"SPEECH OUTPUT: 'Cut'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_7"))
sequence.append(utils.AssertPresentationAction(
"2. Review previous line",
[""]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"3. Review next line",
["BRAILLE LINE: 'Copy $l'",
" VISIBLE: 'Copy $l', cursor=1",
"SPEECH OUTPUT: 'Copy'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"4. Review next line",
["BRAILLE LINE: 'Paste $l'",
" VISIBLE: 'Paste $l', cursor=1",
"SPEECH OUTPUT: 'Paste'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"5. Review next line",
["BRAILLE LINE: 'Delete $l'",
" VISIBLE: 'Delete $l', cursor=1",
"SPEECH OUTPUT: 'Delete'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"6. Review next line",
["BRAILLE LINE: 'separator $l'",
" VISIBLE: 'separator $l', cursor=1",
"SPEECH OUTPUT: 'separator'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"7. Review next line",
["BRAILLE LINE: 'Select All $l'",
" VISIBLE: 'Select All $l', cursor=1",
"SPEECH OUTPUT: 'Select All'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"8. Review next line",
[""]))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,75 @@
#!/usr/bin/python
"""Test of learn mode."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Printing"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("h"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(TypeAction("f"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"1. Orca command: check text attributes",
["BRAILLE LINE: 'Reads the attributes associated with the current text character.'",
" VISIBLE: 'Reads the attributes associated ', cursor=0",
"SPEECH OUTPUT: 'insert '",
"SPEECH OUTPUT: 'f '",
"SPEECH OUTPUT: 'Reads the attributes associated with the current text character.' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(TypeAction(" "))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"2. Orca command: bring up preferences",
["BRAILLE LINE: 'Learn mode. Press escape to exit.'",
" VISIBLE: 'Learn mode. Press escape to exi', cursor=0",
"BRAILLE LINE: 'Displays the preferences configuration dialog.'",
" VISIBLE: 'Displays the preferences configu', cursor=0",
"SPEECH OUTPUT: 'insert '",
"SPEECH OUTPUT: 'space '",
"SPEECH OUTPUT: 'Displays the preferences configuration dialog.' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"3. Orca command: flat review current word",
["BRAILLE LINE: 'Learn mode. Press escape to exit.'",
" VISIBLE: 'Learn mode. Press escape to exi', cursor=0",
"BRAILLE LINE: 'Speaks the current flat review item or word.'",
" VISIBLE: 'Speaks the current flat review i', cursor=0",
"SPEECH OUTPUT: 'begin '",
"SPEECH OUTPUT: 'Speaks the current flat review item or word.' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(TypeAction("5"))
sequence.append(utils.AssertPresentationAction(
"4. Regular typing command",
["BRAILLE LINE: 'Learn mode. Press escape to exit.'",
" VISIBLE: 'Learn mode. Press escape to exi', cursor=0",
"SPEECH OUTPUT: '5 '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Escape"))
sequence.append(utils.AssertPresentationAction(
"5. Exit learn mode",
["BRAILLE LINE: 'Exiting learn mode.'",
" VISIBLE: 'Exiting learn mode.', cursor=0",
"SPEECH OUTPUT: 'escape '",
"SPEECH OUTPUT: 'Exiting learn mode.' voice=system"]))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,41 @@
#!/usr/bin/python
"""Test of menu accelerator label output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Alt>p"))
sequence.append(utils.AssertPresentationAction(
"1. Initial menu and menu item",
["BRAILLE LINE: 'gtk-demo application Application Window frame Preferences menu'",
" VISIBLE: 'Preferences menu', cursor=1",
"BRAILLE LINE: 'gtk-demo application Application Window frame Color menu'",
" VISIBLE: 'Color menu', cursor=1",
"SPEECH OUTPUT: 'Preferences menu.'",
"SPEECH OUTPUT: 'Color menu.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. Where Am I",
["BRAILLE LINE: 'gtk-demo application Application Window frame Color menu'",
" VISIBLE: 'Color menu', cursor=1",
"SPEECH OUTPUT: 'Preferences menu'",
"SPEECH OUTPUT: 'Color menu.'",
"SPEECH OUTPUT: '1 of 4.'",
"SPEECH OUTPUT: 'C'"]))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,70 @@
#!/usr/bin/python
"""Test of presentation of dialogs and alerts."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Dialog and Message Boxes"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("space"))
sequence.append(utils.AssertPresentationAction(
"1. Information alert",
["BRAILLE LINE: 'gtk-demo application Information alert'",
" VISIBLE: 'Information alert', cursor=1",
"BRAILLE LINE: 'gtk-demo application Information alert OK push button'",
" VISIBLE: 'OK push button', cursor=1",
"SPEECH OUTPUT: 'Information alert.'",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: 1'",
"SPEECH OUTPUT: 'OK push button'"]))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("Testing"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("Again"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Alt>i"))
sequence.append(utils.AssertPresentationAction(
"2. Entry 1",
["BRAILLE LINE: 'gtk-demo application Interactive Dialog dialog'",
" VISIBLE: 'Interactive Dialog dialog', cursor=1",
"BRAILLE LINE: 'gtk-demo application Interactive Dialog dialog Entry 1 Testing $l'",
" VISIBLE: 'Entry 1 Testing $l', cursor=16",
"SPEECH OUTPUT: 'Interactive Dialog'",
"SPEECH OUTPUT: 'Entry 1 text.'",
"SPEECH OUTPUT: 'Testing selected'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"3. Entry 2",
["BRAILLE LINE: 'gtk-demo application Interactive Dialog dialog Entry 2 Again $l'",
" VISIBLE: 'Entry 2 Again $l', cursor=14",
"BRAILLE LINE: 'gtk-demo application Interactive Dialog dialog Entry 2 Again $l'",
" VISIBLE: 'Entry 2 Again $l', cursor=14",
"SPEECH OUTPUT: 'Entry 2 text.'",
"SPEECH OUTPUT: 'Again selected'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"4. Title bar",
["BRAILLE LINE: 'Interactive Dialog'",
" VISIBLE: 'Interactive Dialog', cursor=0",
"SPEECH OUTPUT: 'Interactive Dialog'"]))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,76 @@
#!/usr/bin/python
"""Test of checkbox output."""
from macaroon.playback import *
sequence = MacroSequence()
import utils
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Paned Widgets"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("<Shift>ISO_Left_Tab"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"1. Tab to first checkbox",
["BRAILLE LINE: 'gtk-demo application Panes frame Horizontal panel < > Resize check box'",
" VISIBLE: '< > Resize check box', cursor=1",
"SPEECH OUTPUT: 'Horizontal panel.'",
"SPEECH OUTPUT: 'Resize check box not checked.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. Where Am I",
["BRAILLE LINE: 'gtk-demo application Panes frame Horizontal panel < > Resize check box'",
" VISIBLE: '< > Resize check box', cursor=1",
"SPEECH OUTPUT: 'Horizontal Resize check box not checked.'",
"SPEECH OUTPUT: 'Alt+R'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(TypeAction(" "))
sequence.append(utils.AssertPresentationAction(
"3. Toggle its state",
["BRAILLE LINE: 'gtk-demo application Panes frame Horizontal panel <x> Resize check box'",
" VISIBLE: '<x> Resize check box', cursor=1",
"SPEECH OUTPUT: 'checked'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"4. Where Am I",
["BRAILLE LINE: 'gtk-demo application Panes frame Horizontal panel <x> Resize check box'",
" VISIBLE: '<x> Resize check box', cursor=1",
"SPEECH OUTPUT: 'Horizontal Resize check box checked.'",
"SPEECH OUTPUT: 'Alt+R'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(TypeAction(" "))
sequence.append(utils.AssertPresentationAction(
"5. Toggle its state back",
["BRAILLE LINE: 'gtk-demo application Panes frame Horizontal panel < > Resize check box'",
" VISIBLE: '< > Resize check box', cursor=1",
"SPEECH OUTPUT: 'not checked'"]))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"6. Tab to first checkbox in next panel",
["BRAILLE LINE: 'gtk-demo application Panes frame Vertical panel < > Resize check box'",
" VISIBLE: '< > Resize check box', cursor=1",
"SPEECH OUTPUT: 'Vertical panel.'",
"SPEECH OUTPUT: 'Resize check box not checked.'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,57 @@
#!/usr/bin/python
"""Test of check menu item output."""
from macaroon.playback import *
sequence = MacroSequence()
import utils
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Alt>p"))
sequence.append(KeyComboAction("Down"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"1. Arrow to check menu item - checked",
["BRAILLE LINE: 'gtk-demo application Application Window frame <x> Bold check menu item(Ctrl+B)'",
" VISIBLE: '<x> Bold check menu item(Ctrl+B)', cursor=1",
"SPEECH OUTPUT: 'Bold check menu item checked Ctrl+B.'"]))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("<Alt>p"))
sequence.append(KeyComboAction("Down"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"2. Arrow to check menu item - not checked",
["BRAILLE LINE: 'gtk-demo application Application Window frame < > Bold check menu item(Ctrl+B)'",
" VISIBLE: '< > Bold check menu item(Ctrl+B)', cursor=1",
"SPEECH OUTPUT: 'Bold check menu item not checked Ctrl+B.'"]))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("<Alt>p"))
sequence.append(KeyComboAction("Down"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"3. Arrow to check menu item - checked",
["BRAILLE LINE: 'gtk-demo application Application Window frame <x> Bold check menu item(Ctrl+B)'",
" VISIBLE: '<x> Bold check menu item(Ctrl+B)', cursor=1",
"SPEECH OUTPUT: 'Bold check menu item checked Ctrl+B.'"]))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,115 @@
#!/usr/bin/python
"""Test of column header output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("End"))
sequence.append(KeyComboAction("Up"))
sequence.append(KeyComboAction("<Shift>Right"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>ISO_Left_Tab"))
sequence.append(utils.AssertPresentationAction(
"1. Bug number column header",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Bug number table column header'",
" VISIBLE: 'Bug number table column header', cursor=1",
"SPEECH OUTPUT: 'Bug number table column header not selected'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"2. Severity column header",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Severity table column header'",
" VISIBLE: 'Severity table column header', cursor=1",
"SPEECH OUTPUT: 'Severity table column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"3. Description column header",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Description table column header'",
" VISIBLE: 'Description table column header', cursor=1",
"SPEECH OUTPUT: 'Description table column header'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"4. Enter table",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Description column header < > Fixed? 60482 Normal scrollable notebooks and hidden tabs '",
" VISIBLE: 'scrollable notebooks and hidden ', cursor=1",
"BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Fixed? column header < > Fixed? 60482 Normal scrollable notebooks and hidden tabs '",
" VISIBLE: '< > Fixed? 60482 Normal scrollab', cursor=1",
"SPEECH OUTPUT: 'Fixed?'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: '60482.'",
"SPEECH OUTPUT: 'Normal.'",
"SPEECH OUTPUT: 'scrollable notebooks and hidden tabs.'",
"SPEECH OUTPUT: 'Fixed? column header check box not checked.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"5. Normal cell",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Severity column header < > Fixed? 60482 Normal scrollable notebooks and hidden tabs '",
" VISIBLE: 'Normal scrollable notebooks and ', cursor=1",
"SPEECH OUTPUT: 'Severity column header Normal.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"6. Normal cell basic Where Am I",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Severity column header < > Fixed? 60482 Normal scrollable notebooks and hidden tabs '",
" VISIBLE: 'Normal scrollable notebooks and ', cursor=1",
"SPEECH OUTPUT: 'table.'",
"SPEECH OUTPUT: 'Severity.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'Normal.'",
"SPEECH OUTPUT: 'column 3 of 5'",
"SPEECH OUTPUT: 'row 1 of 14.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"7. Normal cell detailed Where Am I",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Severity column header < > Fixed? 60482 Normal scrollable notebooks and hidden tabs '",
" VISIBLE: 'Normal scrollable notebooks and ', cursor=1",
"BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Severity column header < > Fixed? 60482 Normal scrollable notebooks and hidden tabs '",
" VISIBLE: 'Normal scrollable notebooks and ', cursor=1",
"SPEECH OUTPUT: 'table.'",
"SPEECH OUTPUT: 'Severity.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'Normal.'",
"SPEECH OUTPUT: 'column 3 of 5'",
"SPEECH OUTPUT: 'row 1 of 14.'",
"SPEECH OUTPUT: 'table.'",
"SPEECH OUTPUT: 'Severity.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'Normal.'",
"SPEECH OUTPUT: 'column 3 of 5'",
"SPEECH OUTPUT: 'row 1 of 14.'",
"SPEECH OUTPUT: 'Fixed?'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: '60482.'",
"SPEECH OUTPUT: 'Normal.'",
"SPEECH OUTPUT: 'scrollable notebooks and hidden tabs.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"8. 60482 cell",
["BRAILLE LINE: 'gtk-demo application GtkListStore demo frame table Bug number column header < > Fixed? 60482 Normal scrollable notebooks and hidden tabs '",
" VISIBLE: '60482 Normal scrollable notebook', cursor=1",
"SPEECH OUTPUT: 'Bug number column header 60482.'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,146 @@
#!/usr/bin/python
"""Test of combobox output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Combo boxes"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(TypeAction(" "))
sequence.append(utils.AssertPresentationAction(
"1. Warning combo box item",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Some stock icons panel menu'",
" VISIBLE: 'menu', cursor=1",
"BRAILLE LINE: 'gtk-demo application Combo boxes frame Some stock icons panel Warning combo box Warning'",
" VISIBLE: 'Warning', cursor=1",
"SPEECH OUTPUT: 'combo box.'",
"SPEECH OUTPUT: 'Warning.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. Warning combo box item Where Am I",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Some stock icons panel Warning combo box Warning'",
" VISIBLE: 'Warning', cursor=1",
"SPEECH OUTPUT: 'Combo boxes frame'",
"SPEECH OUTPUT: 'Some stock icons panel.'",
"SPEECH OUTPUT: 'Warning.'",
"SPEECH OUTPUT: '1 of 5'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"3. New combo box item",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Some stock icons panel Warning combo box New'",
" VISIBLE: 'New', cursor=1",
"SPEECH OUTPUT: 'New.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"4. New combo box item Where Am I",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Some stock icons panel Warning combo box New'",
" VISIBLE: 'New', cursor=1",
"SPEECH OUTPUT: 'Combo boxes frame'",
"SPEECH OUTPUT: 'Some stock icons panel.'",
"SPEECH OUTPUT: 'New.'",
"SPEECH OUTPUT: '3 of 5'"]))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"5. Editable text combo box",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel $l'",
" VISIBLE: 'boxes frame Editable panel $l', cursor=28",
"SPEECH OUTPUT: 'Editable panel.'",
"SPEECH OUTPUT: 'editable combo box.'"]))
sequence.append(TypeAction("Fou"))
sequence.append(utils.StartRecordingAction())
sequence.append(TypeAction("r"))
sequence.append(utils.AssertPresentationAction(
"6. Editable text combo box typing",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel Fou $l'",
" VISIBLE: 'boxes frame Editable panel Fou $', cursor=32",
"BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel Four $l'",
" VISIBLE: 'boxes frame Editable panel Four ', cursor=32"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"7. Editable text combo box Where Am I",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel Four $l'",
" VISIBLE: 'boxes frame Editable panel Four ', cursor=32",
"SPEECH OUTPUT: 'editable combo box.'",
"SPEECH OUTPUT: 'Four.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"8. Editable text combo box open button",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel Four $l combo box'",
" VISIBLE: 'boxes frame Editable panel Four ', cursor=32",
"SPEECH OUTPUT: 'Four editable combo box.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>ISO_Left_Tab"))
sequence.append(utils.AssertPresentationAction(
"9. Editable text combo box with selected text",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel Four $l'",
" VISIBLE: 'boxes frame Editable panel Four ', cursor=32",
"BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel Four $l'",
" VISIBLE: 'boxes frame Editable panel Four ', cursor=32",
"SPEECH OUTPUT: 'editable combo box.'",
"SPEECH OUTPUT: 'Four selected'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"10. Editable text combo box with selected text Where Am I",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Editable panel Four $l'",
" VISIBLE: 'boxes frame Editable panel Four ', cursor=32",
"SPEECH OUTPUT: 'editable combo box.'",
"SPEECH OUTPUT: 'Four selected.'"]))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"11. Combo box with multiple levels",
["BRAILLE LINE: 'gtk-demo application Combo boxes frame Where are we ? panel Boston combo box'",
" VISIBLE: 'Boston combo box', cursor=1",
"SPEECH OUTPUT: 'Where are we ? panel.'",
"SPEECH OUTPUT: 'Boston combo box.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"12. Down arrow",
["KNOWN ISSUE: Gtk+ has missing events and a broken selection interface in multi-level combo boxes",
""]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"13. Where Am I",
["KNOWN ISSUE: The count is wrong due to a Gtk+ 2 bug which has been fixed in Gtk+ 3",
"BRAILLE LINE: 'gtk-demo application Combo boxes frame Where are we ? panel Carson City combo box'",
" VISIBLE: 'Carson City combo box', cursor=1",
"SPEECH OUTPUT: 'combo box.'",
"SPEECH OUTPUT: 'Carson City 1 of 1'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,57 @@
#!/usr/bin/python
"""Test of labelled combo box output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Printing"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Right"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Alt>o"))
sequence.append(utils.AssertPresentationAction(
"1. Combo box",
["BRAILLE LINE: 'gtk-demo application Print dialog Page Setup page tab Only print: All sheets combo box'",
" VISIBLE: 'Only print: All sheets combo box', cursor=1",
"SPEECH OUTPUT: 'Only print: All sheets combo box.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. Where Am I",
["BRAILLE LINE: 'gtk-demo application Print dialog Page Setup page tab Only print: All sheets combo box'",
" VISIBLE: 'Only print: All sheets combo box', cursor=13",
"SPEECH OUTPUT: 'Only print: combo box.'",
"SPEECH OUTPUT: 'All sheets 1 of 3.'",
"SPEECH OUTPUT: 'Alt+O'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"3. Change selection",
["BRAILLE LINE: 'gtk-demo application Print dialog Page Setup page tab Only print: Even sheets combo box Even sheets'",
" VISIBLE: 'Even sheets', cursor=1",
"SPEECH OUTPUT: 'Even sheets.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"4. Where Am I",
["BRAILLE LINE: 'gtk-demo application Print dialog Page Setup page tab Only print: Even sheets combo box Even sheets'",
" VISIBLE: 'Even sheets', cursor=1",
"SPEECH OUTPUT: 'Print dialog'",
"SPEECH OUTPUT: 'Page Setup page tab.'",
"SPEECH OUTPUT: 'Even sheets.'",
"SPEECH OUTPUT: '2 of 3'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,38 @@
#!/usr/bin/python
"""Test of dialog presentation."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Expander"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Return"))
sequence.append(utils.AssertPresentationAction(
"1. Dialog automatic reading",
["BRAILLE LINE: 'gtk-demo application window Expander $l'",
" VISIBLE: 'Expander $l', cursor=1",
"BRAILLE LINE: 'gtk-demo application GtkExpander dialog'",
" VISIBLE: 'GtkExpander dialog', cursor=1",
"BRAILLE LINE: 'gtk-demo application GtkExpander dialog & y Details collapsed toggle button'",
" VISIBLE: '& y Details collapsed toggle but', cursor=1",
"SPEECH OUTPUT: 'GtkExpander Expander demo. Click on the triangle for details.'",
"SPEECH OUTPUT: 'Details toggle button collapsed'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. Dialog Where Am I",
["BRAILLE LINE: 'gtk-demo application GtkExpander dialog & y Details collapsed toggle button'",
" VISIBLE: '& y Details collapsed toggle but', cursor=1",
"SPEECH OUTPUT: 'Details toggle button collapsed'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,35 @@
#!/usr/bin/python
"""Test of drawing area output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Drawing Area"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"1. Flat review current line",
["BRAILLE LINE: 'Checkerboard pattern $l'",
" VISIBLE: 'Checkerboard pattern $l', cursor=1",
"SPEECH OUTPUT: 'Checkerboard pattern'"]))
# Gtk+ 2 lacks the proper role.
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"2. Flat review next line",
["BRAILLE LINE: 'Scribble area $l'",
" VISIBLE: 'Scribble area $l', cursor=1",
"SPEECH OUTPUT: 'Scribble area'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,65 @@
#!/usr/bin/python
"""Test of icon output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Images"))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("Up"))
sequence.append(KeyComboAction("<Shift>Right"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"1. bin icon",
["BRAILLE LINE: 'gtk-demo application GtkIconView demo frame layered pane bin icon'",
" VISIBLE: 'bin icon', cursor=1",
"SPEECH OUTPUT: 'bin icon.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. bin icon Where Am I",
["BRAILLE LINE: 'gtk-demo application GtkIconView demo frame layered pane bin icon'",
" VISIBLE: 'bin icon', cursor=1",
"SPEECH OUTPUT: 'Icon panel.'",
"SPEECH OUTPUT: 'bin.'",
"SPEECH OUTPUT: '1 of 20 items selected on 1 of 20.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"3. boot icon",
["BRAILLE LINE: 'gtk-demo application GtkIconView demo frame layered pane boot icon'",
" VISIBLE: 'boot icon', cursor=1",
"SPEECH OUTPUT: 'boot icon.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Left"))
sequence.append(utils.AssertPresentationAction(
"4. icon selection",
["BRAILLE LINE: 'gtk-demo application GtkIconView demo frame layered pane bin icon'",
" VISIBLE: 'bin icon', cursor=1",
"SPEECH OUTPUT: 'bin icon.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"5. icon selection Where Am I",
["BRAILLE LINE: 'gtk-demo application GtkIconView demo frame layered pane bin icon'",
" VISIBLE: 'bin icon', cursor=1",
"SPEECH OUTPUT: 'Icon panel.'",
"SPEECH OUTPUT: 'bin.'",
"SPEECH OUTPUT: '2 of 20 items selected on 1 of 20.'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,140 @@
#!/usr/bin/python
"""Test of icon output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Images"))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("Up"))
sequence.append(KeyComboAction("<Shift>Right"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"1. bin icon",
["BRAILLE LINE: 'gtk-demo application GtkIconView demo frame layered pane bin icon'",
" VISIBLE: 'bin icon', cursor=1",
"SPEECH OUTPUT: 'bin icon.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"2. Review current line",
["BRAILLE LINE: 'bin boot dev etc home lib lib64 $l'",
" VISIBLE: 'bin boot dev etc home lib lib64 ', cursor=1",
"SPEECH OUTPUT: 'bin boot dev etc home lib lib64'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"3. Review current word",
["BRAILLE LINE: 'bin boot dev etc home lib lib64 $l'",
" VISIBLE: 'bin boot dev etc home lib lib64 ', cursor=1",
"SPEECH OUTPUT: 'bin'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_6"))
sequence.append(utils.AssertPresentationAction(
"4. Review next word",
["BRAILLE LINE: 'bin boot dev etc home lib lib64 $l'",
" VISIBLE: 'boot dev etc home lib lib64 $l', cursor=1",
"SPEECH OUTPUT: 'boot'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_2"))
sequence.append(utils.AssertPresentationAction(
"5. Review current char",
["BRAILLE LINE: 'bin boot dev etc home lib lib64 $l'",
" VISIBLE: 'boot dev etc home lib lib64 $l', cursor=1",
"SPEECH OUTPUT: 'boot'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_6"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"6. Review item below",
["BRAILLE LINE: 'lost+found media mnt opt proc root run $l'",
" VISIBLE: 'media mnt opt proc root run $l', cursor=1",
"SPEECH OUTPUT: 'media'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_6"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"7. Review item below",
["BRAILLE LINE: 'sbin srv sys tmp usr var $l'",
" VISIBLE: 'sbin srv sys tmp usr var $l', cursor=6",
"SPEECH OUTPUT: 'srv'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_4"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"8. Review item above",
["BRAILLE LINE: 'lost+found media mnt opt proc root run $l'",
" VISIBLE: 'media mnt opt proc root run $l', cursor=1",
"SPEECH OUTPUT: 'media'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_4"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"9. Review item above",
["BRAILLE LINE: 'bin boot dev etc home lib lib64 $l'",
" VISIBLE: 'boot dev etc home lib lib64 $l', cursor=1",
"SPEECH OUTPUT: 'boot'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"10. Review next line",
["BRAILLE LINE: 'lost+found media mnt opt proc root run $l'",
" VISIBLE: 'lost+found media mnt opt proc ro', cursor=1",
"SPEECH OUTPUT: 'lost+found media mnt opt proc root run'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_6"))
sequence.append(utils.AssertPresentationAction(
"11. Review next word",
["BRAILLE LINE: 'lost+found media mnt opt proc root run $l'",
" VISIBLE: 'media mnt opt proc root run $l', cursor=1",
"SPEECH OUTPUT: 'media'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_3"))
sequence.append(utils.AssertPresentationAction(
"12. Review next char",
["BRAILLE LINE: 'lost+found media mnt opt proc root run $l'",
" VISIBLE: 'mnt opt proc root run $l', cursor=1",
"SPEECH OUTPUT: 'mnt'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_7"))
sequence.append(utils.AssertPresentationAction(
"13. Review previous line",
["BRAILLE LINE: 'bin boot dev etc home lib lib64 $l'",
" VISIBLE: 'bin boot dev etc home lib lib64 ', cursor=1",
"SPEECH OUTPUT: 'bin boot dev etc home lib lib64'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_7"))
sequence.append(utils.AssertPresentationAction(
"14. Review previous line",
["BRAILLE LINE: 'Up Home $l'",
" VISIBLE: 'Up Home $l', cursor=1",
"SPEECH OUTPUT: 'Up Home'"]))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,146 @@
#!/usr/bin/python
"""Test of label presentation."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Dialog and Message Boxes"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("space"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"1. This message box label",
["BRAILLE LINE: 'This message box has been popped up the following",
"number of times: number of times:'",
" VISIBLE: 'of times: number of times:', cursor=27",
"BRAILLE LINE: 'This message box has been popped up the following",
"number of times: number of times:'",
" VISIBLE: 'of times: number of times:', cursor=27",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: selected label'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. This message box label Where Am I",
["BRAILLE LINE: 'This message box has been popped up the following",
"number of times: number of times:'",
" VISIBLE: 'of times: number of times:', cursor=27",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: selected label'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"3. This message box label Extended Where Am I",
["BRAILLE LINE: 'This message box has been popped up the following",
"number of times: number of times:'",
" VISIBLE: 'of times: number of times:', cursor=27",
"BRAILLE LINE: 'This message box has been popped up the following",
"number of times: number of times:'",
" VISIBLE: 'of times: number of times:', cursor=27",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: selected label'",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: selected label'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Home"))
sequence.append(utils.AssertPresentationAction(
"4. Press Home to unselect the label and move to the first character'",
["KNOWN ISSUE: The message text is being duplicated.",
"BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=11",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times:'",
"SPEECH OUTPUT: 'unselected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"5. This message box label caret movement to 'h'",
["BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=12",
"SPEECH OUTPUT: 'h'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift><Control>Right"))
sequence.append(utils.AssertPresentationAction(
"6. This message box label caret select 'his' of 'This'",
["BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=15",
"SPEECH OUTPUT: 'his'",
"SPEECH OUTPUT: 'selected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"7. This message box label caret selection Where Am I",
["BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=15",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: selected label'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"8. This message box label caret selection Extended Where Am I",
["BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=15",
"BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=15",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: selected label'",
"SPEECH OUTPUT: 'This message box has been popped up the following",
"number of times: selected label'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"9. Left Arrow to move to h unselecting his'",
["BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=12",
"SPEECH OUTPUT: 'his'",
"SPEECH OUTPUT: 'unselected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift><Control>Left"))
sequence.append(utils.AssertPresentationAction(
"10. This message box label caret select 'T' in 'This'",
["BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=11",
"SPEECH OUTPUT: 'T'",
"SPEECH OUTPUT: 'selected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift><Control>Right"))
sequence.append(utils.AssertPresentationAction(
"11. This message box label caret unselect 'T' and select rest of 'This'",
["BRAILLE LINE: 'gtk-demo application Information alert This message box has been popped up the following",
"number of times: This message box has been popped up the following'",
" VISIBLE: 'of times: This message box has b', cursor=15",
"SPEECH OUTPUT: 'T'",
"SPEECH OUTPUT: 'unselected' voice=system",
"SPEECH OUTPUT: 'his'",
"SPEECH OUTPUT: 'selected' voice=system"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,59 @@
#!/usr/bin/python
"""Test of menu and menu item output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Alt>p"))
sequence.append(utils.AssertPresentationAction(
"1. Initial menu and menu item",
["BRAILLE LINE: 'gtk-demo application Application Window frame Preferences menu'",
" VISIBLE: 'Preferences menu', cursor=1",
"BRAILLE LINE: 'gtk-demo application Application Window frame Color menu'",
" VISIBLE: 'Color menu', cursor=1",
"SPEECH OUTPUT: 'Preferences menu.'",
"SPEECH OUTPUT: 'Color menu.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"2. Get into Color menu",
["BRAILLE LINE: 'gtk-demo application Application Window frame Preferences menu <x> Red check menu item(Ctrl+R)'",
" VISIBLE: '<x> Red check menu item(Ctrl+R)', cursor=1",
"SPEECH OUTPUT: 'Red check menu item checked Ctrl+R.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"3. Where Am I",
["BRAILLE LINE: 'gtk-demo application Application Window frame Preferences menu <x> Red check menu item(Ctrl+R)'",
" VISIBLE: '<x> Red check menu item(Ctrl+R)', cursor=1",
"SPEECH OUTPUT: 'Preferences menu'",
"SPEECH OUTPUT: 'Color menu'",
"SPEECH OUTPUT: 'Red check menu item checked.'",
"SPEECH OUTPUT: 'Ctrl+R.'",
"SPEECH OUTPUT: '1 of 4.'",
"SPEECH OUTPUT: 'R'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"4. Get out of Color menu",
["BRAILLE LINE: 'gtk-demo application Application Window frame Color menu'",
" VISIBLE: 'Color menu', cursor=1",
"SPEECH OUTPUT: 'Color menu.'"]))
sequence.append(KeyComboAction("Escape"))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,155 @@
#!/usr/bin/python
"""Test of menu and menu item output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("<Control>r"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Alt>p"))
sequence.append(utils.AssertPresentationAction(
"1. Initial menu and menu item",
["BRAILLE LINE: 'gtk-demo application Application Window frame Preferences menu'",
" VISIBLE: 'Preferences menu', cursor=1",
"BRAILLE LINE: 'gtk-demo application Application Window frame Color menu'",
" VISIBLE: 'Color menu', cursor=1",
"SPEECH OUTPUT: 'Preferences menu.'",
"SPEECH OUTPUT: 'Color menu.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"2. Review current line",
["BRAILLE LINE: 'Color <x> Red $l'",
" VISIBLE: 'Color <x> Red $l', cursor=1",
"SPEECH OUTPUT: 'Color checked Red'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"3. Review next line",
["BRAILLE LINE: 'Shape < > Green $l'",
" VISIBLE: 'Shape < > Green $l', cursor=1",
"SPEECH OUTPUT: 'Shape not checked Green'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"4. Review next line",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=1",
"SPEECH OUTPUT: 'checked Bold not checked Blue'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"5. Review current word",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=1",
"SPEECH OUTPUT: 'checked'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_6"))
sequence.append(utils.AssertPresentationAction(
"6. Review next word",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=5",
"SPEECH OUTPUT: 'Bold'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_9"))
sequence.append(utils.AssertPresentationAction(
"7. Review next line",
[""]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"8. Review current word",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=5",
"SPEECH OUTPUT: 'Bold'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_2"))
sequence.append(utils.AssertPresentationAction(
"9. Review current char",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=5",
"SPEECH OUTPUT: 'B'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_6"))
sequence.append(utils.AssertPresentationAction(
"10. Review next word",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=10",
"SPEECH OUTPUT: 'not checked'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_3"))
sequence.append(utils.AssertPresentationAction(
"11. Review next char",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=14",
"SPEECH OUTPUT: 'B'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_3"))
sequence.append(utils.AssertPresentationAction(
"12. Review next char",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=15",
"SPEECH OUTPUT: 'l'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_3"))
sequence.append(utils.AssertPresentationAction(
"13. Review next char",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=16",
"SPEECH OUTPUT: 'u'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_1"))
sequence.append(utils.AssertPresentationAction(
"14. Review previous char",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=15",
"SPEECH OUTPUT: 'l'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_1"))
sequence.append(utils.AssertPresentationAction(
"15. Review previous char",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=14",
"SPEECH OUTPUT: 'B'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_4"))
sequence.append(utils.AssertPresentationAction(
"16. Review previous word",
["BRAILLE LINE: '<x> Bold < > Blue $l'",
" VISIBLE: '<x> Bold < > Blue $l', cursor=10",
"SPEECH OUTPUT: 'not checked'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_7"))
sequence.append(utils.AssertPresentationAction(
"17. Review previous line",
["BRAILLE LINE: 'Shape < > Green $l'",
" VISIBLE: 'Shape < > Green $l', cursor=1",
"SPEECH OUTPUT: 'Shape not checked Green'"]))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,36 @@
#!/usr/bin/python
"""Test of page tab output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Printing"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"1. Right Arrow to Page Setup page tab",
["BRAILLE LINE: 'gtk-demo application Print dialog Page Setup page tab'",
" VISIBLE: 'Page Setup page tab', cursor=1",
"SPEECH OUTPUT: 'Page Setup page tab.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. Page Setup page tab Where Am I",
["BRAILLE LINE: 'gtk-demo application Print dialog Page Setup page tab'",
" VISIBLE: 'Page Setup page tab', cursor=1",
"SPEECH OUTPUT: 'page tab list.'",
"SPEECH OUTPUT: 'Page Setup page tab.'",
"SPEECH OUTPUT: '2 of [0-9]'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,45 @@
#!/usr/bin/python
"""Test of push button output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Button Boxes"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"1. OK push button Where Am I",
["BRAILLE LINE: 'gtk-demo application Button Boxes frame Horizontal Button Boxes panel Spread panel OK push button'",
" VISIBLE: 'OK push button', cursor=1",
"SPEECH OUTPUT: 'OK push button.'",
"SPEECH OUTPUT: 'Alt+O'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"2. Cancel push button",
["BRAILLE LINE: 'gtk-demo application Button Boxes frame Horizontal Button Boxes panel Spread panel Cancel push button'",
" VISIBLE: 'Cancel push button', cursor=1",
"SPEECH OUTPUT: 'Cancel push button'"]))
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Tab"))
sequence.append(utils.AssertPresentationAction(
"3. OK Edge button",
["BRAILLE LINE: 'gtk-demo application Button Boxes frame Horizontal Button Boxes panel Edge panel OK push button'",
" VISIBLE: 'OK push button', cursor=1",
"SPEECH OUTPUT: 'Edge panel.'",
"SPEECH OUTPUT: 'OK push button'"]))
sequence.append(KeyComboAction("<Alt>F4", 500))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,63 @@
#!/usr/bin/python
"""Test of radio button output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Printing"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Alt>a"))
sequence.append(utils.AssertPresentationAction(
"1. All Pages radio button",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab &=y All Pages radio button'",
" VISIBLE: '&=y All Pages radio button', cursor=1",
"SPEECH OUTPUT: 'All Pages.'",
"SPEECH OUTPUT: 'selected radio button'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. All Pages radio button Where Am I",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab &=y All Pages radio button'",
" VISIBLE: '&=y All Pages radio button', cursor=1",
"SPEECH OUTPUT: 'All Pages radio button.'",
"SPEECH OUTPUT: 'selected.'",
"SPEECH OUTPUT: '1 of 3.'",
"SPEECH OUTPUT: 'Alt+A'"]))
sequence.append(KeyComboAction("Down"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>ISO_Left_Tab"))
sequence.append(utils.AssertPresentationAction(
"3. Range radio button",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab &=y Pages: radio button'",
" VISIBLE: '&=y Pages: radio button', cursor=1",
"SPEECH OUTPUT: 'Pages:'",
"SPEECH OUTPUT: 'selected radio button'",
"SPEECH OUTPUT: 'Specify one or more page ranges,",
" e.g. 1-3,7,11'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"4. Range radio button Where Am I",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab &=y Pages: radio button'",
" VISIBLE: '&=y Pages: radio button', cursor=1",
"SPEECH OUTPUT: 'Pages: radio button.'",
"SPEECH OUTPUT: 'selected.'",
"SPEECH OUTPUT: '3 of 3.'",
"SPEECH OUTPUT: 'Alt+E'",
"SPEECH OUTPUT: 'Specify one or more page ranges,",
" e.g. 1-3,7,11'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,63 @@
#!/usr/bin/python
"""Test of spin button output"""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Printing"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("<Alt>s"))
sequence.append(KeyComboAction("Tab"))
sequence.append(PauseAction(2000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Alt>s"))
sequence.append(utils.AssertPresentationAction(
"1. Give focus to spin button",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab Copies: 1 $l'",
" VISIBLE: 'Copies: 1 $l', cursor=10",
"SPEECH OUTPUT: 'Copies: 1 selected spin button.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. Where Am I",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab Copies: 1 $l'",
" VISIBLE: 'Copies: 1 $l', cursor=10",
"SPEECH OUTPUT: 'Copies: spin button 1 selected.'",
"SPEECH OUTPUT: 'Alt+S'"]))
sequence.append(TypeAction("15"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"3. Increment value",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab Copies: 16 $l'",
" VISIBLE: 'Copies: 16 $l', cursor=9",
"SPEECH OUTPUT: '16'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"4. Decrement value",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab Copies: 15 $l'",
" VISIBLE: 'Copies: 15 $l', cursor=9",
"SPEECH OUTPUT: '15'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"5. Caret navigation",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab Copies: 15 $l'",
" VISIBLE: 'Copies: 15 $l', cursor=10",
"SPEECH OUTPUT: '5'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,48 @@
#!/usr/bin/python
"""Test of split pane output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Paned Widgets"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("F8"))
sequence.append(utils.AssertPresentationAction(
"1. vertical splitter",
["BRAILLE LINE: 'gtk-demo application Panes frame 60 vertical splitter'",
" VISIBLE: '60 vertical splitter', cursor=1",
"SPEECH OUTPUT: 'vertical splitter 60'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"2. vertical splitter increment value",
["BRAILLE LINE: 'gtk-demo application Panes frame 61 vertical splitter'",
" VISIBLE: '61 vertical splitter', cursor=1",
"SPEECH OUTPUT: '61'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"3. vertical splitter Where Am I",
["BRAILLE LINE: 'gtk-demo application Panes frame 61 vertical splitter'",
" VISIBLE: '61 vertical splitter', cursor=1",
"SPEECH OUTPUT: 'vertical splitter 61'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"4. vertical splitter decrement value",
["BRAILLE LINE: 'gtk-demo application Panes frame 60 vertical splitter'",
" VISIBLE: '60 vertical splitter', cursor=1",
"SPEECH OUTPUT: '60'"]))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,34 @@
#!/usr/bin/python
"""Test of status bar output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"1. Status bar Where Am I",
["BRAILLE LINE: 'Application Window'",
" VISIBLE: 'Application Window', cursor=0",
"BRAILLE LINE: 'gtk-demo application Application Window frame Open push button'",
" VISIBLE: 'Open push button', cursor=1",
"BRAILLE LINE: 'gtk-demo application Application Window frame Open push button'",
" VISIBLE: 'Open push button', cursor=1",
"SPEECH OUTPUT: 'Application Window'",
"SPEECH OUTPUT: 'Cursor at row 0 column 0 - 0 chars in document'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,84 @@
#!/usr/bin/python
"""Test of table output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("End"))
sequence.append(KeyComboAction("Up"))
sequence.append(KeyComboAction("<Shift>Right"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"1. Table Where Am I",
["BRAILLE LINE: 'gtk-demo application Shopping list frame table Number column header 3 bottles of coke '",
" VISIBLE: '3 bottles of coke ', cursor=1",
"SPEECH OUTPUT: 'table.'",
"SPEECH OUTPUT: 'Number.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: '3.'",
"SPEECH OUTPUT: 'column 1 of 3'",
"SPEECH OUTPUT: 'row 1 of 5.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"2. Next row",
["BRAILLE LINE: 'gtk-demo application Shopping list frame table Number column header 5 packages of noodles '",
" VISIBLE: '5 packages of noodles ', cursor=1",
"SPEECH OUTPUT: '5.'",
"SPEECH OUTPUT: 'packages of noodles.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"3. Table Where Am I (again)",
["BRAILLE LINE: 'gtk-demo application Shopping list frame table Number column header 5 packages of noodles '",
" VISIBLE: '5 packages of noodles ', cursor=1",
"SPEECH OUTPUT: 'table.'",
"SPEECH OUTPUT: 'Number.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: '5.'",
"SPEECH OUTPUT: 'column 1 of 3'",
"SPEECH OUTPUT: 'row 2 of 5.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("F11"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"4. Turn row reading off",
["BRAILLE LINE: 'Speak cell'",
" VISIBLE: 'Speak cell', cursor=0",
"SPEECH OUTPUT: 'Speak cell'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"5. Table Right to the Product column in the packages of noodles row",
["BRAILLE LINE: 'gtk-demo application Shopping list frame table Number column header 5 packages of noodles '",
" VISIBLE: '5 packages of noodles ', cursor=1",
"BRAILLE LINE: 'gtk-demo application Shopping list frame table Product column header packages of noodles table cell'",
" VISIBLE: 'packages of noodles table cell', cursor=1",
"SPEECH OUTPUT: 'Product column header packages of noodles.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"6. Table up to bottles of coke",
["BRAILLE LINE: 'gtk-demo application Shopping list frame table Product column header bottles of coke table cell'",
" VISIBLE: 'bottles of coke table cell', cursor=1",
"SPEECH OUTPUT: 'bottles of coke.'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,157 @@
#!/usr/bin/python
"""Test of multiline editable text."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("This is a test."))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Return"))
sequence.append(utils.AssertPresentationAction(
"1. Press Return after typing",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
"BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1"]))
sequence.append(TypeAction("Here is another test."))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(utils.AssertPresentationAction(
"2. Navigate home",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is a test.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(KeyComboAction("Right"))
sequence.append(KeyComboAction("Right"))
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"3. Arrow to end of 'This'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=2",
"BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=3",
"BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=4",
"BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=5",
"SPEECH OUTPUT: 'h'",
"SPEECH OUTPUT: 'i'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 'space'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift><Control>Right"))
sequence.append(KeyComboAction("<Shift><Control>Right"))
sequence.append(KeyComboAction("<Shift><Control>Right"))
sequence.append(utils.AssertPresentationAction(
"4. Select 'is a test'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=8",
"BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=10",
"BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=15",
"SPEECH OUTPUT: ' is'",
"SPEECH OUTPUT: 'selected'",
"SPEECH OUTPUT: ' a'",
"SPEECH OUTPUT: 'selected'",
"SPEECH OUTPUT: ' test'",
"SPEECH OUTPUT: 'selected'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift><Control>Left"))
sequence.append(utils.AssertPresentationAction(
"5. Unselect 'test'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=11",
"SPEECH OUTPUT: 'test'",
"SPEECH OUTPUT: 'unselected'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"6. Where Am I",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=11",
"SPEECH OUTPUT: 'text.'",
"SPEECH OUTPUT: ' is a selected.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Down"))
sequence.append(utils.AssertPresentationAction(
"7. Shift Down",
["BRAILLE LINE: 'Here is another test. $l'",
" VISIBLE: 'Here is another test. $l', cursor=10",
"SPEECH OUTPUT: 'test.",
"Here is a'",
"SPEECH OUTPUT: 'selected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>End"))
sequence.append(utils.AssertPresentationAction(
"8. Shift End",
["BRAILLE LINE: 'Here is another test. $l'",
" VISIBLE: 'Here is another test. $l', cursor=22",
"SPEECH OUTPUT: 'nother test.'",
"SPEECH OUTPUT: 'selected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"9. Basic Where Am I multiline selection",
["BRAILLE LINE: 'Here is another test. $l'",
" VISIBLE: 'Here is another test. $l', cursor=22",
"SPEECH OUTPUT: 'text.'",
"SPEECH OUTPUT: ' is a test.",
"Here is another test. selected.'"]))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"10. Detailed Where Am I multiline selection",
["BRAILLE LINE: 'Here is another test. $l'",
" VISIBLE: 'Here is another test. $l', cursor=22",
"SPEECH OUTPUT: 'text.'",
"SPEECH OUTPUT: ' is a test.",
"Here is another test. selected.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(utils.AssertPresentationAction(
"11. Navigate home",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: ' is a test.",
"Here is another test.'",
"SPEECH OUTPUT: 'unselected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Add"))
sequence.append(utils.AssertPresentationAction(
"12. SayAll",
["SPEECH OUTPUT: 'This is a test.",
"'",
"SPEECH OUTPUT: 'Here is another test.'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,347 @@
#!/usr/bin/python
"""Test of flat review of text and a toolbar."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("This is a test. "))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("This is only a test."))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("PLEASE DO NOT PANIC."))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Down"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Subtract"))
sequence.append(utils.AssertPresentationAction(
"1. KP_Subtract to enter flat review",
["BRAILLE LINE: 'Entering flat review.'",
" VISIBLE: 'Entering flat review.', cursor=0",
"BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'Entering flat review.' voice=system",
"SPEECH OUTPUT: 'PLEASE '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"2. KP_8 to flat review 'PLEASE DO NOT PANIC.'",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'PLEASE DO NOT PANIC.",
"'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"3. KP_5 to flat review 'PLEASE '",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'PLEASE '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_2"))
sequence.append(utils.AssertPresentationAction(
"4. KP_2 to flat review 'P'",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'P'"]))
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(KeyComboAction("Down"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"5. KP_5 to flat review 'This '",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'This '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"6. KP_5 2X to spell 'This '",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'This '",
"SPEECH OUTPUT: 'T'",
"SPEECH OUTPUT: 'h'",
"SPEECH OUTPUT: 'i'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 'space'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_5"))
sequence.append(KeyComboAction("KP_5"))
sequence.append(KeyComboAction("KP_5"))
sequence.append(utils.AssertPresentationAction(
"7. KP_5 3X to military spell 'This '",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'This '",
"SPEECH OUTPUT: 'T'",
"SPEECH OUTPUT: 'h'",
"SPEECH OUTPUT: 'i'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 'tango'",
"SPEECH OUTPUT: 'hotel'",
"SPEECH OUTPUT: 'india'",
"SPEECH OUTPUT: 'sierra'",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"8. KP_8 to flat review 'This is only a test.'",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is only a test.",
"'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"9. KP_8 2X to spell 'This is only a test.'",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is only a test.",
"'",
"SPEECH OUTPUT: 'T'",
"SPEECH OUTPUT: 'h'",
"SPEECH OUTPUT: 'i'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 'i'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 'o'",
"SPEECH OUTPUT: 'n'",
"SPEECH OUTPUT: 'l'",
"SPEECH OUTPUT: 'y'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 'a'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 't'",
"SPEECH OUTPUT: 'e'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 't'",
"SPEECH OUTPUT: 'dot'",
"SPEECH OUTPUT: 'newline'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_8"))
sequence.append(KeyComboAction("KP_8"))
sequence.append(KeyComboAction("KP_8"))
sequence.append(utils.AssertPresentationAction(
"10. KP_8 3X to military spell 'This is only a test.'",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is only a test.",
"'",
"SPEECH OUTPUT: 'T'",
"SPEECH OUTPUT: 'h'",
"SPEECH OUTPUT: 'i'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 'i'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 'o'",
"SPEECH OUTPUT: 'n'",
"SPEECH OUTPUT: 'l'",
"SPEECH OUTPUT: 'y'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 'a'",
"SPEECH OUTPUT: 'space'",
"SPEECH OUTPUT: 't'",
"SPEECH OUTPUT: 'e'",
"SPEECH OUTPUT: 's'",
"SPEECH OUTPUT: 't'",
"SPEECH OUTPUT: 'dot'",
"SPEECH OUTPUT: 'newline'",
"SPEECH OUTPUT: 'tango'",
"SPEECH OUTPUT: 'hotel'",
"SPEECH OUTPUT: 'india'",
"SPEECH OUTPUT: 'sierra'",
"SPEECH OUTPUT: ' '",
"SPEECH OUTPUT: 'india'",
"SPEECH OUTPUT: 'sierra'",
"SPEECH OUTPUT: ' '",
"SPEECH OUTPUT: 'oscar'",
"SPEECH OUTPUT: 'november'",
"SPEECH OUTPUT: 'lima'",
"SPEECH OUTPUT: 'yankee'",
"SPEECH OUTPUT: ' '",
"SPEECH OUTPUT: 'alpha'",
"SPEECH OUTPUT: ' '",
"SPEECH OUTPUT: 'tango'",
"SPEECH OUTPUT: 'echo'",
"SPEECH OUTPUT: 'sierra'",
"SPEECH OUTPUT: 'tango'",
"SPEECH OUTPUT: '.'",
"SPEECH OUTPUT: '",
"'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_2"))
sequence.append(utils.AssertPresentationAction(
"11. KP_2 to flat review 'T'",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'T'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_2"))
sequence.append(KeyComboAction("KP_2"))
sequence.append(utils.AssertPresentationAction(
"12. KP_2 2X to military spell 'T'",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'T'",
"SPEECH OUTPUT: 'tango'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_6"))
sequence.append(utils.AssertPresentationAction(
"13. KP_6 to flat review 'is'",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=6",
"SPEECH OUTPUT: 'is '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_7"))
sequence.append(utils.AssertPresentationAction(
"14. KP_7 to flat review 'This is a test.' and the scrollbar",
["BRAILLE LINE: 'This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is a test. ",
"'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_7"))
sequence.append(utils.AssertPresentationAction(
"15. KP_7 to flat review toolbar",
["BRAILLE LINE: 'Open & y toggle button Quit GTK! $l'",
" VISIBLE: 'Open & y toggle button Quit GTK!', cursor=1",
"SPEECH OUTPUT: 'Open not pressed toggle button Quit GTK!'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_7"))
sequence.append(utils.AssertPresentationAction(
"16. KP_7 to flat review menu",
["BRAILLE LINE: 'File Preferences Help $l'",
" VISIBLE: 'File Preferences Help $l', cursor=1",
"SPEECH OUTPUT: 'File Preferences Help'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_6"))
sequence.append(utils.AssertPresentationAction(
"17. KP_6 to flat review 'Preferences'",
["BRAILLE LINE: 'File Preferences Help $l'",
" VISIBLE: 'File Preferences Help $l', cursor=6",
"SPEECH OUTPUT: 'Preferences'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_6"))
sequence.append(utils.AssertPresentationAction(
"18. KP_6 to flat review 'Help'",
["BRAILLE LINE: 'File Preferences Help $l'",
" VISIBLE: 'File Preferences Help $l', cursor=18",
"SPEECH OUTPUT: 'Help'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_5"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"19. Insert+KP_5 to flat review 'Help' accessible",
["SPEECH OUTPUT: 'Help menu.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_9"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"20. Insert+KP_9 to flat review end",
["BRAILLE LINE: 'Cursor at row 1 column 0 - 60 chars in document $l'",
" VISIBLE: 'chars in document $l', cursor=17",
"SPEECH OUTPUT: 'Cursor at row 1 column 0 - 60 chars in document'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_7"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"21. Insert+KP_7 to flat review home",
["BRAILLE LINE: 'File Preferences Help $l'",
" VISIBLE: 'File Preferences Help $l', cursor=1",
"SPEECH OUTPUT: 'File Preferences Help'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_6"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"22. Insert+KP_6 to flat review below",
["BRAILLE LINE: 'Open & y toggle button Quit GTK! $l'",
" VISIBLE: '& y toggle button Quit GTK! $l', cursor=1",
"SPEECH OUTPUT: 'not pressed'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_4"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"23. Insert+KP_4 to flat review above",
["BRAILLE LINE: 'File Preferences Help $l'",
" VISIBLE: 'File Preferences Help $l', cursor=1",
"SPEECH OUTPUT: 'File'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Subtract"))
sequence.append(utils.AssertPresentationAction(
"24. KP_Subtract to exit flat review",
["BRAILLE LINE: 'Leaving flat review.'",
" VISIBLE: 'Leaving flat review.', cursor=0",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'Leaving flat review.' voice=system"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,396 @@
#!/usr/bin/python
"""Test of text output for caret navigation."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("This is a test. "))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("This is only a test."))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("PLEASE DO NOT PANIC."))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("I'm just going to keep on typing."))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("Then, I'm going to type some"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("more. I just do not know when to"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("quit typing."))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("I think I might have spent too much"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("time in the lab and not enough time"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("in the wild."))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"1. Left once from end to '.' after 'wild'",
["BRAILLE LINE: 'in the wild. $l'",
" VISIBLE: 'in the wild. $l', cursor=12",
"SPEECH OUTPUT: 'dot'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"2. Left a second time to 'd' in 'wild'",
["BRAILLE LINE: 'in the wild. $l'",
" VISIBLE: 'in the wild. $l', cursor=11",
"SPEECH OUTPUT: 'd'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"3. Left a third time to 'l' in 'wild'",
["BRAILLE LINE: 'in the wild. $l'",
" VISIBLE: 'in the wild. $l', cursor=10",
"SPEECH OUTPUT: 'l'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Left"))
sequence.append(utils.AssertPresentationAction(
"4. Ctrl+Left to beginning of 'wild'",
["BRAILLE LINE: 'in the wild. $l'",
" VISIBLE: 'in the wild. $l', cursor=8",
"SPEECH OUTPUT: 'wild.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Left"))
sequence.append(utils.AssertPresentationAction(
"5. Ctrl+Left to beginning of 'the'",
["BRAILLE LINE: 'in the wild. $l'",
" VISIBLE: 'in the wild. $l', cursor=4",
"SPEECH OUTPUT: 'the '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Left"))
sequence.append(utils.AssertPresentationAction(
"6. Ctrl+Left to beginning of 'in'",
["BRAILLE LINE: 'in the wild. $l'",
" VISIBLE: 'in the wild. $l', cursor=1",
"SPEECH OUTPUT: 'in '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Left"))
sequence.append(utils.AssertPresentationAction(
"7. Ctrl+Left to beginning of 'time' at end of previous line",
["BRAILLE LINE: 'time in the lab and not enough time $l'",
" VISIBLE: 'time $l', cursor=1",
"SPEECH OUTPUT: 'newline'",
"SPEECH OUTPUT: 'time",
"'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Home"))
sequence.append(utils.AssertPresentationAction(
"8. Home to beginning of line",
["BRAILLE LINE: 'time in the lab and not enough time $l'",
" VISIBLE: 'time in the lab and not enough t', cursor=1",
"SPEECH OUTPUT: 't'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("End"))
sequence.append(utils.AssertPresentationAction(
"9. End to end of line",
["BRAILLE LINE: 'time in the lab and not enough time $l'",
" VISIBLE: ' in the lab and not enough time ', cursor=32",
"SPEECH OUTPUT: 'blank'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(utils.AssertPresentationAction(
"10. Ctrl+Home to beginning of document",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is a test. '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>End"))
sequence.append(utils.AssertPresentationAction(
"11. Ctrl+End to end of document",
["BRAILLE LINE: 'in the wild. $l'",
" VISIBLE: 'in the wild. $l', cursor=13",
"SPEECH OUTPUT: 'in the wild.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(utils.AssertPresentationAction(
"12. Ctrl+Home back to beginning of document",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is a test. '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"13. Right once to 'h' in 'This'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=2",
"SPEECH OUTPUT: 'h'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"14. Right a second time to 'i' in 'This'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=3",
"SPEECH OUTPUT: 'i'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"15. Right a third time to 's' in 'This'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=4",
"SPEECH OUTPUT: 's'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Right"))
sequence.append(utils.AssertPresentationAction(
"16. Ctrl+Right to end of 'This'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=5",
"SPEECH OUTPUT: 'newline'",
"SPEECH OUTPUT: 'This '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Right"))
sequence.append(utils.AssertPresentationAction(
"17. Ctrl+Right to end of 'is'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=8",
"SPEECH OUTPUT: 'is '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Right"))
sequence.append(utils.AssertPresentationAction(
"18. Ctrl+Right to end of 'a'",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=10",
"SPEECH OUTPUT: 'a '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"19. Down a line to 'n' in 'only'",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=10",
"SPEECH OUTPUT: 'This is only a test.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("End"))
sequence.append(utils.AssertPresentationAction(
"20. End of line",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=21",
"SPEECH OUTPUT: 'blank'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"21. Right to blank line",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
"SPEECH OUTPUT: 'blank'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"22. Right to beginning of 'PLEASE'",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'P'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"23. Down to line with one space",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"24. Back up to 'PLEASE DO NOT PANIC.'",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'PLEASE DO NOT PANIC.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Right"))
sequence.append(utils.AssertPresentationAction(
"25. Ctrl+Right over PLEASE",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=7",
"SPEECH OUTPUT: 'PLEASE '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Left"))
sequence.append(utils.AssertPresentationAction(
"26. Ctrl+Left over PLEASE",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'PLEASE '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(TypeAction("f"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"27. Insert+f for text attributes",
["SPEECH OUTPUT: 'size: 10' voice=system",
"SPEECH OUTPUT: 'family name: Cantarell' voice=system",
"SPEECH OUTPUT: 'foreground color: black' voice=system",
"SPEECH OUTPUT: 'background color: white' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Left"))
sequence.append(utils.AssertPresentationAction(
"28. Left to blank line",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
"SPEECH OUTPUT: 'blank'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"29. Right to beginning of 'PLEASE' again",
["BRAILLE LINE: 'PLEASE DO NOT PANIC. $l'",
" VISIBLE: 'PLEASE DO NOT PANIC. $l', cursor=1",
"SPEECH OUTPUT: 'P'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"30. Up to blank line",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
"SPEECH OUTPUT: 'blank'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(utils.AssertPresentationAction(
"31. Ctrl+Home to beginning of document",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is a test. '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Delete"))
sequence.append(utils.AssertPresentationAction(
"32. Delete right 'T' in 'This'",
["BRAILLE LINE: 'gtk-demo application Application Window frame his is a test. $l'",
" VISIBLE: 'his is a test. $l', cursor=1",
"SPEECH OUTPUT: 'h'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Delete"))
sequence.append(utils.AssertPresentationAction(
"33. Delete right 'h' in 'his'",
["BRAILLE LINE: 'gtk-demo application Application Window frame is is a test. $l'",
" VISIBLE: 'is is a test. $l', cursor=1",
"SPEECH OUTPUT: 'i'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Delete"))
sequence.append(utils.AssertPresentationAction(
"34. Ctrl+Delete right remaining 'is' of 'This'",
["BRAILLE LINE: 'gtk-demo application Application Window frame is a test. $l'",
" VISIBLE: ' is a test. $l', cursor=1",
"SPEECH OUTPUT: 'space'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Delete"))
sequence.append(utils.AssertPresentationAction(
"35. Ctrl+Delete right 'is'",
["BRAILLE LINE: 'gtk-demo application Application Window frame a test. $l'",
" VISIBLE: ' a test. $l', cursor=1",
"SPEECH OUTPUT: 'space'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"36. Down a line",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is only a test.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("End"))
sequence.append(utils.AssertPresentationAction(
"37. End of line",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=21",
"SPEECH OUTPUT: 'blank'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("BackSpace"))
sequence.append(utils.AssertPresentationAction(
"38. BackSpace '.' after 'test'",
["BRAILLE LINE: 'This is only a test $l'",
" VISIBLE: 'This is only a test $l', cursor=20",
"BRAILLE LINE: 'This is only a test $l'",
" VISIBLE: 'This is only a test $l', cursor=20",
"SPEECH OUTPUT: 'dot'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>BackSpace"))
sequence.append(utils.AssertPresentationAction(
"39. Ctrl+BackSpace to delete 'this'",
["BRAILLE LINE: 'This is only a $l'",
" VISIBLE: 'This is only a $l', cursor=16",
"BRAILLE LINE: 'This is only a $l'",
" VISIBLE: 'This is only a $l', cursor=16",
"SPEECH OUTPUT: 'test'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>BackSpace"))
sequence.append(utils.AssertPresentationAction(
"40. Ctrl+BackSpace to delete 'a'",
["BRAILLE LINE: 'This is only $l'",
" VISIBLE: 'This is only $l', cursor=14",
"BRAILLE LINE: 'This is only $l'",
" VISIBLE: 'This is only $l', cursor=14",
"SPEECH OUTPUT: 'a '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Left"))
sequence.append(utils.AssertPresentationAction(
"41. Ctrl+Left to beginning of 'only'",
["BRAILLE LINE: 'This is only $l'",
" VISIBLE: 'This is only $l', cursor=9",
"SPEECH OUTPUT: 'newline'",
"SPEECH OUTPUT: 'only ",
"",
"'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Left"))
sequence.append(utils.AssertPresentationAction(
"42. Ctrl+Left to beginning of 'is'",
["BRAILLE LINE: 'This is only $l'",
" VISIBLE: 'This is only $l', cursor=6",
"SPEECH OUTPUT: 'is '"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,138 @@
#!/usr/bin/python
"""Test of text output for caret navigation and flat review."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("This is a test. "))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction("This is only a test."))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Up"))
sequence.append(KeyComboAction("Right"))
sequence.append(KeyComboAction("Right"))
sequence.append(KeyComboAction("Right"))
sequence.append(KeyComboAction("Right"))
sequence.append(KeyComboAction("Right"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift><Control>Page_Up"))
sequence.append(utils.AssertPresentationAction(
"1. Shift+Ctrl+Page_Up to select text to beginning of line",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'line selected from start to previous cursor position' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift><Control>Page_Down"))
sequence.append(utils.AssertPresentationAction(
"2. Shift+Ctrl+Page_Down to select text to end of line",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=21",
"SPEECH OUTPUT: 'line selected to end from previous cursor position'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Up"))
sequence.append(utils.AssertPresentationAction(
"3. Shift+Up to deselect some text and select some text above",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=17",
"SPEECH OUTPUT: 'is only a test.'",
"SPEECH OUTPUT: 'unselected' voice=system",
"SPEECH OUTPUT: '",
"This '",
"SPEECH OUTPUT: 'selected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Down"))
sequence.append(utils.AssertPresentationAction(
"4. Shift+Down to deselect some text and select some text below",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=21",
"SPEECH OUTPUT: '",
"This '",
"SPEECH OUTPUT: 'unselected' voice=system",
"SPEECH OUTPUT: 'is only a test.'",
"SPEECH OUTPUT: 'selected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Page_Up"))
sequence.append(utils.AssertPresentationAction(
"5. Ctrl+Page_Up to beginning of line",
["BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=1",
"SPEECH OUTPUT: 'is only a test.'",
"SPEECH OUTPUT: 'unselected' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Page_Down"))
sequence.append(utils.AssertPresentationAction(
"6. Ctrl+Page_Down to end of line",
["KNOWN ISSUE: We're not saying anything here",
"BRAILLE LINE: 'This is only a test. $l'",
" VISIBLE: 'This is only a test. $l', cursor=21"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Page_Up"))
sequence.append(utils.AssertPresentationAction(
"7. Page up",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is a test. '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Page_Down"))
sequence.append(utils.AssertPresentationAction(
"8. Page down",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
"SPEECH OUTPUT: 'blank'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Page_Up"))
sequence.append(utils.AssertPresentationAction(
"9. Shift+Page_Up to select text",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'page selected to cursor position'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Page_Down"))
sequence.append(utils.AssertPresentationAction(
"10. Shift+Page_Down to deselect text",
["BRAILLE LINE: ' $l'",
" VISIBLE: ' $l', cursor=1",
"SPEECH OUTPUT: 'page unselected from cursor position' voice=system"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Page_Up"))
sequence.append(utils.AssertPresentationAction(
"11. Page_Up",
["BRAILLE LINE: 'gtk-demo application Application Window frame This is a test. $l'",
" VISIBLE: 'This is a test. $l', cursor=1",
"SPEECH OUTPUT: 'This is a test. '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Add"))
sequence.append(utils.AssertPresentationAction(
"12. KP_Add to do a SayAll",
["SPEECH OUTPUT: 'This is a test. ",
"'",
"SPEECH OUTPUT: 'This is only a test.",
"'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,49 @@
#!/usr/bin/python
"""Test of toggle button output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Expander"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"1. Toggle button Where Am I",
["BRAILLE LINE: 'gtk-demo application GtkExpander dialog & y Details collapsed toggle button'",
" VISIBLE: '& y Details collapsed toggle but', cursor=1",
"SPEECH OUTPUT: 'Details toggle button collapsed'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Return"))
sequence.append(utils.AssertPresentationAction(
"2. Toggle button state changed to expanded",
["BRAILLE LINE: 'gtk-demo application GtkExpander dialog &=y Details expanded toggle button'",
" VISIBLE: '&=y Details expanded toggle butt', cursor=1",
"SPEECH OUTPUT: 'expanded'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"3. Toggle button pressed Where Am I",
["BRAILLE LINE: 'gtk-demo application GtkExpander dialog &=y Details expanded toggle button'",
" VISIBLE: '&=y Details expanded toggle butt', cursor=1",
"SPEECH OUTPUT: 'Details toggle button expanded'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Return"))
sequence.append(utils.AssertPresentationAction(
"4. Toggle button state changed to collapsed",
["BRAILLE LINE: 'gtk-demo application GtkExpander dialog & y Details collapsed toggle button'",
" VISIBLE: '& y Details collapsed toggle but', cursor=1",
"SPEECH OUTPUT: 'collapsed'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,57 @@
#!/usr/bin/python
"""Test of toolbar output using."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"1. Where Am I",
["BRAILLE LINE: 'gtk-demo application Application Window frame Open push button'",
" VISIBLE: 'Open push button', cursor=1",
"SPEECH OUTPUT: 'tool bar Open push button'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"2. Open triangle toggle button",
["BRAILLE LINE: 'gtk-demo application Application Window frame & y toggle button'",
" VISIBLE: '& y toggle button', cursor=1",
"SPEECH OUTPUT: 'toggle button not pressed'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"3. Open triangle toggle button Where Am I",
["BRAILLE LINE: 'gtk-demo application Application Window frame & y toggle button'",
" VISIBLE: '& y toggle button', cursor=1",
"SPEECH OUTPUT: 'tool bar toggle button not pressed'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"4. Next push button",
["BRAILLE LINE: 'gtk-demo application Application Window frame Quit push button'",
" VISIBLE: 'Quit push button', cursor=1",
"SPEECH OUTPUT: 'Quit push button'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"5. Where Am I",
["BRAILLE LINE: 'gtk-demo application Application Window frame Quit push button'",
" VISIBLE: 'Quit push button', cursor=1",
"SPEECH OUTPUT: 'tool bar Quit push button'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,39 @@
#!/usr/bin/python
"""Test of tooltips."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Printing"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("<Alt>e"))
sequence.append(KeyComboAction("<Shift>ISO_Left_Tab"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>F1"))
sequence.append(utils.AssertPresentationAction(
"1. Show tooltip",
["BRAILLE LINE: ' Specify one or more page ranges,",
" e.g. 1-3,7,11 tool tip'",
" VISIBLE: 'Specify one or more page ranges,', cursor=1",
"SPEECH OUTPUT: 'Specify one or more page ranges,",
" e.g. 1-3,7,11'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>F1"))
sequence.append(utils.AssertPresentationAction(
"2. Hide tooltip",
["BRAILLE LINE: 'gtk-demo application Print dialog General page tab &=y Pages: radio button'",
" VISIBLE: '&=y Pages: radio button', cursor=1",
"SPEECH OUTPUT: 'Pages:'",
"SPEECH OUTPUT: 'selected radio button'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,253 @@
#!/usr/bin/python
"""Test of tree table output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("End"))
sequence.append(KeyComboAction("Up"))
sequence.append(KeyComboAction("<Shift>Right"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Down"))
sequence.append(KeyComboAction("Down"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Up"))
sequence.append(utils.AssertPresentationAction(
"1. January cell focus",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January expanded < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January expanded < > Alex < > Ha', cursor=1",
"SPEECH OUTPUT: 'January expanded 3 items.'",
"SPEECH OUTPUT: 'Alex'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Havoc'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Tim'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Owen'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Dave'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'tree level 1'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"2. January cell basic Where Am I",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January expanded < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January expanded < > Alex < > Ha', cursor=1",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Holiday.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'January.'",
"SPEECH OUTPUT: 'column 1 of 6'",
"SPEECH OUTPUT: 'row 1 of 53.'",
"SPEECH OUTPUT: 'expanded.'",
"SPEECH OUTPUT: 'tree level 1.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"3. January cell detailed Where Am I",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January expanded < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January expanded < > Alex < > Ha', cursor=1",
"BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January expanded < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January expanded < > Alex < > Ha', cursor=1",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Holiday.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'January.'",
"SPEECH OUTPUT: 'column 1 of 6'",
"SPEECH OUTPUT: 'row 1 of 53.'",
"SPEECH OUTPUT: 'expanded.'",
"SPEECH OUTPUT: 'tree level 1.'",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Holiday.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'January.'",
"SPEECH OUTPUT: 'column 1 of 6'",
"SPEECH OUTPUT: 'row 1 of 53.'",
"SPEECH OUTPUT: 'January expanded 3 items.'",
"SPEECH OUTPUT: 'Alex'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Havoc'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Tim'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Owen'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Dave'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'expanded.'",
"SPEECH OUTPUT: 'tree level 1.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Left"))
sequence.append(utils.AssertPresentationAction(
"4. January cell collapsed",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January collapsed < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January collapsed < > Alex < > H', cursor=1",
"SPEECH OUTPUT: 'collapsed.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"5. January cell collapsed basic Where Am I",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January collapsed < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January collapsed < > Alex < > H', cursor=1",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Holiday.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'January.'",
"SPEECH OUTPUT: 'column 1 of 6'",
"SPEECH OUTPUT: 'row 1 of 50.'",
"SPEECH OUTPUT: 'collapsed.'",
"SPEECH OUTPUT: 'tree level 1.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"6. January cell collapsed detailed Where Am I",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January collapsed < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January collapsed < > Alex < > H', cursor=1",
"BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January collapsed < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January collapsed < > Alex < > H', cursor=1",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Holiday.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'January.'",
"SPEECH OUTPUT: 'column 1 of 6'",
"SPEECH OUTPUT: 'row 1 of 50.'",
"SPEECH OUTPUT: 'collapsed.'",
"SPEECH OUTPUT: 'tree level 1.'",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Holiday.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'January.'",
"SPEECH OUTPUT: 'column 1 of 6'",
"SPEECH OUTPUT: 'row 1 of 50.'",
"SPEECH OUTPUT: 'January collapsed.'",
"SPEECH OUTPUT: 'Alex'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Havoc'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Tim'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Owen'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'Dave'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'collapsed.'",
"SPEECH OUTPUT: 'tree level 1.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Shift>Right"))
sequence.append(utils.AssertPresentationAction(
"7. January cell expanded",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header January expanded < > Alex < > Havoc < > Tim < > Owen < > Dave TREE LEVEL 1'",
" VISIBLE: 'January expanded < > Alex < > Ha', cursor=1",
"SPEECH OUTPUT: 'expanded.'",
"SPEECH OUTPUT: '3 items.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"8. New Year's Day cell",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Holiday column header New Years Day <x> Alex <x> Havoc <x> Tim <x> Owen < > Dave TREE LEVEL 2'",
" VISIBLE: 'New Years Day <x> Alex <x> Havoc', cursor=1",
"SPEECH OUTPUT: 'New Years Day.'",
"SPEECH OUTPUT: 'Alex'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Havoc'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Tim'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Owen'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Dave'",
"SPEECH OUTPUT: 'check box not checked.'",
"SPEECH OUTPUT: 'tree level 2'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Right"))
sequence.append(utils.AssertPresentationAction(
"9. Alex checkbox cell",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Alex column header New Years Day <x> Alex <x> Havoc <x> Tim <x> Owen < > Dave'",
" VISIBLE: '<x> Alex <x> Havoc <x> Tim <x> O', cursor=1",
"SPEECH OUTPUT: 'Alex column header check box checked.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"10. Alex checkbox cell basic Where Am I",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Alex column header New Years Day <x> Alex <x> Havoc <x> Tim <x> Owen < > Dave'",
" VISIBLE: '<x> Alex <x> Havoc <x> Tim <x> O', cursor=1",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Alex.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'column 2 of 6'",
"SPEECH OUTPUT: 'row 2 of 53.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(utils.AssertPresentationAction(
"11. Alex checkbox cell detailed Where Am I",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Alex column header New Years Day <x> Alex <x> Havoc <x> Tim <x> Owen < > Dave'",
" VISIBLE: '<x> Alex <x> Havoc <x> Tim <x> O', cursor=1",
"BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Alex column header New Years Day <x> Alex <x> Havoc <x> Tim <x> Owen < > Dave'",
" VISIBLE: '<x> Alex <x> Havoc <x> Tim <x> O', cursor=1",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Alex.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'column 2 of 6'",
"SPEECH OUTPUT: 'row 2 of 53.'",
"SPEECH OUTPUT: 'tree table.'",
"SPEECH OUTPUT: 'Alex.'",
"SPEECH OUTPUT: 'table cell.'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'column 2 of 6'",
"SPEECH OUTPUT: 'row 2 of 53.'",
"SPEECH OUTPUT: 'New Years Day.'",
"SPEECH OUTPUT: 'Alex'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Havoc'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Tim'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Owen'",
"SPEECH OUTPUT: 'check box checked.'",
"SPEECH OUTPUT: 'Dave'",
"SPEECH OUTPUT: 'check box not checked.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(TypeAction(" "))
sequence.append(utils.AssertPresentationAction(
"12. Alex checkbox cell unchecked",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Alex column header New Years Day < > Alex <x> Havoc <x> Tim <x> Owen < > Dave'",
" VISIBLE: '< > Alex <x> Havoc <x> Tim <x> O', cursor=1",
"SPEECH OUTPUT: 'not checked.'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(TypeAction(" "))
sequence.append(utils.AssertPresentationAction(
"13. Alex checkbox cell checked",
["BRAILLE LINE: 'gtk-demo application Card planning sheet frame tree table Alex column header New Years Day <x> Alex <x> Havoc <x> Tim <x> Owen < > Dave'",
" VISIBLE: '<x> Alex <x> Havoc <x> Tim <x> O', cursor=1",
"SPEECH OUTPUT: 'checked.'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,24 @@
#!/usr/bin/python
"""Test of window title output."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(KeyComboAction("Down"))
sequence.append(PauseAction(3000))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyPressAction(0, None, "KP_Insert"))
sequence.append(KeyComboAction("KP_Enter"))
sequence.append(KeyReleaseAction(0, None, "KP_Insert"))
sequence.append(utils.AssertPresentationAction(
"1. Window Where Am I",
["BRAILLE LINE: 'GTK+ Code Demos'",
" VISIBLE: 'GTK+ Code Demos', cursor=0",
"SPEECH OUTPUT: 'GTK+ Code Demos'"]))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,296 @@
#!/usr/bin/python
"""Test of presentation of whitespace with braille disabled."""
from macaroon.playback import *
import utils
sequence = MacroSequence()
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("<Control>f"))
sequence.append(TypeAction("Application main window"))
sequence.append(KeyComboAction("Return"))
sequence.append(PauseAction(3000))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction(" foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction(" foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Return"))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(KeyComboAction("Return"))
sequence.append(TypeAction(" "))
sequence.append(KeyComboAction("Tab"))
sequence.append(TypeAction("foo"))
sequence.append(KeyComboAction("Return"))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("<Control>Home"))
sequence.append(utils.AssertPresentationAction(
"1. 1 Tab",
["SPEECH OUTPUT: 'left control '",
"SPEECH OUTPUT: '1 tab ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"2. 1 Tab and the word 'foo'",
["SPEECH OUTPUT: '1 tab ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"3. 2 Tabs",
["SPEECH OUTPUT: '2 tabs ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"4. 2 Tabs and the word 'foo'",
["SPEECH OUTPUT: '2 tabs ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"5. 1 space",
["SPEECH OUTPUT: '1 space ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"6. 1 space and the word 'foo'",
["SPEECH OUTPUT: '1 space ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"7. 2 spaces",
["SPEECH OUTPUT: '2 spaces ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"8. 2 spaces and the word 'foo'",
["SPEECH OUTPUT: '2 spaces ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"9. 1 Tab and 1 space",
["SPEECH OUTPUT: '1 tab 1 space ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"10. 1 Tab, 1 space, and the word 'foo'",
["SPEECH OUTPUT: '1 tab 1 space ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"11. 1 Tab and 2 spaces",
["SPEECH OUTPUT: '1 tab 2 spaces ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"12. 1 Tab, 2 spaces, and the word 'foo'",
["SPEECH OUTPUT: '1 tab 2 spaces ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"13. 2 Tabs and 1 space",
["SPEECH OUTPUT: '2 tabs 1 space ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"14. 2 Tabs, 1 space, and the word 'foo'",
["SPEECH OUTPUT: '2 tabs 1 space ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"15. 2 Tabs and 2 spaces",
["SPEECH OUTPUT: '2 tabs 2 spaces ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"16. 2 Tabs, 2 spaces, and the word 'foo'",
["SPEECH OUTPUT: '2 tabs 2 spaces ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"17. 1 Tab, 1 space, and 1 Tab",
["SPEECH OUTPUT: '1 tab 1 space 1 tab ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"18. 1 Tab, 1 space, 1 Tab, and the word 'foo'",
["SPEECH OUTPUT: '1 tab 1 space 1 tab ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"19. 1 Tab, 1 space, 1 Tab, and 1 space",
["SPEECH OUTPUT: '1 tab 1 space 1 tab 1 space ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"20. 1 Tab, 1 space, 1 Tab, 1 space, and the word 'foo'",
["SPEECH OUTPUT: '1 tab 1 space 1 tab 1 space ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"21. 1 Tab, 2 spaces, and 1 Tab",
["SPEECH OUTPUT: '1 tab 2 spaces 1 tab ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"22. 1 Tab, 2 spaces, 1 Tab, and the word 'foo'",
["SPEECH OUTPUT: '1 tab 2 spaces 1 tab ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"23. 2 spaces and 1 Tab",
["SPEECH OUTPUT: '2 spaces 1 tab ' voice=system",
"SPEECH OUTPUT: ' '"]))
sequence.append(utils.StartRecordingAction())
sequence.append(KeyComboAction("Down"))
sequence.append(utils.AssertPresentationAction(
"24. 2 spaces, 1 Tab, and the word 'foo'",
["SPEECH OUTPUT: '2 spaces 1 tab ' voice=system",
"SPEECH OUTPUT: ' foo'"]))
sequence.append(KeyComboAction("<Alt>F4"))
sequence.append(utils.AssertionSummaryAction())
sequence.start()

View File

@ -0,0 +1,177 @@
{
"pronunciations": {},
"keybindings": {},
"profiles": {
"default": {
"speechServerFactory": "orca.speechdispatcherfactory",
"profile": [
"Default",
"default"
],
"voices": {
"default": {
"average-pitch": 5.0,
"rate": 50.0,
"gain": 10.0
},
"uppercase": {
"average-pitch": 5.6
},
"system": {
"established": false
},
"hyperlink": {
"average-pitch": 3.0
}
},
"speechServerInfo": [
"Default Synthesizer",
"default"
],
"keybindings": {},
"pronunciations": {}
}
},
"general": {
"speakCellHeaders": true,
"magEdgeMargin": 0,
"brailleContractionTable": "",
"magPointerFollowsFocus": false,
"magTextTrackingMode": 2,
"magZoomerBorderSize": 1,
"brailleAlignmentStyle": 0,
"enableEchoByWord": false,
"enableMagZoomerColorInversion": false,
"magCursorSize": 32,
"magSmoothingMode": 0,
"magZoomerLeft": 1200,
"sayAllStyle": 1,
"brailleSelectorIndicator": 192,
"presentDateFormat": "%x",
"magContrastLevel": 0,
"magMouseTrackingMode": 0,
"speakCellSpan": true,
"progressBarUpdateInterval": 10,
"speakCellCoordinates": true,
"enablePauseBreaks": true,
"brailleEOLIndicator": " $l",
"verbalizePunctuationStyle": 1,
"progressBarVerbosity": 1,
"enableSpeech": true,
"enableBraille": false,
"chatAnnounceBuddyTyping": false,
"speakMultiCaseStringsAsWords": false,
"enableBrailleGrouping": false,
"readTableCellRow": true,
"activeProfile": [
"Default",
"default"
],
"textAttributesBrailleIndicator": 0,
"enableMagCursorExplicitSize": false,
"messageVerbosityLevel": 1,
"enableMagLiveUpdating": true,
"enableSpeechIndentation": true,
"enableKeyEcho": true,
"magHideCursor": false,
"magZoomerBorderColor": "#000000",
"magPointerFollowsZoomer": true,
"mouseDwellDelay": 0,
"magBrightnessLevelRed": 0,
"enableMagnifier": false,
"magZoomFactor": 4.0,
"speechServerFactory": "speechdispatcherfactory",
"enableMagZoomerBorder": false,
"flashVerbosityLevel": 1,
"enableFlashMessages": true,
"speechServerInfo": null,
"presentToolTips": false,
"flashIsPersistent": false,
"brailleRequiredStateString": "required",
"firstStart": false,
"largeObjectTextLength": 75,
"enableEchoBySentence": false,
"magContrastLevelBlue": 0,
"magContrastLevelRed": 0,
"enableContractedBraille": false,
"orcaModifierKeys": [
"Insert",
"KP_Insert"
],
"enableMagCursor": true,
"speechRequiredStateString": "required",
"quitOrcaNoConfirmation": false,
"skipBlankCells": false,
"magCursorColor": "#000000",
"enablePositionSpeaking": false,
"magZoomerType": 0,
"onlySpeakDisplayedText": false,
"enableProgressBarUpdates": true,
"wrappedStructuralNavigation": true,
"chatRoomHistories": false,
"brailleVerbosityLevel": 1,
"enableFunctionKeys": true,
"enableModifierKeys": true,
"magCrossHairColor": "#000000",
"enableTutorialMessages": false,
"enableActionKeys": true,
"speakBlankLines": true,
"magColorFilteringMode": 0,
"magZoomerRight": 2400,
"keyboardLayout": 1,
"magTargetDisplay": "",
"disableBrailleEOL": false,
"magZoomerTop": 0,
"magSourceDisplay": "",
"enableDiacriticalKeys": false,
"enableMnemonicSpeaking": false,
"enabledBrailledTextAttributes": "size:; family-name:; weight:400; indent:0; underline:none; strikethrough:false; justification:left; style:normal; text-spelling:none;",
"speechVerbosityLevel": 1,
"enableMagCrossHair": true,
"enableBrailleMonitor": false,
"voices": {
"default": {
"established": false
},
"uppercase": {
"average-pitch": 5.6
},
"system": {
"established": false
},
"hyperlink": {
"established": false
}
},
"magContrastLevelGreen": 0,
"brailleFlashTime": 5000,
"magCrossHairSize": 16,
"enableMouseReview": false,
"enableNavigationKeys": false,
"magBrightnessLevelGreen": 0,
"chatSpeakRoomName": false,
"startingProfile": [
"Default",
"default"
],
"enableLockingKeys": true,
"profile": [
"Default",
"default"
],
"brailleRolenameStyle": 1,
"brailleLinkIndicator": 192,
"enableEchoByCharacter": false,
"magBrightnessLevelBlue": 0,
"enableBrailleContext": true,
"magControlTrackingMode": 2,
"magZoomerBottom": 1920,
"enablePrintableKeys": true,
"enabledSpokenTextAttributes": "size:; family-name:; weight:400; indent:0; underline:none; strikethrough:false; justification:left; style:normal; paragraph-style:; text-spelling:none;",
"chatMessageVerbosity": 0,
"presentTimeFormat": "%X",
"magBrightnessLevel": 0,
"presentRequiredState": false,
"enableMagCrossHairClip": false
}
}