Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog13
-rw-r--r--configure.ac26
-rw-r--r--data/evince-password.glade3
-rw-r--r--test/Makefile.am4
-rw-r--r--test/test-encrypt.pdfbin0 -> 26501 bytes
-rw-r--r--test/test-links.pdfbin0 -> 15151 bytes
-rwxr-xr-xtest/test1.py27
-rwxr-xr-xtest/test2.py22
8 files changed, 82 insertions, 13 deletions
diff --git a/ChangeLog b/ChangeLog
index 09622b6..9044eea 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2006-10-24 Nickolay V. Shmyrev <nshmyrev@yandex.ru>
+
+ * configure.ac:
+ * data/evince-password.glade:
+ * test/Makefile.am:
+ * test/test-encrypt.pdf:
+ * test/test-links.pdf:
+ * test/test1.py:
+ * test/test2.py:
+
+ Add automated UI tests for evince with dogtail. See
+ bug #300948.
+
2006-10-22 Carlos Garcia Campos <carlosgc@gnome.org>
* shell/ev-window.c: (fullscreen_timeout_cb), (ev_window_init):
diff --git a/configure.ac b/configure.ac
index a33b02b..9ab4bbf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -367,35 +367,35 @@ fi
AC_SUBST(EVINCE_MIME_TYPES)
AC_CONFIG_FILES([
-Makefile
+backend/Makefile
+comics/Makefile
cut-n-paste/Makefile
cut-n-paste/recent-files/Makefile
-cut-n-paste/zoom-control/Makefile
cut-n-paste/toolbar-editor/Makefile
-data/Makefile
+cut-n-paste/zoom-control/Makefile
data/evince.desktop.in
-data/icons/Makefile
data/icons/16x16/Makefile
data/icons/22x22/Makefile
data/icons/48x48/Makefile
+data/icons/Makefile
data/icons/scalable/Makefile
-
-lib/Makefile
-pdf/Makefile
-pixbuf/Makefile
-tiff/Makefile
-ps/Makefile
+data/Makefile
djvu/Makefile
dvi/Makefile
dvi/mdvi-lib/Makefile
+help/Makefile
impress/Makefile
-comics/Makefile
+lib/Makefile
+Makefile
+pdf/Makefile
+pixbuf/Makefile
po/Makefile.in
-backend/Makefile
properties/Makefile
+ps/Makefile
shell/Makefile
+test/Makefile
thumbnailer/Makefile
-help/Makefile
+tiff/Makefile
])
AC_OUTPUT
diff --git a/data/evince-password.glade b/data/evince-password.glade
index 3d09a3c..7eab071 100644
--- a/data/evince-password.glade
+++ b/data/evince-password.glade
@@ -154,6 +154,9 @@
<property name="text" translatable="yes"></property>
<property name="has_frame">True</property>
<property name="activates_default">True</property>
+ <accessibility>
+ <atkproperty name="AtkObject::accessible_name" translatable="yes">Password Entry</atkproperty>
+ </accessibility>
</widget>
<packing>
<property name="padding">0</property>
diff --git a/test/Makefile.am b/test/Makefile.am
new file mode 100644
index 0000000..dc0b1a3
--- /dev/null
+++ b/test/Makefile.am
@@ -0,0 +1,4 @@
+
+TESTS = test1.py test2.py
+
+EXTRA_DIST = test-encrypted.pdf test-links.pdf \ No newline at end of file
diff --git a/test/test-encrypt.pdf b/test/test-encrypt.pdf
new file mode 100644
index 0000000..8f8f5c1
--- /dev/null
+++ b/test/test-encrypt.pdf
Binary files differ
diff --git a/test/test-links.pdf b/test/test-links.pdf
new file mode 100644
index 0000000..0b1e620
--- /dev/null
+++ b/test/test-links.pdf
Binary files differ
diff --git a/test/test1.py b/test/test1.py
new file mode 100755
index 0000000..8c05ebd
--- /dev/null
+++ b/test/test1.py
@@ -0,0 +1,27 @@
+#!/usr/bin/python
+
+from dogtail.procedural import *
+from dogtail.utils import screenshot
+
+import os
+
+os.environ['LANG']='en_US.UTF-8'
+os.system ('rm -rf ~/.gnome2/evince')
+
+run('evince')
+
+focus.application('evince')
+
+click('File', roleName='menu')
+click('Open...', roleName='menu item')
+focus.dialog('Open Document')
+click('Cancel', roleName='push button')
+click('File', roleName='menu')
+click('Toolbar', roleName='menu item')
+focus.dialog('Toolbar Editor')
+click('Close', roleName='push button')
+click('About', roleName='menu item')
+focus.dialog('About Evince')
+click('Close', roleName='push button')
+click('Close', roleName='menu item')
+
diff --git a/test/test2.py b/test/test2.py
new file mode 100755
index 0000000..7e52c57
--- /dev/null
+++ b/test/test2.py
@@ -0,0 +1,22 @@
+#!/usr/bin/python
+
+from dogtail.procedural import *
+from dogtail.utils import screenshot
+
+import os
+
+os.environ['LANG']='en_US.UTF-8'
+os.system ('rm -rf ~/.gnome2/evince')
+
+run('evince',arguments=' ./test-encrypt.pdf',)
+focus.dialog('Enter password')
+focus.widget('Password Entry', roleName='password text')
+type("wrong password")
+click('OK', roleName='push button')
+click('Cancel', roleName='push button')
+click('Unlock Document', roleName='push button')
+focus.widget('Password Entry', roleName='password text')
+type("Foo")
+click('OK', roleName='push button')
+click('Close', roleName='menu item')
+