[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-5.1' - sc/qa

Marco Cecchetti marco.cecchetti at collabora.com
Thu Nov 17 21:07:22 UTC 2016


 sc/qa/unit/tiledrendering/tiledrendering.cxx |   44 +++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

New commits:
commit dc4efebc28cddae8bdd83d3e604e279a4c1cc205
Author: Marco Cecchetti <marco.cecchetti at collabora.com>
Date:   Thu Nov 17 22:03:34 2016 +0100

    LOK - Calc: unit test for invalidation on copy/paste to the doc bottom
    
    Change-Id: I92b6a3f1c3b3c6c260b25b046bd19b249be0db0b

diff --git a/sc/qa/unit/tiledrendering/tiledrendering.cxx b/sc/qa/unit/tiledrendering/tiledrendering.cxx
index 02ee497..5547b71 100644
--- a/sc/qa/unit/tiledrendering/tiledrendering.cxx
+++ b/sc/qa/unit/tiledrendering/tiledrendering.cxx
@@ -67,6 +67,7 @@ public:
     void testGraphicInvalidate();
     void testAutoSum();
     void testHideColRow();
+    void testInvalidateOnCopyPasteCells();
 
     CPPUNIT_TEST_SUITE(ScTiledRenderingTest);
     CPPUNIT_TEST(testRowColumnSelections);
@@ -85,6 +86,7 @@ public:
     CPPUNIT_TEST(testGraphicInvalidate);
     CPPUNIT_TEST(testAutoSum);
     CPPUNIT_TEST(testHideColRow);
+    CPPUNIT_TEST(testInvalidateOnCopyPasteCells);
     CPPUNIT_TEST_SUITE_END();
 
 private:
@@ -914,6 +916,48 @@ void ScTiledRenderingTest::testHideColRow()
     mxComponent.clear();
     comphelper::LibreOfficeKit::setActive(false);
 }
+void ScTiledRenderingTest::testInvalidateOnCopyPasteCells()
+{
+    // Load a document
+    comphelper::LibreOfficeKit::setActive();
+    ScModelObj* pModelObj = createDoc("small.ods");
+    CPPUNIT_ASSERT(pModelObj);
+
+    // view
+    ViewCallback aView;
+    SfxViewShell::Current()->registerLibreOfficeKitViewCallback(&ViewCallback::callback, &aView);
+
+    aView.m_bInvalidateTiles = false;
+    uno::Sequence<beans::PropertyValue> aArgs;
+    // select and copy cells
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, KEY_HOME | KEY_MOD1);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYUP, 0, KEY_HOME | KEY_MOD1);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, KEY_DOWN | KEY_SHIFT);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYUP, 0, KEY_DOWN | KEY_SHIFT);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, KEY_RIGHT | KEY_SHIFT);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYUP, 0, KEY_RIGHT | KEY_SHIFT);
+    Scheduler::ProcessEventsToIdle();
+    comphelper::dispatchCommand(".uno:Copy", aArgs);
+
+    // move to destination cell
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, KEY_DOWN);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYUP, 0, KEY_DOWN);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, KEY_DOWN | KEY_MOD1);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYUP, 0, KEY_DOWN | KEY_MOD1);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, KEY_UP);
+    pModelObj->postKeyEvent(LOK_KEYEVENT_KEYUP, 0, KEY_UP);
+    Scheduler::ProcessEventsToIdle();
+
+    // paste cells
+    aView.m_bInvalidateTiles = false;
+    comphelper::dispatchCommand(".uno:Paste", aArgs);
+    Scheduler::ProcessEventsToIdle();
+    CPPUNIT_ASSERT(aView.m_bInvalidateTiles);
+
+    mxComponent->dispose();
+    mxComponent.clear();
+    comphelper::LibreOfficeKit::setActive(false);
+}
 }
 
 CPPUNIT_TEST_SUITE_REGISTRATION(ScTiledRenderingTest);


More information about the Libreoffice-commits mailing list