tests: fix testAddAcceptOfflineThenConnects

Change-Id: I0e0248d167af0e81cef828ef3c1e3746d974aaed
This commit is contained in:
Sébastien Blin
2024-01-02 11:55:06 -05:00
committed by Adrien Béraud
parent df91825693
commit 8065504bb0

View File

@ -584,12 +584,23 @@ ConversationMembersEventTest::testAddAcceptOfflineThenConnects()
requestReceived = true;
cv.notify_one();
}));
bool aliceStopped = false;
confHandlers.insert(
libjami::exportable_callback<libjami::ConfigurationSignal::VolatileDetailsChanged>(
[&](const std::string&, const std::map<std::string, std::string>&) {
auto details = aliceAccount->getVolatileAccountDetails();
auto daemonStatus = details[libjami::Account::ConfProperties::Registration::STATUS];
if (daemonStatus == "UNREGISTERED")
aliceStopped = true;
cv.notify_one();
}));
libjami::registerSignalHandlers(confHandlers);
libjami::addConversationMember(aliceId, convId, bobUri);
CPPUNIT_ASSERT(cv.wait_for(lk, 60s, [&] { return requestReceived; }));
Manager::instance().sendRegister(aliceId, false); // This avoid to sync immediately
CPPUNIT_ASSERT(cv.wait_for(lk, 60s, [&] { return aliceStopped; }));
libjami::acceptConversationRequest(bobId, convId);
std::this_thread::sleep_for(40s); // Wait for negotiation to timeout