[orca] Add slider test



commit 545bc9b53ea963873da2477b95200fd2c9ba2ed0
Author: Willie Walker <william walker sun com>
Date:   Thu Jun 11 12:36:04 2009 -0400

    Add slider test

 test/harness/bin/slider          |   63 ++++++++++++++++++++++++++++++++
 test/keystrokes/slider/slider.py |   75 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 138 insertions(+), 0 deletions(-)
---
diff --git a/test/harness/bin/slider b/test/harness/bin/slider
new file mode 100755
index 0000000..c5fc867
--- /dev/null
+++ b/test/harness/bin/slider
@@ -0,0 +1,63 @@
+#!/usr/bin/env python
+
+import pygtk
+pygtk.require('2.0')
+import gtk, gobject
+
+class Slider:
+    def __init__(self):
+        self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
+        self.window.set_resizable(True)
+
+        self.window.connect("destroy", self.quit)
+        self.window.set_title("Slider")
+        self.window.set_border_width(0)
+
+        vbox = gtk.VBox(False, 5)
+        vbox.set_border_width(10)
+        self.window.add(vbox)
+        vbox.show()
+  
+        # Create a label
+        self.label = gtk.Label("")
+        vbox.pack_start(self.label, False, False, 0)
+        self.label.show()
+
+        # Create a centering alignment object
+        align = gtk.Alignment(0.5, 0.5, 0, 0)
+        vbox.pack_start(align, False, False, 5)
+        align.show()
+
+        # Create the Slider
+        self.slider = gtk.HScale(adjustment=gtk.Adjustment(
+                value=0,
+                lower=0, upper=10,
+                step_incr=1, page_incr=2, page_size=2))
+
+        align.add(self.slider)
+        self.slider.show()
+        self.label.set_mnemonic_widget(self.slider)
+        self.label.set_text_with_mnemonic("_Some slider:")
+
+        separator = gtk.HSeparator()
+        vbox.pack_start(separator, False, False, 0)
+        separator.show()
+
+        # Add a button to exit the program
+        button = gtk.Button("close")
+        button.connect("clicked", self.quit)
+        vbox.pack_start(button, False, False, 0)
+        button.show()
+
+        self.window.show()
+
+    def quit(self, widget, data=None):
+        gtk.main_quit()
+
+def main():
+    gtk.main()
+    return 0
+
+if __name__ == "__main__":
+    Slider()
+    main()
diff --git a/test/keystrokes/slider/slider.py b/test/keystrokes/slider/slider.py
new file mode 100644
index 0000000..f6f7b48
--- /dev/null
+++ b/test/keystrokes/slider/slider.py
@@ -0,0 +1,75 @@
+#!/usr/bin/python
+
+"""Test of slider output using custom program.
+"""
+
+from macaroon.playback import *
+import utils
+
+sequence = MacroSequence()
+
+########################################################################
+# We wait for the demo to come up and flat review to the progress bar
+#
+sequence.append(WaitForFocus(acc_role=pyatspi.ROLE_SLIDER))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("KP_Enter"))
+sequence.append(PauseAction(3000))
+sequence.append(utils.AssertPresentationAction(
+    "Slider Where Am I",
+    ["BRAILLE LINE:  'slider Application Slider Frame Some slider: 0.0 Slider'",
+     "     VISIBLE:  'Some slider: 0.0 Slider', cursor=1",
+     "SPEECH OUTPUT: 'Some slider: slider 0.0 0 percent Alt s'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Right"))
+sequence.append(WaitAction("object:property-change:accessible-value",
+                           None,
+                           None,
+                           pyatspi.ROLE_SLIDER,
+                           5000))
+sequence.append(utils.AssertPresentationAction(
+    "Increment value",
+    ["BRAILLE LINE:  'slider Application Slider Frame Some slider: 1.0 Slider'",
+     "     VISIBLE:  'Some slider: 1.0 Slider', cursor=1",
+     "SPEECH OUTPUT: '1.0'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("KP_Enter"))
+sequence.append(PauseAction(3000))
+sequence.append(utils.AssertPresentationAction(
+    "Slider Where Am I",
+    ["BRAILLE LINE:  'slider Application Slider Frame Some slider: 1.0 Slider'",
+     "     VISIBLE:  'Some slider: 1.0 Slider', cursor=1",
+     "SPEECH OUTPUT: 'Some slider: slider 1.0 10 percent Alt s'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("Left"))
+sequence.append(WaitAction("object:property-change:accessible-value",
+                           None,
+                           None,
+                           pyatspi.ROLE_SLIDER,
+                           5000))
+sequence.append(utils.AssertPresentationAction(
+    "Decrement value",
+    ["BRAILLE LINE:  'slider Application Slider Frame Some slider: 0.0 Slider'",
+     "     VISIBLE:  'Some slider: 0.0 Slider', cursor=1",
+     "SPEECH OUTPUT: '0.0'"]))
+
+sequence.append(utils.StartRecordingAction())
+sequence.append(KeyComboAction("KP_Enter"))
+sequence.append(PauseAction(3000))
+sequence.append(utils.AssertPresentationAction(
+    "Slider Where Am I",
+    ["BRAILLE LINE:  'slider Application Slider Frame Some slider: 0.0 Slider'",
+     "     VISIBLE:  'Some slider: 0.0 Slider', cursor=1",
+     "SPEECH OUTPUT: 'Some slider: slider 0.0 0 percent Alt s'"]))
+
+# Just a little extra wait to let some events get through.
+#
+sequence.append(PauseAction(3000))
+
+sequence.append(utils.AssertionSummaryAction())
+
+sequence.start()



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