sw/qa/uitest/writer_tests5/tdf138531.py | 64 ++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+)
New commits: commit 03f4bd06bd89eb086eeb332693d1c4e96916e2df Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Mon Oct 25 16:54:58 2021 +0200 Commit: Xisco Fauli <xiscofa...@libreoffice.org> CommitDate: Mon Oct 25 21:03:54 2021 +0200 tdf#138531: sw: Add UItest Change-Id: I953948a5d10e8fbb6610ea0bf49ae7e8308e83eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124157 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/sw/qa/uitest/writer_tests5/tdf138531.py b/sw/qa/uitest/writer_tests5/tdf138531.py new file mode 100644 index 000000000000..94d3a15e0e7d --- /dev/null +++ b/sw/qa/uitest/writer_tests5/tdf138531.py @@ -0,0 +1,64 @@ +# -*- 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 +from libreoffice.uno.propertyvalue import mkPropertyValues +from uitest.uihelper.calc import enter_text_to_cell + +class Tdf138531(UITestCase): + + def test_tdf138531(self): + + with self.ui_test.create_doc_in_start_center("calc") as document: + xCalcDoc = self.xUITest.getTopFocusWindow() + gridwin = xCalcDoc.getChild("grid_window") + #enter data + enter_text_to_cell(gridwin, "A1", "First") + enter_text_to_cell(gridwin, "A2", "Second") + + #select A1:A2 + gridwin.executeAction("SELECT", mkPropertyValues({"RANGE": "A1:A2"})) + + self.xUITest.executeCommand(".uno:Copy") + + with self.ui_test.load_empty_file("writer") as writer_doc: + + # Paste as DDE + formatProperty = mkPropertyValues({"SelectedFormat": 59}) + self.xUITest.executeCommandWithParameters(".uno:ClipboardFormatItems", formatProperty) + + self.assertEqual(1, writer_doc.TextTables.getCount()) + table = writer_doc.getTextTables()[0] + self.assertEqual("First", table.getCellByName("A1").getString()) + self.assertEqual("Second", table.getCellByName("A2").getString()) + + frames = self.ui_test.get_frames() + # switch view to the calc document + frames[0].activate() + enter_text_to_cell(gridwin, "A1", "Second") + enter_text_to_cell(gridwin, "A2", "First") + + # switch view back to the writer document + frames[1].activate() + + with self.ui_test.execute_dialog_through_command(".uno:LinkDialog", close_button="close") as xDialog: + xLinks = xDialog.getChild("TB_LINKS") + self.assertEqual(1, len(xLinks.getChildren())) + + xFileName = xDialog.getChild("FULL_FILE_NAME") + self.assertEqual("Untitled 1", get_state_as_dict(xFileName)["Text"]) + + xUpdate = xDialog.getChild("UPDATE_NOW") + xUpdate.executeAction("CLICK", tuple()) + + # Without the fix in place, this test would have failed with + # AssertionError: 'Second' != 'First' + self.assertEqual("Second", table.getCellByName("A1").getString()) + self.assertEqual("First", table.getCellByName("A2").getString()) + +# vim: set shiftwidth=4 softtabstop=4 expandtab: