test/helpers.hpp | 13 +++++++++---- test/httpcrashtest.cpp | 8 +++++++- 2 files changed, 16 insertions(+), 5 deletions(-)
New commits: commit 51b8ed7309979548c1f72918edab29b939eae488 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Fri Aug 30 12:22:04 2019 +0200 Commit: Miklos Vajna <vmik...@collabora.com> CommitDate: Fri Aug 30 12:22:11 2019 +0200 Try to avoid a timing problem in HTTPCrashTest::testRecoverAfterKitCrash() In case we fail to open the document, try again in 2 seconds (same value as in HTTPServerTest::testConvertTo()). This seems to be needed fore core.git dbgutil builds, but don't do that unconditionally, in case the sleep is not needed for optimized core.git. Change-Id: I4585d1f273bfa5fffc4b02bc6107f27a2c9e1280 diff --git a/test/helpers.hpp b/test/helpers.hpp index 708806cd2..19bf0b516 100644 --- a/test/helpers.hpp +++ b/test/helpers.hpp @@ -416,7 +416,7 @@ connectLOKit(const Poco::URI& uri, } inline -std::shared_ptr<LOOLWebSocket> loadDocAndGetSocket(const Poco::URI& uri, const std::string& documentURL, const std::string& testname, bool isView = true) +std::shared_ptr<LOOLWebSocket> loadDocAndGetSocket(const Poco::URI& uri, const std::string& documentURL, const std::string& testname, bool isView = true, bool isAssert = true) { try { @@ -426,7 +426,12 @@ std::shared_ptr<LOOLWebSocket> loadDocAndGetSocket(const Poco::URI& uri, const s std::shared_ptr<LOOLWebSocket> socket = connectLOKit(uri, request, response, testname); sendTextFrame(socket, "load url=" + documentURL, testname); - CPPUNIT_ASSERT_MESSAGE("cannot load the document " + documentURL, isDocumentLoaded(*socket, testname, isView)); + bool isLoaded = isDocumentLoaded(*socket, testname, isView); + if (!isLoaded && !isAssert) + { + return nullptr; + } + CPPUNIT_ASSERT_MESSAGE("cannot load the document " + documentURL, isLoaded); TST_LOG("Loaded document [" << documentURL << "]."); return socket; @@ -441,13 +446,13 @@ std::shared_ptr<LOOLWebSocket> loadDocAndGetSocket(const Poco::URI& uri, const s } inline -std::shared_ptr<LOOLWebSocket> loadDocAndGetSocket(const std::string& docFilename, const Poco::URI& uri, const std::string& testname, bool isView = true) +std::shared_ptr<LOOLWebSocket> loadDocAndGetSocket(const std::string& docFilename, const Poco::URI& uri, const std::string& testname, bool isView = true, bool isAssert = true) { try { std::string documentPath, documentURL; getDocumentPathAndURL(docFilename, documentPath, documentURL, testname); - return loadDocAndGetSocket(uri, documentURL, testname, isView); + return loadDocAndGetSocket(uri, documentURL, testname, isView, isAssert); } catch (const Poco::Exception& exc) { diff --git a/test/httpcrashtest.cpp b/test/httpcrashtest.cpp index 8636c5cea..d0769e9ef 100644 --- a/test/httpcrashtest.cpp +++ b/test/httpcrashtest.cpp @@ -198,7 +198,13 @@ void HTTPCrashTest::testRecoverAfterKitCrash() // We expect the client connection to close. TST_LOG("Reconnect after kill."); - std::shared_ptr<LOOLWebSocket> socket2 = loadDocAndGetSocket("empty.odt", _uri, testname); + std::shared_ptr<LOOLWebSocket> socket2 = loadDocAndGetSocket("empty.odt", _uri, testname, /*isView=*/true, /*isAssert=*/false); + if (!socket2) + { + // In case still starting up. + sleep(2); + socket2 = loadDocAndGetSocket("empty.odt", _uri, testname); + } sendTextFrame(socket2, "status", testname); assertResponseString(socket2, "status:", testname); } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits