summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdeněk Crhonek <zcrhonek@gmail.com>2018-10-19 22:07:49 +0200
committerZdenek Crhonek <zcrhonek@gmail.com>2018-10-20 07:06:25 +0200
commit4eb277bc08f08826613b0dd08c4d3e8342410260 (patch)
treef3d26f71d141a9010e3a05a93b0b69e0d22634ee
parentfa667b6dc410f3af57ef436cc117352c829f95e7 (diff)
uitest for chapter numbering dialog
Change-Id: Id83c8298618d38d8d6631fabdf8bc1e1326a2d0d Reviewed-on: https://gerrit.libreoffice.org/62032 Tested-by: Jenkins Reviewed-by: Zdenek Crhonek <zcrhonek@gmail.com>
-rw-r--r--sw/Module_sw.mk1
-rw-r--r--sw/UITest_chapterNumbering.mk16
-rw-r--r--sw/qa/uitest/chapterNumbering/chapterNumbering.py113
3 files changed, 130 insertions, 0 deletions
diff --git a/sw/Module_sw.mk b/sw/Module_sw.mk
index 43f2abdc60ce..f55eb121cc5f 100644
--- a/sw/Module_sw.mk
+++ b/sw/Module_sw.mk
@@ -142,6 +142,7 @@ $(eval $(call gb_Module_add_uicheck_targets,sw,\
UITest_writer_tests4 \
UITest_table \
UITest_findReplace \
+ UITest_chapterNumbering \
))
endif
diff --git a/sw/UITest_chapterNumbering.mk b/sw/UITest_chapterNumbering.mk
new file mode 100644
index 000000000000..983bc27522eb
--- /dev/null
+++ b/sw/UITest_chapterNumbering.mk
@@ -0,0 +1,16 @@
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UITest_UITest,chapterNumbering))
+
+$(eval $(call gb_UITest_add_modules,chapterNumbering,$(SRCDIR)/sw/qa/uitest,\
+ chapterNumbering/ \
+))
+
+$(eval $(call gb_UITest_set_defs,chapterNumbering, \
+ TDOC="$(SRCDIR)/sw/qa/uitest/writer_tests/data" \
+))
diff --git a/sw/qa/uitest/chapterNumbering/chapterNumbering.py b/sw/qa/uitest/chapterNumbering/chapterNumbering.py
new file mode 100644
index 000000000000..02e4c39531a1
--- /dev/null
+++ b/sw/qa/uitest/chapterNumbering/chapterNumbering.py
@@ -0,0 +1,113 @@
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+from uitest.framework import UITestCase
+from uitest.debug import sleep
+from uitest.path import get_srcdir_url
+from libreoffice.uno.propertyvalue import mkPropertyValues
+from uitest.uihelper.common import get_state_as_dict, type_text
+from uitest.uihelper.common import select_pos
+
+#Outline Numbering is now Chapter Numbering
+
+class WriterChapterNumbering(UITestCase):
+
+ def test_chapter_numbering_dialog(self):
+ self.ui_test.create_doc_in_start_center("writer")
+ document = self.ui_test.get_component()
+
+ self.ui_test.execute_dialog_through_command(".uno:OptionsTreeDialog") #optionsdialog
+ xDialog = self.xUITest.getTopFocusWindow()
+ xPages = xDialog.getChild("pages")
+ xWriterEntry = xPages.getChild('3') # Writer
+ xWriterEntry.executeAction("EXPAND", tuple())
+ xWriterGeneralEntry = xWriterEntry.getChild('0')
+ xWriterGeneralEntry.executeAction("SELECT", tuple()) #General - set millimeters
+ xMetric = xDialog.getChild("metric")
+ props = {"TEXT": "Millimeter"}
+ actionProps = mkPropertyValues(props)
+ xMetric.executeAction("SELECT", actionProps)
+ xOKBtn = xDialog.getChild("ok")
+ self.ui_test.close_dialog_through_button(xOKBtn)
+
+ self.ui_test.execute_dialog_through_command(".uno:ChapterNumberingDialog")
+ xDialog = self.xUITest.getTopFocusWindow()
+ xstyle = xDialog.getChild("style")
+ xnumbering = xDialog.getChild("numbering")
+ xcharstyle = xDialog.getChild("charstyle")
+ xprefix = xDialog.getChild("prefix")
+ xsuffix = xDialog.getChild("suffix")
+ xstartat = xDialog.getChild("startat")
+ xtab = xDialog.getChild("tabcontrol")
+ #second tab
+ xalignedatmf = xDialog.getChild("alignedatmf")
+ xnum2alignlb = xDialog.getChild("num2alignlb")
+ xnumfollowedbylb = xDialog.getChild("numfollowedbylb")
+ xatmf = xDialog.getChild("atmf")
+ xindentatmf = xDialog.getChild("indentatmf")
+ select_pos(xtab, "0") #first tab
+ props = {"TEXT": "Heading"}
+ actionProps = mkPropertyValues(props)
+ xstyle.executeAction("SELECT", actionProps)
+ props2 = {"TEXT": "1, 2, 3, ..."}
+ actionProps2 = mkPropertyValues(props2)
+ xnumbering.executeAction("SELECT", actionProps2)
+ props3 = {"TEXT": "Bullets"}
+ actionProps3 = mkPropertyValues(props3)
+ xcharstyle.executeAction("SELECT", actionProps3)
+ xprefix.executeAction("TYPE", mkPropertyValues({"TEXT":"A"}))
+ xsuffix.executeAction("TYPE", mkPropertyValues({"TEXT":"B"}))
+ xstartat.executeAction("UP", tuple())
+
+ select_pos(xtab, "1") #second tab Position
+ xalignedatmf.executeAction("UP", tuple())
+ props4 = {"TEXT": "Centered"}
+ actionProps4 = mkPropertyValues(props4)
+ xnum2alignlb.executeAction("SELECT", actionProps4)
+ props5 = {"TEXT": "Tab stop"}
+ actionProps5 = mkPropertyValues(props5)
+ xnumfollowedbylb.executeAction("SELECT", actionProps5)
+ xatmf.executeAction("UP", tuple())
+ xindentatmf.executeAction("UP", tuple())
+
+ xOKBtn = xDialog.getChild("ok")
+ self.ui_test.close_dialog_through_button(xOKBtn)
+
+ self.ui_test.execute_dialog_through_command(".uno:ChapterNumberingDialog")
+ xDialog = self.xUITest.getTopFocusWindow()
+
+ xstyle = xDialog.getChild("style")
+ xnumbering = xDialog.getChild("numbering")
+ xcharstyle = xDialog.getChild("charstyle")
+ xprefix = xDialog.getChild("prefix")
+ xsuffix = xDialog.getChild("suffix")
+ xstartat = xDialog.getChild("startat")
+ xtab = xDialog.getChild("tabcontrol")
+ #second tab
+ xalignedatmf = xDialog.getChild("alignedatmf")
+ xnum2alignlb = xDialog.getChild("num2alignlb")
+ xnumfollowedbylb = xDialog.getChild("numfollowedbylb")
+ xatmf = xDialog.getChild("atmf")
+ xindentatmf = xDialog.getChild("indentatmf")
+ select_pos(xtab, "0")
+ self.assertEqual(get_state_as_dict(xstyle)["SelectEntryText"], "Heading")
+ self.assertEqual(get_state_as_dict(xnumbering)["SelectEntryText"], "1, 2, 3, ...")
+ self.assertEqual(get_state_as_dict(xcharstyle)["SelectEntryText"], "Bullets")
+ self.assertEqual(get_state_as_dict(xprefix)["Text"], "A")
+ self.assertEqual(get_state_as_dict(xsuffix)["Text"], "B")
+ self.assertEqual(get_state_as_dict(xstartat)["Text"], "2")
+ select_pos(xtab, "1") #second tab Position
+ self.assertEqual(get_state_as_dict(xalignedatmf)["Text"], "0.1 mm")
+ self.assertEqual(get_state_as_dict(xnum2alignlb)["SelectEntryText"], "Centered")
+ self.assertEqual(get_state_as_dict(xnumfollowedbylb)["SelectEntryText"], "Tab stop")
+ self.assertEqual(get_state_as_dict(xatmf)["Text"], "0.1 mm")
+ self.assertEqual(get_state_as_dict(xindentatmf)["Text"], "0.1 mm")
+ xCancelBtn = xDialog.getChild("cancel")
+ self.ui_test.close_dialog_through_button(xCancelBtn)
+
+ self.ui_test.close_doc()
+# vim: set shiftwidth=4 softtabstop=4 expandtab: