Skip QResourceEngine cleanupTestCase on VxWorks
COIN is using patched std::optional header for VxWorks, which is based on 23.09 version of this system, and fixes few compilation and runtime issues, unfortunately it introduced runtime error as well. This error causes std::optional to not destroy contained object in destructor, which is a source of fail in tst_QResourceEngine::cleanupTestCase(). This fail was quieted down using QEXPECT_FAIL for VxWorks, due to exact reason being unknown at the time. It was found out that unpatched version of std::optional header in VxWorks 24.03 fixes most of issues found in 23.09, so there is no need to use old header. Additionally it cleans contained object in destructor properly, so this is the one that should be used. In order to use it, COIN will need to refresh VxWorks images, but this in turn will fail this test with XFAIL. Replace QEXPECT_FAIL with QSKIP in tst_QResourceEngine::cleanupTestCase for VxWorks, update comment accordngly. Once unpatched optional version from VxWorks 24.03 will be used on COIN, skip will be removed entirely. Task-number: QTBUG-130069 Pick-to: 6.9 Change-Id: Ib446d04b2fabb027dad7af909ac00b7b30e76b53 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
a5f80b4732
commit
a10acaca08
@ -92,11 +92,9 @@ void tst_QResourceEngine::initTestCase()
|
||||
void tst_QResourceEngine::cleanupTestCase()
|
||||
{
|
||||
#if defined(Q_OS_VXWORKS)
|
||||
// This fails for not yet known reason: resource `m_runtimeResourceRcc` exists, but its failed
|
||||
// to be removed due to refernce count of QDynamicFileResourceRoot instance equals to 46
|
||||
// (regardless of how many test cases were executed), which causes
|
||||
// `QResource::unregisterResource` to remove false.
|
||||
QEXPECT_FAIL("", "QTBUG-130069: reference count of resource isn't getting down to 0", Abort);
|
||||
// Due to bug in patched std::optional on VxWorks, which is not running destructor for contained object, this tests leaks memory.
|
||||
// Once unpatched optional version from VxWorks 24.03 will be used on CI, below skip will be removed.
|
||||
QSKIP("QTBUG-130069: reference count of resource isn't getting down to 0");
|
||||
#endif
|
||||
// make sure we don't leak memory
|
||||
QVERIFY(QResource::unregisterResource(m_runtimeResourceRcc));
|
||||
|
Loading…
x
Reference in New Issue
Block a user