summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2017-01-30 10:05:42 +0100
committerNikolai Kosjar <nikolai.kosjar@qt.io>2017-02-13 15:21:04 +0000
commit340063c6244058ec64fd77d8841b056d5a38e5a1 (patch)
tree4aaa172245b7f00a50a6ed1471e2f5a46f15baea /tests
parente03132f51796f1b882c3dfeda1bb869a99d6bf2a (diff)
downloadqt-creator-340063c6244058ec64fd77d8841b056d5a38e5a1.tar.gz
Clang: Use Utils::TemporaryDirectory
Task-number: QTCREATORBUG-17401 Change-Id: Ibf6007455ec92b1d9fcac17e1f3b5e2af21b7438 Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/echoserver/echoserver.pro6
-rw-r--r--tests/unit/unittest/clientserveroutsideprocess-test.cpp28
-rw-r--r--tests/unit/unittest/unittests-main.cpp4
3 files changed, 29 insertions, 9 deletions
diff --git a/tests/unit/echoserver/echoserver.pro b/tests/unit/echoserver/echoserver.pro
index 36c4f99b32..0f9ed76afa 100644
--- a/tests/unit/echoserver/echoserver.pro
+++ b/tests/unit/echoserver/echoserver.pro
@@ -8,6 +8,12 @@ TEMPLATE = app
unix:LIBS += -ldl
+# Set IDE_LIBEXEC_PATH and IDE_BIN_PATH to silence a warning about empty
+# QTC_REL_TOOLS_PATH, which is not used by the tests.
+IDE_LIBEXEC_PATH=$$PWD
+IDE_BIN_PATH=$$PWD
+include($$PWD/../../../src/libs/utils/utils-lib.pri)
+
include(../../../qtcreator.pri)
include(../../../src/libs/clangbackendipc/clangbackendipc-lib.pri)
include(../../../src/libs/sqlite/sqlite-lib.pri)
diff --git a/tests/unit/unittest/clientserveroutsideprocess-test.cpp b/tests/unit/unittest/clientserveroutsideprocess-test.cpp
index ed3391ddef..ded6b24a6d 100644
--- a/tests/unit/unittest/clientserveroutsideprocess-test.cpp
+++ b/tests/unit/unittest/clientserveroutsideprocess-test.cpp
@@ -51,6 +51,7 @@
#include <QString>
#include <QVariant>
+#include <memory>
#include <vector>
using namespace ClangBackEnd;
@@ -58,6 +59,13 @@ using namespace ClangBackEnd;
using ::testing::Eq;
using ::testing::SizeIs;
+struct Data {
+ Data() : client(&mockClangCodeModelClient) {}
+
+ MockClangCodeModelClient mockClangCodeModelClient;
+ ClangBackEnd::ClangCodeModelConnectionClient client;
+};
+
class ClientServerOutsideProcess : public ::testing::Test
{
protected:
@@ -67,16 +75,15 @@ protected:
static void SetUpTestCase();
static void TearDownTestCase();
- static MockClangCodeModelClient mockClangCodeModelClient;
- static ClangBackEnd::ClangCodeModelConnectionClient client;
+ static std::unique_ptr<Data> d;
+ MockClangCodeModelClient &mockClangCodeModelClient = d->mockClangCodeModelClient;
+ ClangBackEnd::ClangCodeModelConnectionClient &client = d->client;
};
-MockClangCodeModelClient ClientServerOutsideProcess::mockClangCodeModelClient;
-ClangBackEnd::ClangCodeModelConnectionClient ClientServerOutsideProcess::client(&ClientServerOutsideProcess::mockClangCodeModelClient);
+std::unique_ptr<Data> ClientServerOutsideProcess::d;
using ClientServerOutsideProcessSlowTest = ClientServerOutsideProcess;
-
TEST_F(ClientServerOutsideProcessSlowTest, RestartProcessAsynchronously)
{
QSignalSpy clientSpy(&client, &ConnectionClient::connectedToLocalSocket);
@@ -176,10 +183,12 @@ TEST_F(ClientServerOutsideProcess, SendUnregisterProjectPartsForEditorMessage)
void ClientServerOutsideProcess::SetUpTestCase()
{
- QSignalSpy clientSpy(&client, &ConnectionClient::connectedToLocalSocket);
- client.setProcessPath(Utils::HostOsInfo::withExecutableSuffix(QStringLiteral(ECHOSERVER)));
+ d.reset(new Data);
+
+ QSignalSpy clientSpy(&d->client, &ConnectionClient::connectedToLocalSocket);
+ d->client.setProcessPath(Utils::HostOsInfo::withExecutableSuffix(QStringLiteral(ECHOSERVER)));
- client.startProcessAndConnectToServerAsynchronously();
+ d->client.startProcessAndConnectToServerAsynchronously();
ASSERT_TRUE(clientSpy.wait(100000));
ASSERT_THAT(clientSpy, SizeIs(1));
@@ -187,7 +196,8 @@ void ClientServerOutsideProcess::SetUpTestCase()
void ClientServerOutsideProcess::TearDownTestCase()
{
- client.finishProcess();
+ d->client.finishProcess();
+ d.reset();
}
void ClientServerOutsideProcess::SetUp()
{
diff --git a/tests/unit/unittest/unittests-main.cpp b/tests/unit/unittest/unittests-main.cpp
index 0e6d913165..18b428a39f 100644
--- a/tests/unit/unittest/unittests-main.cpp
+++ b/tests/unit/unittest/unittests-main.cpp
@@ -25,6 +25,8 @@
#include <sqliteglobal.h>
+#include <utils/temporarydirectory.h>
+
#include <QCoreApplication>
#include <QLoggingCategory>
@@ -37,6 +39,8 @@
int main(int argc, char *argv[])
{
+ Utils::TemporaryDirectory::setMasterTemporaryDirectory(QDir::tempPath()
+ +"/QtCreator-UnitTests-XXXXXX");
Sqlite::registerTypes();
QCoreApplication application(argc, argv);