diff options
author | Henry Castro <hcastro@collabora.com> | 2020-05-07 16:47:36 -0400 |
---|---|---|
committer | Henry Castro <hcastro@collabora.com> | 2020-05-11 05:34:04 +0200 |
commit | 2f4ea95149702a46852b320f828d8462eb3666ba (patch) | |
tree | 6e6d670820440a618d9db190cd18c7a6e5751772 /desktop/qa | |
parent | a406b4fc8296f125eb8e69da889ac2d119c2faaa (diff) |
lok: unit test for metric field or formatted field control
Change-Id: I0a3efef85ff889c4214ab326d1de96a4acd207a8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93689
Tested-by: Jenkins
Reviewed-by: Henry Castro <hcastro@collabora.com>
Diffstat (limited to 'desktop/qa')
-rw-r--r-- | desktop/qa/desktop_lib/test_desktop_lib.cxx | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx b/desktop/qa/desktop_lib/test_desktop_lib.cxx index 30dd2c60dc3c..9ee4a596ec70 100644 --- a/desktop/qa/desktop_lib/test_desktop_lib.cxx +++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx @@ -24,10 +24,12 @@ #include <vcl/syswin.hxx> #include <vcl/window.hxx> #include <vcl/ctrl.hxx> +#include <vcl/uitest/uiobject.hxx> #include <comphelper/processfactory.hxx> #include <rtl/math.hxx> #include <rtl/uri.hxx> #include <sfx2/app.hxx> +#include <sfx2/childwin.hxx> #include <sfx2/lokhelper.hxx> #include <test/unoapi_test.hxx> #include <comphelper/lok.hxx> @@ -173,6 +175,7 @@ public: void testDialogInput(); void testCalcSaveAs(); void testControlState(); + void testMetricField(); void testABI(); CPPUNIT_TEST_SUITE(DesktopLOKTest); @@ -233,6 +236,7 @@ public: CPPUNIT_TEST(testDialogInput); CPPUNIT_TEST(testCalcSaveAs); CPPUNIT_TEST(testControlState); + CPPUNIT_TEST(testMetricField); CPPUNIT_TEST(testABI); CPPUNIT_TEST_SUITE_END(); @@ -2827,6 +2831,36 @@ void DesktopLOKTest::testControlState() CPPUNIT_ASSERT(!aState.empty()); } +void DesktopLOKTest::testMetricField() +{ + LibLODocument_Impl* pDocument = loadDoc("search.ods"); + pDocument->pClass->postUnoCommand(pDocument, ".uno:StarShapes", nullptr, false); + Scheduler::ProcessEventsToIdle(); + + SfxViewShell* pViewShell = SfxViewShell::Current(); + CPPUNIT_ASSERT(pViewShell); + + SfxViewFrame* pViewFrame = pViewShell->GetViewFrame(); + CPPUNIT_ASSERT(pViewFrame); + + SfxChildWindow* pSideBar = pViewFrame->GetChildWindow(SID_SIDEBAR); + CPPUNIT_ASSERT(pSideBar); + + vcl::Window* pWin = pSideBar->GetWindow(); + CPPUNIT_ASSERT(pWin); + + WindowUIObject aWinUI(pWin); + std::unique_ptr<UIObject> pUIWin(aWinUI.get_child("selectwidth")); + CPPUNIT_ASSERT(pUIWin.get()); + + StringMap aMap; + aMap["VALUE"] = "75.06"; + pUIWin->execute("VALUE", aMap); + + StringMap aRet = pUIWin->get_state(); + CPPUNIT_ASSERT_EQUAL(aMap["VALUE"], aRet["Value"]); +} + namespace { constexpr size_t classOffset(int i) |