summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2017-10-06 12:53:05 +0200
committerJan-Marek Glogowski <glogow@fbihome.de>2017-10-06 19:21:19 +0200
commit141fe1c5e7fbf67a083b34e49e19b6ea78a0eb2b (patch)
treeaf5fe19bee951a0987f742971e2f82e1b3f20c3e
parentf4cbd31465d3737855e694b7341fb3bc063d63c4 (diff)
Process all pending events during Cppunit setUp
Larger unit tests collect a lot of events, which are just processed on shutdown. But since the Scheduler is just an unsorted linked list, processing these in order is O(n^2) for lookup, which really adds up, e.g. sw_ooxmlexport8 has 35047 tasks on shutdown. So this just processes all pending events before running each unit test. Also adds missing spellchecking components to some calc tests. Change-Id: Icf12146015afc17a1f52f79c18f248b72650ad46 Reviewed-on: https://gerrit.libreoffice.org/43199 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
-rw-r--r--sc/CppunitTest_sc_databaserangeobj.mk1
-rw-r--r--sc/CppunitTest_sc_datapilottableobj.mk1
-rw-r--r--sc/CppunitTest_sc_namedrangeobj.mk1
-rw-r--r--sc/CppunitTest_sc_namedrangesobj.mk1
-rw-r--r--sc/CppunitTest_sc_tablesheetobj.mk1
-rw-r--r--test/source/bootstrapfixture.cxx5
-rw-r--r--vcl/source/app/scheduler.cxx3
7 files changed, 12 insertions, 1 deletions
diff --git a/sc/CppunitTest_sc_databaserangeobj.mk b/sc/CppunitTest_sc_databaserangeobj.mk
index 528829687311..ff48e3c0a1f6 100644
--- a/sc/CppunitTest_sc_databaserangeobj.mk
+++ b/sc/CppunitTest_sc_databaserangeobj.mk
@@ -73,6 +73,7 @@ $(eval $(call gb_CppunitTest_use_components,sc_databaserangeobj,\
forms/util/frm \
framework/util/fwk \
i18npool/util/i18npool \
+ linguistic/source/lng \
oox/util/oox \
package/source/xstor/xstor \
package/util/package2 \
diff --git a/sc/CppunitTest_sc_datapilottableobj.mk b/sc/CppunitTest_sc_datapilottableobj.mk
index ea953602add4..3ba76c2c288e 100644
--- a/sc/CppunitTest_sc_datapilottableobj.mk
+++ b/sc/CppunitTest_sc_datapilottableobj.mk
@@ -73,6 +73,7 @@ $(eval $(call gb_CppunitTest_use_components,sc_datapilottableobj,\
forms/util/frm \
framework/util/fwk \
i18npool/util/i18npool \
+ linguistic/source/lng \
oox/util/oox \
package/source/xstor/xstor \
package/util/package2 \
diff --git a/sc/CppunitTest_sc_namedrangeobj.mk b/sc/CppunitTest_sc_namedrangeobj.mk
index 3b68504ac429..b18ba6c64569 100644
--- a/sc/CppunitTest_sc_namedrangeobj.mk
+++ b/sc/CppunitTest_sc_namedrangeobj.mk
@@ -73,6 +73,7 @@ $(eval $(call gb_CppunitTest_use_components,sc_namedrangeobj,\
forms/util/frm \
framework/util/fwk \
i18npool/util/i18npool \
+ linguistic/source/lng \
oox/util/oox \
package/source/xstor/xstor \
package/util/package2 \
diff --git a/sc/CppunitTest_sc_namedrangesobj.mk b/sc/CppunitTest_sc_namedrangesobj.mk
index 49d5f43f9f54..0b7c012c27ce 100644
--- a/sc/CppunitTest_sc_namedrangesobj.mk
+++ b/sc/CppunitTest_sc_namedrangesobj.mk
@@ -73,6 +73,7 @@ $(eval $(call gb_CppunitTest_use_components,sc_namedrangesobj,\
forms/util/frm \
framework/util/fwk \
i18npool/util/i18npool \
+ linguistic/source/lng \
oox/util/oox \
package/source/xstor/xstor \
package/util/package2 \
diff --git a/sc/CppunitTest_sc_tablesheetobj.mk b/sc/CppunitTest_sc_tablesheetobj.mk
index ef212c33574f..c4347c083a9d 100644
--- a/sc/CppunitTest_sc_tablesheetobj.mk
+++ b/sc/CppunitTest_sc_tablesheetobj.mk
@@ -74,6 +74,7 @@ $(eval $(call gb_CppunitTest_use_components,sc_tablesheetobj,\
framework/util/fwk \
i18npool/source/search/i18nsearch \
i18npool/util/i18npool \
+ linguistic/source/lng \
oox/util/oox \
package/source/xstor/xstor \
package/util/package2 \
diff --git a/test/source/bootstrapfixture.cxx b/test/source/bootstrapfixture.cxx
index 415292bd2a26..a195db529d71 100644
--- a/test/source/bootstrapfixture.cxx
+++ b/test/source/bootstrapfixture.cxx
@@ -31,6 +31,7 @@
#include <unotools/syslocaleoptions.hxx>
#include <osl/file.hxx>
#include <unotools/tempfile.hxx>
+#include <vcl/scheduler.hxx>
#include <isheadless.hxx>
@@ -104,6 +105,10 @@ void test::BootstrapFixture::setUp()
test::BootstrapFixtureBase::setUp();
test_init_impl(m_bAssertOnDialog, m_bNeedUCB, m_xSFactory.get());
+
+#if OSL_DEBUG_LEVEL > 0
+ Scheduler::ProcessEventsToIdle();
+#endif
}
test::BootstrapFixture::~BootstrapFixture()
diff --git a/vcl/source/app/scheduler.cxx b/vcl/source/app/scheduler.cxx
index 5c1b1bc8f5f4..8fd26ec79a55 100644
--- a/vcl/source/app/scheduler.cxx
+++ b/vcl/source/app/scheduler.cxx
@@ -105,7 +105,8 @@ void Scheduler::ImplDeInitScheduler()
++nTasks;
pSchedulerData = pSchedulerData->mpNext;
}
- SAL_INFO( "vcl.schedule.deinit", "DeInit the scheduler - tasks: " << nTasks );
+ SAL_INFO( "vcl.schedule.deinit",
+ "DeInit the scheduler - pending tasks: " << nTasks );
}
// clean up all the sfx::SfxItemDisruptor_Impl Idles