diff options
author | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-08-31 16:33:33 +0200 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-08-31 22:30:58 +0200 |
commit | 4cfc303886bc9f863f755f8278561f9e57f9a5c5 (patch) | |
tree | 6d67734b9b4561448655a2464a63679776627e90 | |
parent | 7a410f7ee447201dc23b31166ca9989a3c01bce7 (diff) |
tdf#117868: sc: Add UItest
Change-Id: Ic8630d3497ece3903662c671878a42e448e7f553
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121383
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r-- | sc/qa/uitest/csv_dialog/tdf117868.py | 55 | ||||
-rw-r--r-- | sc/qa/uitest/csv_dialog/tdf142395.py | 14 | ||||
-rw-r--r-- | sc/qa/uitest/csv_dialog/tdf57841.py | 15 | ||||
-rw-r--r-- | sc/qa/uitest/csv_dialog/tdf60468.py | 16 | ||||
-rw-r--r-- | sc/qa/uitest/csv_dialog/tdf96561.py | 13 | ||||
-rw-r--r-- | sc/qa/uitest/data/tdf117868.csv | 5 |
6 files changed, 111 insertions, 7 deletions
diff --git a/sc/qa/uitest/csv_dialog/tdf117868.py b/sc/qa/uitest/csv_dialog/tdf117868.py new file mode 100644 index 000000000000..9f3b8de24a88 --- /dev/null +++ b/sc/qa/uitest/csv_dialog/tdf117868.py @@ -0,0 +1,55 @@ +# -*- 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.uihelper.common import get_state_as_dict, get_url_for_data_file +from libreoffice.uno.propertyvalue import mkPropertyValues +from libreoffice.calc.document import get_cell_by_position + +class Td117868(UITestCase): + + def test_tdf117868(self): + + # Load file from Open dialog + with self.ui_test.execute_dialog_through_command(".uno:Open", close_button="open") as xOpenDialog: + + xFileName = xOpenDialog.getChild("file_name") + xFileName.executeAction("TYPE", mkPropertyValues({"TEXT": get_url_for_data_file("tdf117868.csv")})) + + xDialog = self.ui_test.wait_for_top_focus_window('TextImportCsvDialog') + + # Set text delimiter in case it's changed by another test + xSeparatedBy = xDialog.getChild("toseparatedby") + xSeparatedBy.executeAction("CLICK", tuple()) + + # Without the fix in place, this test would haved failed with + # AssertionError: 'true' != 'false' + self.assertEqual('true', get_state_as_dict(xDialog.getChild("other"))['Selected']) + self.assertEqual('false', get_state_as_dict(xDialog.getChild("tab"))['Selected']) + self.assertEqual('false', get_state_as_dict(xDialog.getChild("comma"))['Selected']) + self.assertEqual('false', get_state_as_dict(xDialog.getChild("semicolon"))['Selected']) + + self.assertEqual('1', get_state_as_dict(xDialog.getChild("fromrow"))['Text']) + + xInputOther = xDialog.getChild("inputother") + self.assertEqual("|", get_state_as_dict(xInputOther)['Text']) + + xOK = xDialog.getChild('ok') + with self.ui_test.wait_until_component_loaded(): + self.ui_test.close_dialog_through_button(xOK) + + document = self.ui_test.get_component() + + self.assertEqual("LETTER", get_cell_by_position(document, 0, 0, 1).getString()) + self.assertEqual("ANIMAL", get_cell_by_position(document, 0, 1, 1).getString()) + self.assertEqual('a', get_cell_by_position(document, 0, 0, 2).getString()) + self.assertEqual('aardvark', get_cell_by_position(document, 0, 1, 2).getString()) + self.assertEqual('b', get_cell_by_position(document, 0, 0, 3).getString()) + self.assertEqual('bear', get_cell_by_position(document, 0, 1, 3).getString()) + self.assertEqual('c', get_cell_by_position(document, 0, 0, 4).getString()) + self.assertEqual('cow', get_cell_by_position(document, 0, 1, 4).getString()) + +# vim: set shiftwidth=4 softtabstop=4 expandtab: diff --git a/sc/qa/uitest/csv_dialog/tdf142395.py b/sc/qa/uitest/csv_dialog/tdf142395.py index 77cabb688970..66efc397d5b3 100644 --- a/sc/qa/uitest/csv_dialog/tdf142395.py +++ b/sc/qa/uitest/csv_dialog/tdf142395.py @@ -29,6 +29,20 @@ class Tdf142395(UITestCase): xTextDelimiter.executeAction("TYPE", mkPropertyValues({"KEYCODE":"CTRL+A"})) xTextDelimiter.executeAction("TYPE", mkPropertyValues({"KEYCODE":"BACKSPACE"})) + xTab = xDialog.getChild("tab") + if get_state_as_dict(xTab)['Selected'] == 'false': + xTab.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xTab)['Selected']) + xComma = xDialog.getChild("comma") + if get_state_as_dict(xComma)['Selected'] == 'false': + xComma.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xComma)['Selected']) + xSemicolon = xDialog.getChild("semicolon") + if get_state_as_dict(xSemicolon)['Selected'] == 'false': + xSemicolon.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xSemicolon)['Selected']) + self.assertEqual('1', get_state_as_dict(xDialog.getChild("fromrow"))['Text']) + xOK = xDialog.getChild('ok') with self.ui_test.wait_until_component_loaded(): self.ui_test.close_dialog_through_button(xOK) diff --git a/sc/qa/uitest/csv_dialog/tdf57841.py b/sc/qa/uitest/csv_dialog/tdf57841.py index c384a4f9867b..da9948727b7a 100644 --- a/sc/qa/uitest/csv_dialog/tdf57841.py +++ b/sc/qa/uitest/csv_dialog/tdf57841.py @@ -21,9 +21,18 @@ class Tdf57841(UITestCase): xDialog = self.ui_test.wait_for_top_focus_window('TextImportCsvDialog') - self.assertEqual('true', get_state_as_dict(xDialog.getChild("tab"))['Selected']) - self.assertEqual('true', get_state_as_dict(xDialog.getChild("comma"))['Selected']) - self.assertEqual('true', get_state_as_dict(xDialog.getChild("semicolon"))['Selected']) + xTab = xDialog.getChild("tab") + if get_state_as_dict(xTab)['Selected'] == 'false': + xTab.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xTab)['Selected']) + xComma = xDialog.getChild("comma") + if get_state_as_dict(xComma)['Selected'] == 'false': + xComma.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xComma)['Selected']) + xSemicolon = xDialog.getChild("semicolon") + if get_state_as_dict(xSemicolon)['Selected'] == 'false': + xSemicolon.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xSemicolon)['Selected']) self.assertEqual('1', get_state_as_dict(xDialog.getChild("fromrow"))['Text']) # Set text delimiter in case it's changed by another test diff --git a/sc/qa/uitest/csv_dialog/tdf60468.py b/sc/qa/uitest/csv_dialog/tdf60468.py index b9df3b369aba..72650c79d07e 100644 --- a/sc/qa/uitest/csv_dialog/tdf60468.py +++ b/sc/qa/uitest/csv_dialog/tdf60468.py @@ -19,11 +19,19 @@ class Tdf60468(UITestCase): xFileName = xOpenDialog.getChild("file_name") xFileName.executeAction("TYPE", mkPropertyValues({"TEXT": get_url_for_data_file("tdf60468.csv")})) - xDialog = self.ui_test.wait_for_top_focus_window('TextImportCsvDialog') - self.assertEqual('true', get_state_as_dict(xDialog.getChild("tab"))['Selected']) - self.assertEqual('true', get_state_as_dict(xDialog.getChild("comma"))['Selected']) - self.assertEqual('true', get_state_as_dict(xDialog.getChild("semicolon"))['Selected']) + xTab = xDialog.getChild("tab") + if get_state_as_dict(xTab)['Selected'] == 'false': + xTab.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xTab)['Selected']) + xComma = xDialog.getChild("comma") + if get_state_as_dict(xComma)['Selected'] == 'false': + xComma.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xComma)['Selected']) + xSemicolon = xDialog.getChild("semicolon") + if get_state_as_dict(xSemicolon)['Selected'] == 'false': + xSemicolon.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xSemicolon)['Selected']) self.assertEqual('1', get_state_as_dict(xDialog.getChild("fromrow"))['Text']) # Set text delimiter in case it's changed by another test diff --git a/sc/qa/uitest/csv_dialog/tdf96561.py b/sc/qa/uitest/csv_dialog/tdf96561.py index 8a7dd17864da..6bf3b1d3de21 100644 --- a/sc/qa/uitest/csv_dialog/tdf96561.py +++ b/sc/qa/uitest/csv_dialog/tdf96561.py @@ -20,6 +20,19 @@ class Tdf96561(UITestCase): xFileName.executeAction("TYPE", mkPropertyValues({"TEXT": get_url_for_data_file("tdf96561.csv")})) xDialog = self.ui_test.wait_for_top_focus_window('TextImportCsvDialog') + xTab = xDialog.getChild("tab") + if get_state_as_dict(xTab)['Selected'] == 'false': + xTab.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xTab)['Selected']) + xComma = xDialog.getChild("comma") + if get_state_as_dict(xComma)['Selected'] == 'false': + xComma.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xComma)['Selected']) + xSemicolon = xDialog.getChild("semicolon") + if get_state_as_dict(xSemicolon)['Selected'] == 'false': + xSemicolon.executeAction("CLICK", tuple()) + self.assertEqual('true', get_state_as_dict(xSemicolon)['Selected']) + self.assertEqual('1', get_state_as_dict(xDialog.getChild("fromrow"))['Text']) # Set text delimiter in case it's changed by another test xSeparatedBy = xDialog.getChild("toseparatedby") diff --git a/sc/qa/uitest/data/tdf117868.csv b/sc/qa/uitest/data/tdf117868.csv new file mode 100644 index 000000000000..0bb5df792e3a --- /dev/null +++ b/sc/qa/uitest/data/tdf117868.csv @@ -0,0 +1,5 @@ +sep=| +"LETTER"|"ANIMAL" +"a"|"aardvark" +"b"|"bear" +"c"|"cow" |