forked from qt-creator/qt-creator
UnitTests: Fix flaky test
ImageCacheGenerator.CleanIsCallingAbortCallback was not waiting for the expected call. Task-number: QTCREATORBUG-25580 Change-Id: I43265389a36e568dea7c7ece5524ef597232d049 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -277,10 +277,8 @@ TEST_F(ImageCacheGenerator, CallWalCheckpointFullIfQueueIsEmpty)
|
|||||||
|
|
||||||
TEST_F(ImageCacheGenerator, CleanIsCallingAbortCallback)
|
TEST_F(ImageCacheGenerator, CleanIsCallingAbortCallback)
|
||||||
{
|
{
|
||||||
ON_CALL(collectorMock, start(_, _, _, _, _))
|
ON_CALL(collectorMock, start(_, _, _, _, _)).WillByDefault([&](auto, auto, auto, auto, auto) {
|
||||||
.WillByDefault([&](auto, auto, auto, auto captureCallback, auto) {
|
notification.wait();
|
||||||
captureCallback({}, {});
|
|
||||||
waitInThread.wait();
|
|
||||||
});
|
});
|
||||||
generator.generateImage(
|
generator.generateImage(
|
||||||
"name", {}, {11}, imageCallbackMock.AsStdFunction(), abortCallbackMock.AsStdFunction(), {});
|
"name", {}, {11}, imageCallbackMock.AsStdFunction(), abortCallbackMock.AsStdFunction(), {});
|
||||||
@@ -288,10 +286,12 @@ TEST_F(ImageCacheGenerator, CleanIsCallingAbortCallback)
|
|||||||
"name2", {}, {11}, imageCallbackMock.AsStdFunction(), abortCallbackMock.AsStdFunction(), {});
|
"name2", {}, {11}, imageCallbackMock.AsStdFunction(), abortCallbackMock.AsStdFunction(), {});
|
||||||
|
|
||||||
EXPECT_CALL(abortCallbackMock, Call(Eq(QmlDesigner::ImageCache::AbortReason::Abort)))
|
EXPECT_CALL(abortCallbackMock, Call(Eq(QmlDesigner::ImageCache::AbortReason::Abort)))
|
||||||
.Times(AtLeast(1));
|
.Times(AtLeast(1))
|
||||||
|
.WillRepeatedly([&](auto) { waitInThread.notify(); });
|
||||||
|
|
||||||
generator.clean();
|
generator.clean();
|
||||||
waitInThread.notify();
|
notification.notify();
|
||||||
|
waitInThread.wait();
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(ImageCacheGenerator, WaitForFinished)
|
TEST_F(ImageCacheGenerator, WaitForFinished)
|
||||||
|
Reference in New Issue
Block a user