diff --git a/autotests/CMakeLists.txt b/autotests/CMakeLists.txt
index 3a86f1787..6e1927a2a 100644
--- a/autotests/CMakeLists.txt
+++ b/autotests/CMakeLists.txt
@@ -24,13 +24,6 @@ add_executable( identityaddvcarddialogtest ${kmail_identityaddvcarddialog_sourc
ecm_mark_as_test(kmail-identityaddvcarddialogtest)
target_link_libraries( identityaddvcarddialogtest Qt5::Test Qt5::Widgets KF5::Completion KF5::KIOWidgets KF5::I18n)
-set( kmail_followupreminderselectdatedialog_source followupreminderselectdatedialogtest.cpp ../followupreminder/followupreminderselectdatedialog.cpp )
-add_executable( followupreminderselectdatedialogtest ${kmail_followupreminderselectdatedialog_source})
-ecm_mark_as_test(kmail-followupreminderselectdatedialogtest)
-target_link_libraries( followupreminderselectdatedialogtest Qt5::Test KF5::KIOWidgets KF5::I18n KF5::CalendarCore KF5::AkonadiCore KF5::AkonadiWidgets )
-
-
-
set( kmail_statusbarlabeltoggledstate_source statusbarlabeltoggledstatetest.cpp ../widgets/statusbarlabeltoggledstate.cpp ../kmail_debug.cpp)
add_executable(statusbarlabeltoggledstatetest ${kmail_statusbarlabeltoggledstate_source})
ecm_mark_as_test(kmail-statusbarlabeltoggledstatetest)
@@ -49,3 +42,9 @@ add_test(cryptostateindicatorwidgettest cryptostateindicatorwidgettest)
ecm_mark_as_test(cryptostateindicatorwidgettest)
target_link_libraries( cryptostateindicatorwidgettest Qt5::Test messagecore)
+
+set(KDEPIMLIBS_RUN_ISOLATED_TESTS TRUE)
+set(KDEPIMLIBS_RUN_SQLITE_ISOLATED_TESTS TRUE)
+
+add_akonadi_isolated_test_advanced( followupreminderselectdatedialogtest.cpp "../followupreminder/followupreminderselectdatedialog.cpp" "KF5::CalendarCore;KF5::AkonadiCore;KF5::AkonadiWidgets")
+
diff --git a/autotests/unittestenv/config-mysql-db.xml b/autotests/unittestenv/config-mysql-db.xml
new file mode 100644
index 000000000..66bbe9ad1
--- /dev/null
+++ b/autotests/unittestenv/config-mysql-db.xml
@@ -0,0 +1,11 @@
+
+ kdehome
+ xdgconfig-mysql.db
+ xdglocal
+ akonadi_knut_resource
+ akonadi_knut_resource
+ akonadi_knut_resource
+ true
+ mysql
+ testsearchplugin
+
diff --git a/autotests/unittestenv/config-mysql-fs.xml b/autotests/unittestenv/config-mysql-fs.xml
new file mode 100644
index 000000000..1999cb5b6
--- /dev/null
+++ b/autotests/unittestenv/config-mysql-fs.xml
@@ -0,0 +1,11 @@
+
+ kdehome
+ xdgconfig-mysql.fs
+ xdglocal
+ akonadi_knut_resource
+ akonadi_knut_resource
+ akonadi_knut_resource
+ true
+ mysql
+ testsearchplugin
+
diff --git a/autotests/unittestenv/config-postgresql-db.xml b/autotests/unittestenv/config-postgresql-db.xml
new file mode 100644
index 000000000..30c4998a7
--- /dev/null
+++ b/autotests/unittestenv/config-postgresql-db.xml
@@ -0,0 +1,11 @@
+
+ kdehome
+ xdgconfig-postgresql.db
+ xdglocal
+ akonadi_knut_resource
+ akonadi_knut_resource
+ akonadi_knut_resource
+ true
+ postgresql
+ testsearchplugin
+
diff --git a/autotests/unittestenv/config-postgresql-fs.xml b/autotests/unittestenv/config-postgresql-fs.xml
new file mode 100644
index 000000000..f8aca0e9a
--- /dev/null
+++ b/autotests/unittestenv/config-postgresql-fs.xml
@@ -0,0 +1,11 @@
+
+ kdehome
+ xdgconfig-postgresql.fs
+ xdglocal
+ akonadi_knut_resource
+ akonadi_knut_resource
+ akonadi_knut_resource
+ true
+ postgresql
+ testsearchplugin
+
diff --git a/autotests/unittestenv/config-sqlite-db.xml b/autotests/unittestenv/config-sqlite-db.xml
new file mode 100644
index 000000000..645480146
--- /dev/null
+++ b/autotests/unittestenv/config-sqlite-db.xml
@@ -0,0 +1,11 @@
+
+ kdehome
+ xdgconfig-sqlite.db
+ xdglocal
+ akonadi_knut_resource
+ akonadi_knut_resource
+ akonadi_knut_resource
+ true
+ sqlite
+ akonadi_test_searchplugin
+
diff --git a/autotests/unittestenv/config.xml b/autotests/unittestenv/config.xml
new file mode 100644
index 000000000..a2cada5a1
--- /dev/null
+++ b/autotests/unittestenv/config.xml
@@ -0,0 +1,9 @@
+
+ kdehome
+ xdgconfig
+ xdglocal
+ akonadi_knut_resource
+ akonadi_knut_resource
+ akonadi_knut_resource
+ true
+
diff --git a/autotests/unittestenv/kdehome/share/config/akonadi-firstrunrc b/autotests/unittestenv/kdehome/share/config/akonadi-firstrunrc
new file mode 100644
index 000000000..c5e90d841
--- /dev/null
+++ b/autotests/unittestenv/kdehome/share/config/akonadi-firstrunrc
@@ -0,0 +1,4 @@
+[ProcessedDefaults]
+defaultaddressbook=done
+defaultcalendar=done
+defaultnotebook=done
diff --git a/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_0rc b/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_0rc
new file mode 100644
index 000000000..61bb2f0c6
--- /dev/null
+++ b/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_0rc
@@ -0,0 +1,4 @@
+[General]
+DataFile[$e]=$KDEHOME/testdata-res1.xml
+FileWatchingEnabled=false
+
diff --git a/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_1rc b/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_1rc
new file mode 100644
index 000000000..96a9499aa
--- /dev/null
+++ b/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_1rc
@@ -0,0 +1,3 @@
+[General]
+DataFile[$e]=$KDEHOME/testdata-res2.xml
+FileWatchingEnabled=false
diff --git a/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_2rc b/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_2rc
new file mode 100644
index 000000000..4b117f01f
--- /dev/null
+++ b/autotests/unittestenv/kdehome/share/config/akonadi_knut_resource_2rc
@@ -0,0 +1,3 @@
+[General]
+DataFile[$e]=$KDEHOME/testdata-res3.xml
+FileWatchingEnabled=false
diff --git a/autotests/unittestenv/kdehome/share/config/kdebugrc b/autotests/unittestenv/kdehome/share/config/kdebugrc
new file mode 100755
index 000000000..a8438b934
--- /dev/null
+++ b/autotests/unittestenv/kdehome/share/config/kdebugrc
@@ -0,0 +1,80 @@
+DisableAll=false
+
+[0]
+AbortFatal=true
+ErrorFilename[$e]=kdebug.dbg
+ErrorOutput=2
+FatalFilename[$e]=kdebug.dbg
+FatalOutput=2
+InfoFilename[$e]=kdebug.dbg
+InfoOutput=2
+WarnFilename[$e]=kdebug.dbg
+WarnOutput=2
+
+[264]
+AbortFatal=true
+ErrorFilename[$e]=kdebug.dbg
+ErrorOutput=4
+FatalFilename[$e]=kdebug.dbg
+FatalOutput=4
+InfoFilename[$e]=kdebug.dbg
+WarnFilename[$e]=kdebug.dbg
+WarnOutput=4
+
+[5250]
+InfoOutput=2
+
+[7009]
+AbortFatal=true
+ErrorFilename[$e]=kdebug.dbg
+ErrorOutput=4
+FatalFilename[$e]=kdebug.dbg
+FatalOutput=4
+InfoFilename[$e]=kdebug.dbg
+InfoOutput=4
+WarnFilename[$e]=kdebug.dbg
+WarnOutput=4
+
+[7011]
+AbortFatal=true
+ErrorFilename[$e]=kdebug.dbg
+ErrorOutput=4
+FatalFilename[$e]=kdebug.dbg
+FatalOutput=4
+InfoFilename[$e]=kdebug.dbg
+InfoOutput=4
+WarnFilename[$e]=kdebug.dbg
+WarnOutput=4
+
+[7012]
+AbortFatal=true
+ErrorFilename[$e]=kdebug.dbg
+ErrorOutput=4
+FatalFilename[$e]=kdebug.dbg
+FatalOutput=4
+InfoFilename[$e]=kdebug.dbg
+InfoOutput=4
+WarnFilename[$e]=kdebug.dbg
+WarnOutput=4
+
+[7014]
+AbortFatal=true
+ErrorFilename[$e]=kdebug.dbg
+ErrorOutput=0
+FatalFilename[$e]=kdebug.dbg
+FatalOutput=0
+InfoFilename[$e]=kdebug.dbg
+InfoOutput=0
+WarnFilename[$e]=kdebug.dbg
+WarnOutput=0
+
+[7021]
+AbortFatal=true
+ErrorFilename[$e]=kdebug.dbg
+ErrorOutput=4
+FatalFilename[$e]=kdebug.dbg
+FatalOutput=4
+InfoFilename[$e]=kdebug.dbg
+InfoOutput=4
+WarnFilename[$e]=kdebug.dbg
+WarnOutput=4
diff --git a/autotests/unittestenv/kdehome/share/config/kdedrc b/autotests/unittestenv/kdehome/share/config/kdedrc
new file mode 100644
index 000000000..41d178141
--- /dev/null
+++ b/autotests/unittestenv/kdehome/share/config/kdedrc
@@ -0,0 +1,3 @@
+[General]
+CheckSycoca=false
+CheckFileStamps=false
diff --git a/autotests/unittestenv/kdehome/testdata-res1.xml b/autotests/unittestenv/kdehome/testdata-res1.xml
new file mode 100644
index 000000000..638904cda
--- /dev/null
+++ b/autotests/unittestenv/kdehome/testdata-res1.xml
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+ -
+ testmailbody
+ From: <test@user.tst>
+ \SEEN
+ \FLAGGED
+ \DRAFT
+
+ -
+ testmailbody1
+ From: <test1@user.tst>
+ \FLAGGED
+
+ -
+ testmailbody2
+ From: <test2@user.tst>
+
+ -
+ testmailbody3
+ From: <test3@user.tst>
+
+ -
+ testmailbody4
+ From: <test4@user.tst>
+
+ -
+ testmailbody5
+ From: <test5@user.tst>
+
+ -
+ testmailbody6
+ From: <test6@user.tst>
+
+ -
+ testmailbody7
+ From: <test7@user.tst>
+
+ -
+ testmailbody8
+ From: <test8@user.tst>
+
+ -
+ testmailbody9
+ From: <test9@user.tst>
+
+ -
+ testmailbody10
+ From: <test10@user.tst>
+
+ -
+ testmailbody11
+ From: <test11@user.tst>
+
+ -
+ testmailbody12
+ From: <test12@user.tst>
+
+ -
+ testmailbody13
+ From: <test13@user.tst>
+
+ -
+ testmailbody14
+ From: <test14@user.tst>
+
+
+
+
diff --git a/autotests/unittestenv/kdehome/testdata-res2.xml b/autotests/unittestenv/kdehome/testdata-res2.xml
new file mode 100644
index 000000000..b12f3b3af
--- /dev/null
+++ b/autotests/unittestenv/kdehome/testdata-res2.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/autotests/unittestenv/kdehome/testdata-res3.xml b/autotests/unittestenv/kdehome/testdata-res3.xml
new file mode 100644
index 000000000..0c3b7a8c0
--- /dev/null
+++ b/autotests/unittestenv/kdehome/testdata-res3.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/autotests/unittestenv/kdehome/testdata.xml b/autotests/unittestenv/kdehome/testdata.xml
new file mode 100644
index 000000000..06559c2b2
--- /dev/null
+++ b/autotests/unittestenv/kdehome/testdata.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+ -
+ testmailbody
+ From: <test@user.tst>
+ \SEEN
+ \FLAGGED
+ \DRAFT
+
+ -
+ testmailbody1
+ From: <test1@user.tst>
+ \FLAGGED
+
+ -
+ testmailbody2
+ From: <test2@user.tst>
+
+ -
+ testmailbody3
+ From: <test3@user.tst>
+
+ -
+ testmailbody4
+ From: <test4@user.tst>
+
+ -
+ testmailbody5
+ From: <test5@user.tst>
+
+ -
+ testmailbody6
+ From: <test6@user.tst>
+
+ -
+ testmailbody7
+ From: <test7@user.tst>
+
+ -
+ testmailbody8
+ From: <test8@user.tst>
+
+ -
+ testmailbody9
+ From: <test9@user.tst>
+
+ -
+ testmailbody10
+ From: <test10@user.tst>
+
+ -
+ testmailbody11
+ From: <test11@user.tst>
+
+ -
+ testmailbody12
+ From: <test12@user.tst>
+
+ -
+ testmailbody13
+ From: <test13@user.tst>
+
+ -
+ testmailbody14
+ From: <test14@user.tst>
+
+
+
+
+
+
+
+
+
+
diff --git a/autotests/unittestenv/xdgconfig-mysql.db/akonadi/akonadiserverrc b/autotests/unittestenv/xdgconfig-mysql.db/akonadi/akonadiserverrc
new file mode 100644
index 000000000..fa9b2d47a
--- /dev/null
+++ b/autotests/unittestenv/xdgconfig-mysql.db/akonadi/akonadiserverrc
@@ -0,0 +1,5 @@
+[%General]
+ExternalPayload=false
+
+[Search]
+Manager=Dummy
diff --git a/autotests/unittestenv/xdgconfig-mysql.fs/akonadi/akonadiserverrc b/autotests/unittestenv/xdgconfig-mysql.fs/akonadi/akonadiserverrc
new file mode 100644
index 000000000..a7bb0c20b
--- /dev/null
+++ b/autotests/unittestenv/xdgconfig-mysql.fs/akonadi/akonadiserverrc
@@ -0,0 +1,6 @@
+[%General]
+SizeThreshold=0
+ExternalPayload=true
+
+[Search]
+Manager=Dummy
diff --git a/autotests/unittestenv/xdgconfig-postgresql.db/akonadi/akonadiserverrc b/autotests/unittestenv/xdgconfig-postgresql.db/akonadi/akonadiserverrc
new file mode 100644
index 000000000..b2c8b1ab5
--- /dev/null
+++ b/autotests/unittestenv/xdgconfig-postgresql.db/akonadi/akonadiserverrc
@@ -0,0 +1,9 @@
+[%General]
+Driver=QPSQL
+ExternalPayload=false
+
+[Search]
+Manager=Dummy
+
+[QPSQL]
+StartServer=true
diff --git a/autotests/unittestenv/xdgconfig-postgresql.fs/akonadi/akonadiserverrc b/autotests/unittestenv/xdgconfig-postgresql.fs/akonadi/akonadiserverrc
new file mode 100644
index 000000000..8333c730c
--- /dev/null
+++ b/autotests/unittestenv/xdgconfig-postgresql.fs/akonadi/akonadiserverrc
@@ -0,0 +1,10 @@
+[%General]
+Driver=QPSQL
+SizeThreshold=0
+ExternalPayload=true
+
+[Search]
+Manager=Dummy
+
+[QPSQL]
+StartServer=true
diff --git a/autotests/unittestenv/xdgconfig-sqlite.db/akonadi/akonadiserverrc b/autotests/unittestenv/xdgconfig-sqlite.db/akonadi/akonadiserverrc
new file mode 100644
index 000000000..33e7f8171
--- /dev/null
+++ b/autotests/unittestenv/xdgconfig-sqlite.db/akonadi/akonadiserverrc
@@ -0,0 +1,10 @@
+[%General]
+# This is a slightly adjusted version of the QSQLITE driver from Qt
+# It is provided by akonadi itself
+Driver=QSQLITE3
+
+[Debug]
+Tracer=null
+
+[Search]
+Manager=Dummy
diff --git a/mailmerge/widgets/mailmergewidget.cpp b/mailmerge/widgets/mailmergewidget.cpp
index 4bec17e35..a17b6c9d8 100644
--- a/mailmerge/widgets/mailmergewidget.cpp
+++ b/mailmerge/widgets/mailmergewidget.cpp
@@ -62,7 +62,7 @@ MailMergeWidget::MailMergeWidget(QWidget *parent)
mStackedWidget->addWidget(mAddressbookWidget);
mCsvWidget = new MailMerge::CsvWidget;
- mCsvWidget->setObjectName(QStringLiteral("cvswidget"));
+ mCsvWidget->setObjectName(QLatin1String("csvwidget"));
mStackedWidget->addWidget(mCsvWidget);