diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2016-09-30 21:40:20 +0200 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2016-10-01 15:10:45 +0000 |
commit | 88488d579b1e3fbd35465eeb76a40a552d6be93b (patch) | |
tree | bb7dff4cf08ec4ad6d1e1c12db3162e1f36a9d35 | |
parent | 7d1b897287696789b66c848dfad94a43051769c2 (diff) |
add resizing support to drawinglayer ui test objects
Change-Id: Ic17b32c25677855388ff49f2f7daeb1a84557fde
Reviewed-on: https://gerrit.libreoffice.org/29419
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Jenkins <ci@libreoffice.org>
-rw-r--r-- | svx/source/uitest/sdrobject.cxx | 26 | ||||
-rw-r--r-- | uitest/impress_tests/drawinglayer.py | 19 |
2 files changed, 42 insertions, 3 deletions
diff --git a/svx/source/uitest/sdrobject.cxx b/svx/source/uitest/sdrobject.cxx index 9142cfdb3db1..eaf56ba8012d 100644 --- a/svx/source/uitest/sdrobject.cxx +++ b/svx/source/uitest/sdrobject.cxx @@ -72,9 +72,29 @@ void SdrUIObject::execute(const OUString& rAction, } else if (rAction == "RESIZE") { - Point aPos; - Fraction aFracX; - Fraction aFracY; + auto itrNX = rParameters.find("X"); + if (itrNX == rParameters.end()) + throw css::uno::RuntimeException("missing parameter X"); + + auto itrNY = rParameters.find("Y"); + if (itrNY == rParameters.end()) + throw css::uno::RuntimeException("missing parameter Y"); + + long nX = itrNX->second.toInt32(); + long nY = itrNY->second.toInt32(); + Point aPos(nX, nY); + + auto itrFracX = rParameters.find("FRAC_X"); + if (itrFracX == rParameters.end()) + throw css::uno::RuntimeException("missing parameter FRAC_X"); + double nFracX = itrFracX->second.toDouble(); + Fraction aFracX(nFracX); + + auto itrFracY = rParameters.find("FRAC_Y"); + if (itrFracY == rParameters.end()) + throw css::uno::RuntimeException("missing parameter FRAC_Y"); + double nFracY = itrFracY->second.toDouble(); + Fraction aFracY(nFracY); bool bRelative = true; pObj->Resize(aPos, aFracX, aFracY, bRelative); } diff --git a/uitest/impress_tests/drawinglayer.py b/uitest/impress_tests/drawinglayer.py index 76574461c73f..8426f7e5f650 100644 --- a/uitest/impress_tests/drawinglayer.py +++ b/uitest/impress_tests/drawinglayer.py @@ -33,3 +33,22 @@ class ImpressDrawinglayerTest(UITestCase): time.sleep(10) self.ui_test.close_doc() + + def test_resize_object(self): + self.ui_test.create_doc_in_start_center("impress") + + xTemplateDlg = self.xUITest.getTopFocusWindow() + xCancelBtn = xTemplateDlg.getChild("cancel") + self.ui_test.close_dialog_through_button(xCancelBtn) + + xImpressDoc = self.xUITest.getTopFocusWindow() + + xEditWin = xImpressDoc.getChild("impress_win") + + xDrawinglayerObject = xEditWin.getChild("Unnamed Drawinglayer object 1") + print(get_state_as_dict(xDrawinglayerObject)) + xDrawinglayerObject.executeAction("RESIZE", mkPropertyValues({"X": "500", "Y":"4000", "FRAC_X": "0.5", "FRAC_Y": "0.5"})) + + time.sleep(5) + + self.ui_test.close_doc() |