Maybe that started earlier, I don't run tests often. 23/24 Test #24: kdirwatch_qfswatch_unittest ......***Failed 25.40 sec 24/24 Test #22: kdirwatch_stat_unittest ..........***Failed 28.36 sec # ./kdirwatch_qfswatch_unittest 23:04:29 - kdirwatch_qfswatch_unittest(19844) - KDirWatch_UnitTest::KDirWatch_UnitTest: Using method QFSWatch ********* Start testing of KDirWatch_UnitTest ********* Config: Using QtTest library 5.10.0, Qt 5.10.0 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 7.2.1 20171020 [gcc-7-branch revision 253932]) [...] QDEBUG : KDirWatch_UnitTest::testHardlinkChange() 23:04:51 - kdirwatch_qfswatch_unittest(19844) - kf5.kcoreaddons.kdirwatch: KDirWatchPrivate::useQFSWatch: fsWatcher->addPath "/tmp/kdirwatch_qfswatch_unittest-uaIYOw/ExistingFile" QDEBUG : KDirWatch_UnitTest::testHardlinkChange() 23:04:51 - kdirwatch_qfswatch_unittest(19844) - kf5.kcoreaddons.kdirwatch: KDirWatch::setDeleted: "KDirWatch-2" emitting deleted "/tmp/kdirwatch_qfswatch_unittest-uaIYOw/ExistingFile" QDEBUG : KDirWatch_UnitTest::testHardlinkChange() 23:04:51 - kdirwatch_qfswatch_unittest(19844) - kf5.kcoreaddons.kdirwatch: KDirWatch::setCreated: "KDirWatch-2" emitting created "/tmp/kdirwatch_qfswatch_unittest-uaIYOw/ExistingFile" QDEBUG : KDirWatch_UnitTest::testHardlinkChange() 23:04:51 - kdirwatch_qfswatch_unittest(19844) - kf5.kcoreaddons.kdirwatch: KDirWatch::setDeleted: "KDirWatch-13" emitting deleted "/tmp/kdirwatch_qfswatch_unittest-uaIYOw/ExistingFile" QDEBUG : KDirWatch_UnitTest::testHardlinkChange() 23:04:51 - kdirwatch_qfswatch_unittest(19844) - kf5.kcoreaddons.kdirwatch: KDirWatch::setCreated: "KDirWatch-13" emitting created "/tmp/kdirwatch_qfswatch_unittest-uaIYOw/ExistingFile" QDEBUG : KDirWatch_UnitTest::testHardlinkChange() 23:04:51 - kdirwatch_qfswatch_unittest(19844) - KDirWatch_UnitTest::waitUntilAfter: Waited 0 ms so that now "2017-11-16T23:04:51" is > "2017-11-16T23:04:29" QWARN : KDirWatch_UnitTest::testHardlinkChange() 23:04:53 - kdirwatch_qfswatch_unittest(19844) - : Timeout waiting for KDirWatch signal "dirty(QString)" ( "/tmp/kdirwatch_qfswatch_unittest-uaIYOw/ExistingFile" ) FAIL! : KDirWatch_UnitTest::testHardlinkChange() 'waitForOneSignal(watch, SIGNAL(dirty(QString)), existingFile)' returned FALSE. () Loc: [/kde/src/5/frameworks/kcoreaddons/autotests/kdirwatch_unittest.cpp(704)] same failure with kdirwatch_stat_unittest.
no change with 5.10 beta 4
I have seen intermittent failures on these KDirWatch tests. On my machine they usually pass but sometimes fail. E.g. today I had the fam-based unit test fail when running the whole test suite, but then it worked when running just that one test. I think the same is true of the CI infrastructure, especially on FreeBSD. CC'ing David since he might have some troubleshooting advice.
At least, I see consistent failures if I run ctest or the autotest directly :) If that matters, kcoreaddons is built without the optional fam dependency.
... and just after writing the comment, I wiped the build dir and restarted from scratch and now I have a 3rd failure : # ./kpluginmetadatatest ********* Start testing of KPluginMetaDataTest ********* Config: Using QtTest library 5.10.0, Qt 5.10.0 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 7.2.1 20171020 [gcc-7-branch revision 253932]) PASS : KPluginMetaDataTest::initTestCase() PASS : KPluginMetaDataTest::testFromPluginLoader() PASS : KPluginMetaDataTest::testAllKeys() PASS : KPluginMetaDataTest::testTranslations() PASS : KPluginMetaDataTest::testReadStringList() PASS : KPluginMetaDataTest::testFromDesktopFile() PASS : KPluginMetaDataTest::twoStepsParseTest() PASS : KPluginMetaDataTest::testServiceType() INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Illegal .desktop group definition (does not end with ']'): "[PropertyDef::MissingTerminator"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Illegal .desktop group definition (does not end with ']'): "[PropertyDef::"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Illegal .desktop group definition (does not end with ']'): "["" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Read empty .desktop file group name! Invalid file?" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: "Skipping invalid group "" in service type ".*/bad-groups-servicetype.desktop"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: "Skipping invalid group "DoesNotStartWithPropertyDef::SomeOtherProperty" in service type ".+/data/servicetypes/bad-groups-servicetype.desktop"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Could not find Type= key in group "PropertyDef::MissingType"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: "Property type "integer" is not a known QVariant type. Found while parsing property definition for "InvalidType" in ".+/data/servicetypes/bad-groups-servicetype.desktop"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: ".+/data/servicetypes/bad-groups-input.desktop:\d+: Key name is missing: "=11"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: ".+/data/servicetypes/bad-groups-input.desktop:\d+: Key name is missing: "=13"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: ".+/data/servicetypes/bad-groups-input.desktop:\d+: Key name is missing: "=14"" FAIL! : KPluginMetaDataTest::testBadGroupsInServiceType() Not all expected messages were received PASS : KPluginMetaDataTest::testJSONMetadata() PASS : KPluginMetaDataTest::cleanupTestCase() Totals: 10 passed, 1 failed, 0 skipped, 0 blacklisted, 5ms ********* Finished testing of KPluginMetaDataTest *********
Are these still a thing?
kpluginmetadatatest still fails on my master build % ./kpluginmetadatatest ********* Start testing of KPluginMetaDataTest ********* Config: Using QtTest library 5.15.0, Qt 5.15.0 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 10.1.1 20200625 [revision c91e43e9363bd119a695d64505f96539fa451bf2]) PASS : KPluginMetaDataTest::initTestCase() PASS : KPluginMetaDataTest::testFromPluginLoader() PASS : KPluginMetaDataTest::testAllKeys() PASS : KPluginMetaDataTest::testTranslations() INFO : KPluginMetaDataTest::testReadStringList() Did not receive message: "Expected JSON property "String" to be a string list. Treating it as a list with a single entry: "foo" " INFO : KPluginMetaDataTest::testReadStringList() Did not receive message: "Expected JSON property "Bool" to be a string list. Treating it as a list with a single entry: "true" " INFO : KPluginMetaDataTest::testReadStringList() Did not receive message: "Expected JSON property "QuotedBool" to be a string list. Treating it as a list with a single entry: "true" " INFO : KPluginMetaDataTest::testReadStringList() Did not receive message: "Expected JSON property "Number" to be a string list. Treating it as a list with a single entry: "12345" " INFO : KPluginMetaDataTest::testReadStringList() Did not receive message: "Expected JSON property "QuotedNumber" to be a string list. Treating it as a list with a single entry: "12345" " INFO : KPluginMetaDataTest::testReadStringList() Did not receive message: "Expected JSON property "QuotedNull" to be a string list. Treating it as a list with a single entry: "null" " FAIL! : KPluginMetaDataTest::testReadStringList() Not all expected messages were received PASS : KPluginMetaDataTest::testFromDesktopFile() PASS : KPluginMetaDataTest::twoStepsParseTest() INFO : KPluginMetaDataTest::testServiceType() Did not receive message: "Unable to find service type for service "bar/foo" listed in "/data/kde/src/kcoreaddons/autotests/data/servicetypes/example-input.desktop"" FAIL! : KPluginMetaDataTest::testServiceType() Not all expected messages were received INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Illegal .desktop group definition (does not end with ']'): "[PropertyDef::MissingTerminator"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Illegal .desktop group definition (does not end with ']'): "[PropertyDef::"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Illegal .desktop group definition (does not end with ']'): "["" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Read empty .desktop file group name! Invalid file?" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: "Skipping invalid group "" in service type ".*/bad-groups-servicetype.desktop"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: "Skipping invalid group "DoesNotStartWithPropertyDef::SomeOtherProperty" in service type ".+/data/servicetypes/bad-groups-servicetype.desktop"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive message: "Could not find Type= key in group "PropertyDef::MissingType"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: "Property type "integer" is not a known QVariant type. Found while parsing property definition for "InvalidType" in ".+/data/servicetypes/bad-groups-servicetype.desktop"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: ".+/data/servicetypes/bad-groups-input.desktop:\d+: Key name is missing: "=11"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: ".+/data/servicetypes/bad-groups-input.desktop:\d+: Key name is missing: "=13"" INFO : KPluginMetaDataTest::testBadGroupsInServiceType() Did not receive any message matching: ".+/data/servicetypes/bad-groups-input.desktop:\d+: Key name is missing: "=14"" FAIL! : KPluginMetaDataTest::testBadGroupsInServiceType() Not all expected messages were received PASS : KPluginMetaDataTest::testJSONMetadata() PASS : KPluginMetaDataTest::cleanupTestCase() Totals: 8 passed, 3 failed, 0 skipped, 0 blacklisted, 6ms ********* Finished testing of KPluginMetaDataTest *********
Ah yes, that test looks a bit rubbish. I'm sure it'll not work if either QT_LOGGING_RULES and/or QT_MESSAGE_PATTERN are set as the generated lines will not match the expected lines
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kcoreaddons/-/merge_requests/20
ok, I tried running ctest -j4 a couple times, the kdirwatch_*_unittest tests fail randomly: 27/28 Testing: kdirwatch_inotify_unittest 27/28 Test: kdirwatch_inotify_unittest Command: "/data/kde/build/kcoreaddons/bin/kdirwatch_inotify_unittest" Directory: /data/kde/build/kcoreaddons/autotests "kdirwatch_inotify_unittest" start time: Sep 07 17:47 CEST Output: ---------------------------------------------------------- Using method QFSWatch ********* Start testing of KDirWatch_UnitTest ********* Config: Using QtTest library 5.15.0, Qt 5.15.0 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 10.1.1 20200625 [revision c91e43e9363bd119a695d64505f96539fa451bf2]) PASS : KDirWatch_UnitTest::initTestCase() QDEBUG : KDirWatch_UnitTest::touchOneFile() Waited 750 ms so that now "2020-09-07T17:47:45" is > "2020-09-07T17:47:44" PASS : KDirWatch_UnitTest::touchOneFile() QDEBUG : KDirWatch_UnitTest::touch1000Files() Waited 800 ms so that now "2020-09-07T17:47:46" is > "2020-09-07T17:47:45" QWARN : KDirWatch_UnitTest::touch1000Files() Timeout waiting for KDirWatch. Got 1 dirty() signals, expected 100 PASS : KDirWatch_UnitTest::touch1000Files() QDEBUG : KDirWatch_UnitTest::watchAndModifyOneFile() Waited 0 ms so that now "2020-09-07T17:47:48" is > "2020-09-07T17:47:44" PASS : KDirWatch_UnitTest::watchAndModifyOneFile() QDEBUG : KDirWatch_UnitTest::removeAndReAdd() Waited 900 ms so that now "2020-09-07T17:47:50" is > "2020-09-07T17:47:49" QDEBUG : KDirWatch_UnitTest::removeAndReAdd() Waited 900 ms so that now "2020-09-07T17:47:51" is > "2020-09-07T17:47:50" PASS : KDirWatch_UnitTest::removeAndReAdd() QDEBUG : KDirWatch_UnitTest::watchNonExistent() Creating "/tmp/kdirwatch_inotify_unittest-YtguSE/subdir" QDEBUG : KDirWatch_UnitTest::watchNonExistent() Creating "/tmp/kdirwatch_inotify_unittest-YtguSE/subdir/0" QDEBUG : KDirWatch_UnitTest::watchNonExistent() Waited 0 ms so that now "2020-09-07T17:47:53" is > "2020-09-07T17:47:52" PASS : KDirWatch_UnitTest::watchNonExistent() PASS : KDirWatch_UnitTest::watchNonExistentWithSingleton() QDEBUG : KDirWatch_UnitTest::testDelete() Waited 900 ms so that now "2020-09-07T17:47:56" is > "2020-09-07T17:47:55" PASS : KDirWatch_UnitTest::testDelete() QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 0 ms so that now "2020-09-07T17:47:56" is > "2020-09-07T17:47:54" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 800 ms so that now "2020-09-07T17:47:57" is > "2020-09-07T17:47:56" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 1 removing+recreating "/tmp/kdirwatch_inotify_unittest-YtguSE/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 900 ms so that now "2020-09-07T17:47:58" is > "2020-09-07T17:47:57" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 2 removing+recreating "/tmp/kdirwatch_inotify_unittest-YtguSE/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 900 ms so that now "2020-09-07T17:47:59" is > "2020-09-07T17:47:58" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 3 removing+recreating "/tmp/kdirwatch_inotify_unittest-YtguSE/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 900 ms so that now "2020-09-07T17:48:00" is > "2020-09-07T17:47:59" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 4 removing+recreating "/tmp/kdirwatch_inotify_unittest-YtguSE/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 850 ms so that now "2020-09-07T17:48:01" is > "2020-09-07T17:48:00" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 5 removing+recreating "/tmp/kdirwatch_inotify_unittest-YtguSE/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 900 ms so that now "2020-09-07T17:48:02" is > "2020-09-07T17:48:01" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 0 ms so that now "2020-09-07T17:48:02" is > "2020-09-07T17:48:01" PASS : KDirWatch_UnitTest::testDeleteAndRecreateFile() PASS : KDirWatch_UnitTest::testDeleteAndRecreateDir() QDEBUG : KDirWatch_UnitTest::testMoveTo() Waited 900 ms so that now "2020-09-07T17:48:04" is > "2020-09-07T17:48:03" QDEBUG : KDirWatch_UnitTest::testMoveTo() Overwrite file1 with tempfile QDEBUG : KDirWatch_UnitTest::testMoveTo() Waited 900 ms so that now "2020-09-07T17:48:05" is > "2020-09-07T17:48:04" QDEBUG : KDirWatch_UnitTest::testMoveTo() Waited 0 ms so that now "2020-09-07T17:48:05" is > "2020-09-07T17:48:04" PASS : KDirWatch_UnitTest::testMoveTo() QDEBUG : KDirWatch_UnitTest::nestedEventLoop() Waited 0 ms so that now "2020-09-07T17:48:06" is > "2020-09-07T17:47:44" QDEBUG : KDirWatch_UnitTest::nestedEventLoop() Waited 0 ms so that now "2020-09-07T17:48:07" is > "2020-09-07T17:47:44" PASS : KDirWatch_UnitTest::nestedEventLoop() QDEBUG : KDirWatch_UnitTest::testHardlinkChange() Waited 900 ms so that now "2020-09-07T17:48:10" is > "2020-09-07T17:48:09" QDEBUG : KDirWatch_UnitTest::testHardlinkChange() Waited 0 ms so that now "2020-09-07T17:48:10" is > "2020-09-07T17:47:44" PASS : KDirWatch_UnitTest::testHardlinkChange() QDEBUG : KDirWatch_UnitTest::stopAndRestart() Waited 0 ms so that now "2020-09-07T17:48:10" is > "2020-09-07T17:48:08" QDEBUG : KDirWatch_UnitTest::stopAndRestart() Waited 400 ms so that now "2020-09-07T17:48:11" is > "2020-09-07T17:48:10" PASS : KDirWatch_UnitTest::stopAndRestart() FAIL! : KDirWatch_UnitTest::shouldIgnoreQrcPaths() 'file.remove()' returned FALSE. () Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(856)] SKIP : KDirWatch_UnitTest::benchCreateTree() Benchmarks are disabled in debug mode Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(863)] SKIP : KDirWatch_UnitTest::benchCreateWatcher() Benchmarks are disabled in debug mode Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(875)] SKIP : KDirWatch_UnitTest::benchNotifyWatcher() Benchmarks are disabled in debug mode Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(889)] PASS : KDirWatch_UnitTest::cleanupTestCase() Totals: 15 passed, 1 failed, 3 skipped, 0 blacklisted, 27898ms ********* Finished testing of KDirWatch_UnitTest ********* and on the next run, kdirwatch_qfswatch_unittest failed instead: 28/28 Testing: kdirwatch_qfswatch_unittest 28/28 Test: kdirwatch_qfswatch_unittest Command: "/data/kde/build/kcoreaddons/bin/kdirwatch_qfswatch_unittest" Directory: /data/kde/build/kcoreaddons/autotests "kdirwatch_qfswatch_unittest" start time: Sep 07 17:50 CEST Output: ---------------------------------------------------------- Using method QFSWatch ********* Start testing of KDirWatch_UnitTest ********* Config: Using QtTest library 5.15.0, Qt 5.15.0 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 10.1.1 20200625 [revision c91e43e9363bd119a695d64505f96539fa451bf2]) PASS : KDirWatch_UnitTest::initTestCase() QDEBUG : KDirWatch_UnitTest::touchOneFile() Waited 500 ms so that now "2020-09-07T17:50:18" is > "2020-09-07T17:50:17" PASS : KDirWatch_UnitTest::touchOneFile() QDEBUG : KDirWatch_UnitTest::touch1000Files() Waited 450 ms so that now "2020-09-07T17:50:19" is > "2020-09-07T17:50:18" QWARN : KDirWatch_UnitTest::touch1000Files() Timeout waiting for KDirWatch. Got 1 dirty() signals, expected 100 PASS : KDirWatch_UnitTest::touch1000Files() QDEBUG : KDirWatch_UnitTest::watchAndModifyOneFile() Waited 0 ms so that now "2020-09-07T17:50:21" is > "2020-09-07T17:50:17" PASS : KDirWatch_UnitTest::watchAndModifyOneFile() QDEBUG : KDirWatch_UnitTest::removeAndReAdd() Waited 400 ms so that now "2020-09-07T17:50:22" is > "2020-09-07T17:50:21" QDEBUG : KDirWatch_UnitTest::removeAndReAdd() Waited 400 ms so that now "2020-09-07T17:50:23" is > "2020-09-07T17:50:22" PASS : KDirWatch_UnitTest::removeAndReAdd() QDEBUG : KDirWatch_UnitTest::watchNonExistent() Creating "/tmp/kdirwatch_qfswatch_unittest-DUOCgp/subdir" QDEBUG : KDirWatch_UnitTest::watchNonExistent() Creating "/tmp/kdirwatch_qfswatch_unittest-DUOCgp/subdir/0" QDEBUG : KDirWatch_UnitTest::watchNonExistent() Waited 0 ms so that now "2020-09-07T17:50:25" is > "2020-09-07T17:50:24" PASS : KDirWatch_UnitTest::watchNonExistent() PASS : KDirWatch_UnitTest::watchNonExistentWithSingleton() QDEBUG : KDirWatch_UnitTest::testDelete() Waited 400 ms so that now "2020-09-07T17:50:28" is > "2020-09-07T17:50:27" PASS : KDirWatch_UnitTest::testDelete() QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 0 ms so that now "2020-09-07T17:50:28" is > "2020-09-07T17:50:26" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 300 ms so that now "2020-09-07T17:50:29" is > "2020-09-07T17:50:28" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 1 removing+recreating "/tmp/kdirwatch_qfswatch_unittest-DUOCgp/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 400 ms so that now "2020-09-07T17:50:30" is > "2020-09-07T17:50:29" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 2 removing+recreating "/tmp/kdirwatch_qfswatch_unittest-DUOCgp/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 400 ms so that now "2020-09-07T17:50:31" is > "2020-09-07T17:50:30" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 3 removing+recreating "/tmp/kdirwatch_qfswatch_unittest-DUOCgp/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 400 ms so that now "2020-09-07T17:50:32" is > "2020-09-07T17:50:31" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 4 removing+recreating "/tmp/kdirwatch_qfswatch_unittest-DUOCgp/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 400 ms so that now "2020-09-07T17:50:33" is > "2020-09-07T17:50:32" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Attempt # 5 removing+recreating "/tmp/kdirwatch_qfswatch_unittest-DUOCgp/subdir/1" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 400 ms so that now "2020-09-07T17:50:34" is > "2020-09-07T17:50:33" QDEBUG : KDirWatch_UnitTest::testDeleteAndRecreateFile() Waited 0 ms so that now "2020-09-07T17:50:34" is > "2020-09-07T17:50:33" PASS : KDirWatch_UnitTest::testDeleteAndRecreateFile() PASS : KDirWatch_UnitTest::testDeleteAndRecreateDir() QDEBUG : KDirWatch_UnitTest::testMoveTo() Waited 400 ms so that now "2020-09-07T17:50:36" is > "2020-09-07T17:50:35" QDEBUG : KDirWatch_UnitTest::testMoveTo() Overwrite file1 with tempfile QDEBUG : KDirWatch_UnitTest::testMoveTo() Waited 400 ms so that now "2020-09-07T17:50:37" is > "2020-09-07T17:50:36" QDEBUG : KDirWatch_UnitTest::testMoveTo() Waited 0 ms so that now "2020-09-07T17:50:37" is > "2020-09-07T17:50:36" PASS : KDirWatch_UnitTest::testMoveTo() QDEBUG : KDirWatch_UnitTest::nestedEventLoop() Waited 0 ms so that now "2020-09-07T17:50:38" is > "2020-09-07T17:50:17" QDEBUG : KDirWatch_UnitTest::nestedEventLoop() Waited 0 ms so that now "2020-09-07T17:50:39" is > "2020-09-07T17:50:17" PASS : KDirWatch_UnitTest::nestedEventLoop() QDEBUG : KDirWatch_UnitTest::testHardlinkChange() Waited 400 ms so that now "2020-09-07T17:50:42" is > "2020-09-07T17:50:41" QDEBUG : KDirWatch_UnitTest::testHardlinkChange() Waited 0 ms so that now "2020-09-07T17:50:42" is > "2020-09-07T17:50:17" PASS : KDirWatch_UnitTest::testHardlinkChange() QDEBUG : KDirWatch_UnitTest::stopAndRestart() Waited 0 ms so that now "2020-09-07T17:50:42" is > "2020-09-07T17:50:40" QDEBUG : KDirWatch_UnitTest::stopAndRestart() Waited 0 ms so that now "2020-09-07T17:50:43" is > "2020-09-07T17:50:42" PASS : KDirWatch_UnitTest::stopAndRestart() FAIL! : KDirWatch_UnitTest::shouldIgnoreQrcPaths() 'file.remove()' returned FALSE. () Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(856)] SKIP : KDirWatch_UnitTest::benchCreateTree() Benchmarks are disabled in debug mode Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(863)] SKIP : KDirWatch_UnitTest::benchCreateWatcher() Benchmarks are disabled in debug mode Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(875)] SKIP : KDirWatch_UnitTest::benchNotifyWatcher() Benchmarks are disabled in debug mode Loc: [/data/kde/src/kcoreaddons/autotests/kdirwatch_unittest.cpp(889)] PASS : KDirWatch_UnitTest::cleanupTestCase() Totals: 15 passed, 1 failed, 3 skipped, 0 blacklisted, 27107ms ********* Finished testing of KDirWatch_UnitTest *********
Please make a separate report for them. I'm fairly certain it's because the kdirwatch tests are effectively the same test so unless all operations are confined to a tempdir they are totally not re-entrant. And the qrc test at least certainly isn't.
Git commit a38e639ad913d1dce1f808029333fc00995b641e by Christophe Giboudeaux, on behalf of Harald Sitter. Committed on 13/09/2020 at 10:32. Pushed by cgiboudeaux into branch 'master'. simplify qrc watching test This test was a less sufficiently tooled variant of the existing removeAndReAdd in terms of watching things apper and disappear, which the test asserts does not break when one tries to watch qrc paths. While I get the idea of wanting to have a very truthful test case in our case we have to take reentrancy over reproducibility since the test may be run multipel times in paralla. I've verified that undoing the qrc escape in addEntry() actually still breaks within the context of removeAndReAdd and so this is a 100% equal replacement for our purposes, while also making things a bit faster since we now don't need to setup a new watch. This unbreaks parallel runs of the kdirwatch test. Since the test gets compiled for each internal backend we cannot do stuff on shared paths (such as cd'ing home and watching it - we'd run into reentrancy problems) M +2 -24 autotests/kdirwatch_unittest.cpp https://invent.kde.org/frameworks/kcoreaddons/commit/a38e639ad913d1dce1f808029333fc00995b641e
Git commit 25afdfe5fc002091017da7b5611414e2f30135c3 by Christophe Giboudeaux, on behalf of Harald Sitter. Committed on 13/09/2020 at 10:40. Pushed by cgiboudeaux into branch 'master'. harden message-based tests against environment QTest::ignoreMessage is both an ignore AND an expectation. So if a line is not generated that fails the test. Trouble is the environment has all sorts of ways to change and influence the output generated by qdebugs. To deal with this we'll skip when overriding environment stuff is set. When possible we'll try to force desktopparser on, but it's a bit tricky because of how many overriding elements there are FIXED-IN: 5.75 M +41 -1 autotests/kpluginmetadatatest.cpp M +1 -0 src/lib/plugin/desktopfileparser.cpp https://invent.kde.org/frameworks/kcoreaddons/commit/25afdfe5fc002091017da7b5611414e2f30135c3