summaryrefslogtreecommitdiff
path: root/uitest
AgeCommit message (Collapse)Author
2021-02-24uitest: no need to pass the parent as a parameterXisco Fauli
Change-Id: I750b5600d3e4ef8ba5a0666133b9066904b4cbec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111450 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-02-10uitest: sd: check embedded document is open in a new dialogXisco Fauli
Change-Id: Ie2e9e7c9f97fba5f4bb8915098e61f86947197fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110702 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-02-01tdf#100024: uitest: add comment to existing testXisco Fauli
Change-Id: I120f54616df5c7399707b174b7609f6a82e1183c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110269 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-01-22tdf#118308: sc: Add UItestXisco Fauli
Change-Id: I4d23b4eda9ab3333eb0c062259601ba9bfb2179d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109775 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-01-15uitest: sw: factor out common code ( part 3 )Xisco Fauli
Change-Id: I8c65b9729b4a5c91c77c278282b54a9410876ca9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109259 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-01-12uitest: sc: factor out common code ( part 1 )Xisco Fauli
Change-Id: Ib0b84349c138d361001af4547d91a81d8b5d8e63 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109166 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-01-06uitest: sd: test rotate objectXisco Fauli
Change-Id: I3b4e8c4a0cfb29a42350de00b0086e407ac70946 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108811 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-12-17tdf#138976 change "Cancel" button to "Close" in Template Manager dialogSeth Chaiklin
Change-Id: I3e8cbdb70f70002f1fe2b873e899f25a72463358 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107704 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-12-16uitest: sd: remove duplicated tests and add missing assertXisco Fauli
Change-Id: If2a100e3eef038cc1de1e28cf923e682be7618c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107841 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-12-16uitest: sd: Check Position and Size dialog after moving...Xisco Fauli
and resizing objects Change-Id: I63ccc96c07a973b53bf448d3a3d2d4eeac406c4d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107853 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-12-16uitest: sd: fix GOTOXisco Fauli
pages count starts from 0 Change-Id: I31ce182af1bccf9b129e9c0f2f409ee81419902b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107840 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-12-16uitest: sd: Add asserts to existing testsXisco Fauli
Change-Id: Ie95d5f1074c9431063e97ffffa521e17e97192b1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107834 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-11-17tdf#137930: uitest: Add assert to check values are not resetXisco Fauli
Change-Id: I28ad4a717000fab894f3df7c41b8e8eeaff5fad2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105177 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-11-05Make order of UITest *.py test file processing deterministicStephan Bergmann
...hoping that this can prevent issues like the one seen with 1b0eb76eb1787d9d9fbd7a7a73ee8ae47b62dc33 "tdf#137617: sc: Add UItest" followed by d1232ee6b5e5cc3c811ef3ad72c83e9bd884bfe3 "uitest: reset formula syntax back to Calc A1" (i.e., where the first commit's Gerrit Jenkins build had apparently only succeeded because it happened to run the tests in one specific order, different from the order in which later, failing builds ran it) Change-Id: I4f1b5ada10d60e77b45a0edeb89069fe9376b63e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105325 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-10-27uitest: move all calc tests to sc/qa/uitestXisco Fauli
and remove a few duplicated ones Change-Id: I409ca78dcd7a67e993f6b3a1493ffa6fefd127b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104864 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-27uitest: sw: forgot to move this fileXisco Fauli
Change-Id: I429e6ff82cb28bea0c700a7d382509a524aad57d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104827 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-27tdf#104649: move UItest to CppunitTestXisco Fauli
Change-Id: I950432390e65dfabb4562a61b6091b085b9f5d0c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104813 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-26uitest: move all writer tests to sw/qa/uitestXisco Fauli
remove a few duplicated ones Change-Id: I25b031c8fe11ae28f55978f8a25528c307a908e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104814 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-24uitest: sc: get_url_for_data_file -> pathlib.PathXisco Fauli
Change-Id: Iea16b30e74a5bbc5fe155f1265d5c05bf104995c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104729 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-23uitest: get_url_for_data_file -> pathlib.PathXisco Fauli
Change-Id: Ib8495528e44f6b1e1f9992cb38d38cca21cfee42 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104724 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-23uitest: move navigator tests to their own folderXisco Fauli
Change-Id: Iacc2e21fde8fc126752d0b1fa14cd1f962930d4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104723 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-23uitest: remove duplicated testsXisco Fauli
already covered in sc/qa/uitest/autofilter/autofilter.py Change-Id: I55259bdf741bcf3d51f7970b070bb15aaf144f22 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104722 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-10-01uitest: factor out common duplicated codeXisco Fauli
Change-Id: Ib6d4edaf3bd1b0a4078c277d1139d7b0db479e2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103757 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-09-04uilogger : Add support in the Logger and DSL for MenuBtnAhmed ElShreif
For example the DSL syntax will be: >>Open List From menugearbtn >>Select item no 6 From List of menugearbtn >>Close List From menugearbtn Change-Id: I767948d9bc124a119632825d437746ea38c40ad3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101514 Tested-by: Jenkins Reviewed-by: Ahmed ElShreif <aelshreif7@gmail.com>
2020-09-01uilogger : Add support in the Logger and DSL for Writer-CommentsAhmed ElShreif
For example the DSL syntax will be: >>Delete Comment1 >>Leave Comment1 >>Show Comment1 >>Hide Comment1 >>Resolve Comment1 Change-Id: Ibdd52f3a12f1679f80e9f3290868c77fbf942d6b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101513 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2020-09-01uilogger : Add support in the Logger and DSL for Calc-CommentsAhmed ElShreif
For example the DSL syntax will be: >>Open Comment >>Close Comment The set text is already added by default to the system Change-Id: Ic06e00e75e202eece82fa6265e1bb4083fd8c337 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101502 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2020-08-29Fix typo in codeAndrea Gelmini
It passed "make on check" on Linux Change-Id: Ia1d8d828eea7ca3f39559bd2554cb9778ca6bb32 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101599 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-08-27uilogger : Add support in the Logger and DSL for ValueSetAhmed ElShreif
For example the DSL syntax will be: >>Choose element with position 18 in 'colorset' from 'cui/ui/colorpage/colorset' Change-Id: I9186b870da096719873c8709dedbc4bb4d315e2c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101267 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2020-08-24uilogger : Add support in the Logger and DSL for the ToolBoxAhmed ElShreif
The support is tested on the FindBar and it works well . For example the DSL syntax in the FindBar should be like: >>"Click on item number 3 in FindBar" Change-Id: I3ec5f5afc260df4b38dc4e420fcc48d9c774c29f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100811 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2020-08-21uilogger : Add support in the Logger and DSL for the LAUNCHMENU in CALCAhmed ElShreif
The support is tested on some random test cases. For example the DSL syntax will be: >>"Launch SELECTMENU from Col 3 and Row 5" Change-Id: Ic5b29ad8b377eed5c38aa1d0f680cbfb979763e6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100958 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2020-08-21Fix typosAndrea Gelmini
Change-Id: Iaf1d4aed07d1e6fcfe2392fb65cbd2fa196bcc1c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101099 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-08-06uitest : Add demo for gear button menu in Tools->CustomizeAhmed ElShreif
Change-Id: I3f0596ad044560a424ca6786197c250bff2429bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99568 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2020-07-03uitest: Fix small issue in UI Logger DSL grammar "EditUIObject"Ahmed ElShreif
Change-Id: I5ce8f14f4075e6d2f79b3c20ce1686b644f87d27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97691 Tested-by: Jenkins Reviewed-by: Ahmed ElShreif <aelshreif7@gmail.com>
2020-06-11tdf#133862: sw: Add UItestXisco Fauli
Change-Id: Id08dc6fbbdb59888ecab29e922d84db75f97e779 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96087 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2020-06-09Print more information about the swallowed exceptionsStephan Bergmann
Change-Id: I126413f9eb5c5698e4500c4fc5e04f31a9c574fd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95895 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-06-08Reliably terminate soffice.bin when terminating sofficeStephan Bergmann
d58a3e5f85d44efc9d21dd56329a3ef20cb3692f "Reliably terminate soffice when connect throws an exception" had been a partial thinko: When kill()'ing (i.e., sending SIGKILL on POSIX) soffice (aka oosplash exec'ed from it), the soffice.bin forked from it can still keep on running. So terminate() (i.e., send SIGTERM on POSIX) soffice aka ooslpash, and in its sigterm_handler actually wait for the soffice.bin process. (Where the latter should just be a saftey measure. At least on POSIX, osl_terminateProcess as called from the oosplash sigterm_handler sends a SIGKILL, so should swiftly and reliably kill the soffice.bin process.) Change-Id: Ifd6930691dce34894e76c417e152111983d62b8c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95779 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-06-05self.socket appears to be unusedStephan Bergmann
...ever since the code appeared here with 29cd5a2f5e14a7f3d95cacb644a69a2df91ea8f8 "uitest: move uitest python part from dev-tools" Change-Id: I0549896691c2e2e1168eea4723abf5b014b56443 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95575 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-06-05Reliably terminate soffice when connect throws an exceptionStephan Bergmann
...in which case setUp has already started self.soffice, but tearDown will never be called. For example, <https://ci.libreoffice.org//job/lo_tb_master_linux_dbg/29836/> had thrown a css.uno.RuntimeException (for reasons that remain unclear) during setUp of test_tdf46885_crash_chart_multiple_empty_cells_selected, and an soffice -> oosplash -> soffice.bin process duo apparently kept running, so that all the later tests' setUp each spawned an soffice -> oosplash that noticed that another soffice.bin was still running, so would quickly terminate again, so connect would raise a (somewhat misleading) "soffice has stopped" exception: [...] > ====================================================================== > ERROR: test_tdf46885_crash_chart_multiple_empty_cells_selected (tdf46885.tdf46885) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 99, in connect > xContext = xUnoResolver.resolve(url) > uno.com.sun.star.uno.RuntimeException: initial object queryInterface for OID "StarOffice.ComponentContext" returned ANY of type boolean /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/binaryurp/source/bridge.cxx:884 > > ====================================================================== > ERROR: test_tdf46885_crash_chart_no_cell_selected_nextButton (tdf46885.tdf46885) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf93506_chart_trendline_dialog (tdf93506_trendline.tdf93506) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_format_data_series_dialog (formatDataSeries.chartFormatDataSeries) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf122398_chart_min_max_x_axis (tdf122398.tdf122398) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_x_axis_dialog (chartXAxis.chartXAxis) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_y_axis_dialog (chartYAxis.chartYAxis) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_area_dialog (chartArea.chartArea) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf98390_chart_grid_dialog (chartGrid.chartGrid) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_enable_grids_dialog (chartAxes.chartAxes) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_enable_grids_dialog (chartGrids.chartGrids) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_display_legend_dialog (chartLegend.chartLegend) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_display_titles_dialog (chartTitles.chartTitles) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf123231_chart_trendline_dialog_power (tdf123231.tdf123231) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf124111_chart_x_negative_cross (tdf124111.tdf124111) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf123520_chart_y_cross_other_axis (tdf123520.tdf123520) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf99069_chart_cancel_data_ranges_dialog (tdf99069.tdf99069) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_wall_dialog (chartWall.chartWall) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_chart_data_labels_dialog (chartDataLabels.chartDataLabels) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > Exception ignored in: <function Popen.__del__ at 0x2b7ce7e4e170> > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/instdir/program/python-core-3.7.7/lib/subprocess.py", line 883, in __del__ > ResourceWarning, source=self) > ResourceWarning: subprocess 23070 is still running > > ====================================================================== > ERROR: test_chart_data_labels_percentage_dialog (chartDataLabels.chartDataLabels) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf131291 (chartDataLabels.chartDataLabels) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf131715 (tdf131715.tdf131715) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf129587 (tdf129587.tdf129587) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ====================================================================== > ERROR: test_tdf96432_chart_crash_transparency_error_bar_dialog (tdf96432.tdf96432) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/uitest/framework.py", line 25, in setUp > self.connection.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 169, in setUp > conn.setUp() > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 55, in setUp > self.xContext = self.connect(socket) > File "/home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/uitest/libreoffice/connection.py", line 96, in connect > raise Exception("soffice has stopped.") > Exception: soffice has stopped. > > ---------------------------------------------------------------------- > Ran 26 tests in 61.194s > > FAILED (errors=24) > Tests run: 26 > Tests failed: 0 > Tests errors: 24 > Tests skipped: 0 > > Error: a unit test failed: > > To rerun just this failed test without all others, use: > make UITest_chart Change-Id: I743ada93e11c3b89991f0a72229f8c3003259241 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95595 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-06-04Remove unused self.proStephan Bergmann
...which became unused with 2959c99bae8a8199a8c5c4d4933707ab98acfffa "uitest: let us remove the kill part" Change-Id: I588de0c98b1b25e13faba4142587c019ea801c14 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95512 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-06-04Adapt documentationStephan Bergmann
...to 43aef04d77aafb9d055957642e62b559231f3711 "Reliably wait for soffice to terminate" Change-Id: Ieb0702196cd5f95d382a0f18c4bca1b01182d006 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95483 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-06-03uitest: avoid defining the same object multiple time in in mathShiko
Change-Id: I1ee5cde133390ca285bb154e6a373e0e5bc1cbed Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95334 Tested-by: Jenkins Reviewed-by: Ahmed ElShreif <aelshreif7@gmail.com>
2020-05-25Do not time out execute_dialog_through_commandStephan Bergmann
If something goes wrong, better keep the testing Python and the tested soffice process in a state in which the actual problem can (hopefully) be debugged better. I happened to run into a hung UITest_options on Linux, where soffice.bin was still at > Thread 1 (Thread 0x7fa6371d9fc0 (LWP 1210042)): > #0 futex_abstimed_wait_cancelable (private=0, abstime=0x7fa633a17f80, clockid=<optimized out>, expected=0, futex_word=0x60e000024e88) at /usr/src/debug/glibc-2.31-17-gab029a2801/sysdeps/nptl/futex-internal.h:320 > #1 __pthread_cond_wait_common (abstime=0x7fa633a17f80, clockid=<optimized out>, mutex=0x60e000024e38, cond=0x60e000024e60) at /usr/src/debug/glibc-2.31-17-gab029a2801/nptl/pthread_cond_wait.c:520 > #2 __pthread_cond_clockwait (abstime=0x7fa633a17f80, clockid=<optimized out>, mutex=0x60e000024e38, cond=0x60e000024e60) at /usr/src/debug/glibc-2.31-17-gab029a2801/nptl/pthread_cond_wait.c:677 > #3 __pthread_cond_clockwait (cond=0x60e000024e60, mutex=0x60e000024e38, clockid=<optimized out>, abstime=0x7fa633a17f80) at /usr/src/debug/glibc-2.31-17-gab029a2801/nptl/pthread_cond_wait.c:665 > #4 0x00007fa66899be08 in std::condition_variable::__wait_until_impl<std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) (this=0x60e000024e60, __lock=..., __atime=...) at include/c++/10.0.1/condition_variable:210 > #5 0x00007fa66899b895 in std::condition_variable::wait_until<std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) (this=0x60e000024e60, __lock=..., __atime=...) at include/c++/10.0.1/condition_variable:120 > #6 0x00007fa668997505 in std::condition_variable::wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, SvpSalInstance::DoYield(bool, bool)::$_2>(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, SvpSalInstance::DoYield(bool, bool)::$_2) (this=0x60e000024e60, __lock=..., __atime=..., __p=...) at include/c++/10.0.1/condition_variable:159 > #7 0x00007fa668995460 in std::condition_variable::wait_for<long, std::ratio<1l, 1000l>, SvpSalInstance::DoYield(bool, bool)::$_2>(std::unique_lock<std::mutex>&, std::chrono::duration<long, std::ratio<1l, 1000l> > const&, SvpSalInstance::DoYield(bool, bool)::$_2) (this=0x60e000024e60, __lock=..., __rtime=..., __p=...) at include/c++/10.0.1/condition_variable:186 > #8 0x00007fa66899408e in SvpSalInstance::DoYield(bool, bool) (this=0x611000001bc0, bWait=true, bHandleAllCurrentEvents=false) at vcl/headless/svpinst.cxx:497 > #9 0x00007fa667e7114d in ImplYield(bool, bool) (i_bWait=true, i_bAllEvents=false) at vcl/source/app/svapp.cxx:455 > #10 0x00007fa667e70708 in Application::Yield() () at vcl/source/app/svapp.cxx:519 > #11 0x00007fa66498f6cd in Dialog::Execute() (this=0x618003c16480) at vcl/source/window/dialog.cxx:1030 > #12 0x00007fa667a93812 in SalInstanceDialog::run() (this=0x616000575780) at vcl/source/app/salvtables.cxx:1482 > #13 0x00007fa2e8711b8d in weld::DialogController::run() (this=0x60c004e70d80) at include/vcl/weld.hxx:2289 > #14 0x00007fa2e98a6cbc in OfaTreeOptionsDialog::run() (this=0x60c004e70d80) at cui/source/options/treeopt.cxx:1937 > #15 0x00007fa2e90c4d15 in CuiAbstractController_Impl::Execute() (this=0x60300187b4f0) at cui/source/factory/dlgfact.cxx:103 > #16 0x00007fa688bc9b2d in SfxApplication::OfaExec_Impl(SfxRequest&) (this=0x604006f2fe10, rReq=...) at sfx2/source/appl/appserv.cxx:1311 > #17 0x00007fa688b17655 in SfxStubSfxApplicationOfaExec_Impl(SfxShell*, SfxRequest&) (pShell=0x604006f2fe10, rReq=...) at workdir/SdiTarget/sfx2/sdi/sfxslots.hxx:1270 > #18 0x00007fa6892521f6 in SfxShell::CallExec(void (*)(SfxShell*, SfxRequest&), SfxRequest&) (this=0x604006f2fe10, pFunc=0x7fa688b17530 <SfxStubSfxApplicationOfaExec_Impl(SfxShell*, SfxRequest&)>, rReq=...) at include/sfx2/shell.hxx:197 > #19 0x00007fa6891dbb1f in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) (this=0x6020013430b0, rShell=..., rSlot=..., rReq=..., bRecord=true) at sfx2/source/control/dispatch.cxx:252 > #20 0x00007fa6891defd6 in SfxDispatcher::PostMsgHandler(std::unique_ptr<SfxRequest, std::default_delete<SfxRequest> >) (this=0x6020013430b0, pReq=std::unique_ptr<class SfxRequest> = {...}) at sfx2/source/control/dispatch.cxx:989 [...] but the Python process was already at > Traceback (most recent call first): > <built-in method waitpid of module object at remote 0x60800002d140> > File "instdir/program/python-core-3.7.7/lib/subprocess.py", line 1611, in _try_wait > (pid, sts) = os.waitpid(self.pid, wait_flags) > File "instdir/program/python-core-3.7.7/lib/subprocess.py", line 1653, in _wait > (pid, sts) = self._try_wait(0) > File "instdir/program/python-core-3.7.7/lib/subprocess.py", line 1019, in wait > return self._wait(timeout=timeout) > File "uitest/libreoffice/connection.py", line 133, in tearDown > ret = self.soffice.wait() > File "uitest/libreoffice/connection.py", line 178, in tearDown > self.connection.tearDown() > File "uitest/uitest/framework.py", line 46, in tearDown > self.connection.tearDown() > File "instdir/program/python-core-3.7.7/lib/unittest/case.py", line 631, in run > self.tearDown() > File "instdir/program/python-core-3.7.7/lib/unittest/case.py", line 676, in __call__ > return self.run(*args, **kwds) > File "instdir/program/python-core-3.7.7/lib/unittest/suite.py", line 122, in run > test(result) > File "instdir/program/python-core-3.7.7/lib/unittest/suite.py", line 84, in __call__ > return self.run(*args, **kwds) > File "instdir/program/python-core-3.7.7/lib/unittest/runner.py", line 176, in run > test(result) > File "uitest/test_main.py", line 128, in <module> > result = unittest.TextTestRunner(stream=sys.stdout, verbosity=2).run(test_suite) and the relevant > ====================================================================== > ERROR: test_tdf78133_options_app_colors (tdf78133.tdf78133) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "sw/qa/uitest/options/tdf78133.py", line 38, in test_tdf78133_options_app_colors > self.ui_test.execute_dialog_through_command(".uno:OptionsTreeDialog") #optionsdialog > File "uitest/uitest/test.py", line 78, in execute_dialog_through_command > raise DialogNotExecutedException(command) > uitest.test.DialogNotExecutedException: Dialog not executed for: .uno:OptionsTreeDialog had not yet been written to workdir/UITest/options/done.log (Python's unittest appears to unhelpfully hold back such vital information until the very end of the full test run). There appears to be no test code that relies on a timed-out execute_dialog_through_command throwing an exception instead of hanging (at least, there is no explicit catching of DialogNotExecutedException anywhere in the code, and a full `make check screenshot` on Linux kept working with this change). (This is similar to 19d3dba72fd744ab8dc1288b1c7c4c811b24ca28 "Do not time out close_dialog_through_button".) Change-Id: Ie907a091ae09b59e65c4b2676298e147c9d2da2f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94786 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-05-22uitest: Add wait methods for slow elementsXisco Fauli
some elements take some time to be updated, specially with slow machines or ASan+UBSan builds Use the same time based approach used for launching the dialogs also reintroduce 634ce6f2d87a30b8abd2e8c67668e3bb5d87406b Change-Id: Ia1cca74474ef65578bbc60a53a8a511402a082b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94648 Tested-by: Xisco Faulí <xiscofauli@libreoffice.org> Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2020-05-21uitest: sw: grab focus before using toggle button in navigatorXisco Fauli
otherwise the focus in on the document since ada385f1cba427416c1e8517cb6a45b61ceff7b0 Change-Id: Ia8300fdceb4f50f89c6d90f238483a4c785163d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94647 Tested-by: Xisco Faulí <xiscofauli@libreoffice.org> Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2020-05-17Fix typosAndrea Gelmini
Change-Id: I3ecb671165ba65baaf304e7afec097209c8c88d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94384 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-05-17uitest: Fix some issue in the UI Logger DSL coreEL-SHREIF
It solve these problems: 1) math generated test cases wasn't run because the element selector wasn't initialized 2) avoid variables that has variable name equal number only 3) avoid reusing UI object that reference to closed dialog Change-Id: I21221716bfa76889b6563955f60a7f99143fe9c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94338 Tested-by: Jenkins Reviewed-by: Ahmed ElShreif <aelshreif7@gmail.com>
2020-05-11uitest: Fix small issue in UI Logger DSL grammarEL-SHREIF
Change-Id: Ia9ffcd1665dad3d3d2827d40bcec345186e53aef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93927 Tested-by: Jenkins Reviewed-by: Ahmed ElShreif <aelshreif7@gmail.com>
2020-04-27Do not time out close_dialog_through_buttonStephan Bergmann
If something goes wrong, better keep the testing Python and the tested soffice process in a state in which the actual problem can (hopefully) be debugged better. I happened to run into a hung UITest_chart on Linux, where soffice.bin was still at > Thread 1 (Thread 0x7f2e2b280fc0 (LWP 1906251)): > #0 futex_abstimed_wait_cancelable (private=0, abstime=0x7f2e27b59a80, clockid=<optimized out>, expected=0, futex_word=0x60e000024e8c) at /usr/src/debug/glibc-2.31-17-gab029a2801/sysdeps/nptl/futex-internal.h:320 > #1 __pthread_cond_wait_common (abstime=0x7f2e27b59a80, clockid=<optimized out>, mutex=0x60e000024e38, cond=0x60e000024e60) at /usr/src/debug/glibc-2.31-17-gab029a2801/nptl/pthread_cond_wait.c:520 > #2 __pthread_cond_clockwait (abstime=0x7f2e27b59a80, clockid=<optimized out>, mutex=0x60e000024e38, cond=0x60e000024e60) at /usr/src/debug/glibc-2.31-17-gab029a2801/nptl/pthread_cond_wait.c:677 > #3 __pthread_cond_clockwait (cond=0x60e000024e60, mutex=0x60e000024e38, clockid=<optimized out>, abstime=0x7f2e27b59a80) at /usr/src/debug/glibc-2.31-17-gab029a2801/nptl/pthread_cond_wait.c:665 > #4 0x00007f2e5fead808 in std::condition_variable::__wait_until_impl<std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) (this=0x60e000024e60, __lock=..., __atime=...) at include/c++/10.0.1/condition_variable:210 > #5 0x00007f2e5fead295 in std::condition_variable::wait_until<std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) (this=0x60e000024e60, __lock=..., __atime=...) at include/c++/10.0.1/condition_variable:120 > #6 0x00007f2e5fea8f05 in std::condition_variable::wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, SvpSalInstance::DoYield(bool, bool)::$_2>(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, SvpSalInstance::DoYield(bool, bool)::$_2) (this=0x60e000024e60, __lock=..., __atime=..., __p=...) at include/c++/10.0.1/condition_variable:159 > #7 0x00007f2e5fea6e60 in std::condition_variable::wait_for<long, std::ratio<1l, 1000l>, SvpSalInstance::DoYield(bool, bool)::$_2>(std::unique_lock<std::mutex>&, std::chrono::duration<long, std::ratio<1l, 1000l> > const&, SvpSalInstance::DoYield(bool, bool)::$_2) (this=0x60e000024e60, __lock=..., __rtime=..., __p=...) at include/c++/10.0.1/condition_variable:186 > #8 0x00007f2e5fea5a8e in SvpSalInstance::DoYield(bool, bool) (this=0x611000001bc0, bWait=true, bHandleAllCurrentEvents=false) at vcl/headless/svpinst.cxx:497 > #9 0x00007f2e5f3a232d in ImplYield(bool, bool) (i_bWait=true, i_bAllEvents=false) at vcl/source/app/svapp.cxx:454 > #10 0x00007f2e5f3a18e8 in Application::Yield() () at vcl/source/app/svapp.cxx:518 > #11 0x00007f2e5bf32c2d in Dialog::Execute() (this=0x61a000072080) at vcl/source/window/dialog.cxx:1032 > #12 0x00007f2e5efdcd62 in SalInstanceDialog::run() (this=0x619000091080) at vcl/source/app/salvtables.cxx:1480 > #13 0x00007f2dc37421fd in weld::DialogController::run() (this=0x61200077c5c0) at include/vcl/weld.hxx:2227 > #14 0x00007f2dc39672f2 in chart::CreationWizardUnoDlg::execute() (this=0x610000168d40) at chart2/source/controller/dialogs/dlg_CreationWizard_UNO.cxx:189 > #15 0x00007f2df91f2507 in FuInsertChart::FuInsertChart(ScTabViewShell&, vcl::Window*, ScDrawView*, SdrModel*, SfxRequest&) (this=0x7f2e27f1a300, rViewSh=..., pWin=0x61a0001e8a80, pViewP=0x61d0001f6880, pDoc=0x617000066a00, rReq=...) at sc/source/ui/drawfunc/fuins2.cxx:673 > #16 0x00007f2dfaf9a379 in ScTabViewShell::ExecDrawIns(SfxRequest&) (this=0x61d0001eaa80, rReq=...) at sc/source/ui/view/tabvwshb.cxx:336 > #17 0x00007f2dfaedf365 in SfxStubScTabViewShellExecDrawIns(SfxShell*, SfxRequest&) (pShell=0x61d0001eaa80, rReq=...) at workdir/SdiTarget/sc/sdi/scslots.hxx:1447 > #18 0x00007f2e8031ded6 in SfxShell::CallExec(void (*)(SfxShell*, SfxRequest&), SfxRequest&) (this=0x61d0001eaa80, pFunc=0x7f2dfaedf240 <SfxStubScTabViewShellExecDrawIns(SfxShell*, SfxRequest&)>, rReq=...) at include/sfx2/shell.hxx:197 > #19 0x00007f2e802a77ff in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) (this=0x6020002f3dd0, rShell=..., rSlot=..., rReq=..., bRecord=true) at sfx2/source/control/dispatch.cxx:251 > #20 0x00007f2e802aacb6 in SfxDispatcher::PostMsgHandler(std::unique_ptr<SfxRequest, std::default_delete<SfxRequest> >) (this=0x6020002f3dd0, pReq=std::unique_ptr<class SfxRequest> = {...}) at sfx2/source/control/dispatch.cxx:988 [...] but the Python process was already at > Traceback (most recent call first): > <built-in method waitpid of module object at remote 0x60800002d1c0> > File "instdir/program/python-core-3.7.7/lib/subprocess.py", line 1611, in _try_wait > (pid, sts) = os.waitpid(self.pid, wait_flags) > File "instdir/program/python-core-3.7.7/lib/subprocess.py", line 1653, in _wait > (pid, sts) = self._try_wait(0) > File "instdir/program/python-core-3.7.7/lib/subprocess.py", line 1019, in wait > return self._wait(timeout=timeout) > File "uitest/libreoffice/connection.py", line 133, in tearDown > ret = self.soffice.wait() > File "uitest/libreoffice/connection.py", line 178, in tearDown > self.connection.tearDown() > File "uitest/uitest/framework.py", line 46, in tearDown > self.connection.tearDown() > File "instdir/program/python-core-3.7.7/lib/unittest/case.py", line 631, in run > self.tearDown() > File "instdir/program/python-core-3.7.7/lib/unittest/case.py", line 676, in __call__ > return self.run(*args, **kwds) > File "instdir/program/python-core-3.7.7/lib/unittest/suite.py", line 122, in run > test(result) > File "instdir/program/python-core-3.7.7/lib/unittest/suite.py", line 84, in __call__ > return self.run(*args, **kwds) > File "instdir/program/python-core-3.7.7/lib/unittest/runner.py", line 176, in run > test(result) > File "uitest/test_main.py", line 128, in <module> > result = unittest.TextTestRunner(stream=sys.stdout, verbosity=2).run(test_suite) and the relevant > ====================================================================== > ERROR: test_tdf99069_chart_cancel_data_ranges_dialog (tdf99069.tdf99069) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "sc/qa/uitest/chart/tdf99069.py", line 32, in test_tdf99069_chart_cancel_data_ranges_dialog > self.ui_test.execute_dialog_through_command(".uno:InsertObjectChart") > File "uitest/uitest/test.py", line 83, in execute_dialog_through_command > raise DialogNotExecutedException(command) > uitest.test.DialogNotExecutedException: Dialog not executed for: .uno:InsertObjectChart had not yet been written to workdir/UITest/chart/done.log (Python's unittest appears to unhelpfully hold back such vital information until the very end of the full test run). That means DialogNotClosedException is unused now and can thus be removed. Change-Id: I556ae52f05b1362f4e78f2de362a7b4f9b8a0cf7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92959 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-22Revert "tdf114724: uitest: make test less time.sleep dependent"Xisco Faulí
This reverts commit 634ce6f2d87a30b8abd2e8c67668e3bb5d87406b. See https://gerrit.libreoffice.org/c/core/+/92616 Change-Id: I642843ab16450d1a6b15d5e955495efbbfa7822a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92539 Tested-by: Jenkins Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2020-04-21uitest: no need to use time.sleep hereXisco Fauli
Change-Id: I58b1fa80b6a570f8214255398f3b91f62590fd6c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92629 Tested-by: Jenkins Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>