Valgrind: Fix test compilation

Change-Id: I1b64cab7326830cec86b9b5154e9efb6d0ea8569
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
This commit is contained in:
hjk
2016-01-26 16:11:39 +01:00
parent 403fe30a30
commit 50499079dc
2 changed files with 15 additions and 5 deletions

View File

@@ -30,6 +30,7 @@
#include <valgrind/xmlprotocol/suppression.h> #include <valgrind/xmlprotocol/suppression.h>
#include <projectexplorer/projectexplorer.h> #include <projectexplorer/projectexplorer.h>
#include <projectexplorer/runnables.h>
#include <extensionsystem/pluginmanager.h> #include <extensionsystem/pluginmanager.h>
#include "parsertests.h" #include "parsertests.h"
@@ -466,9 +467,12 @@ void ParserTests::testRealValgrind()
qDebug() << "running exe:" << executable << " HINT: set VALGRIND_TEST_BIN to change this"; qDebug() << "running exe:" << executable << " HINT: set VALGRIND_TEST_BIN to change this";
ThreadedParser parser; ThreadedParser parser;
ProjectExplorer::StandardRunnable debuggee;
debuggee.executable = executable;
Memcheck::MemcheckRunner runner; Memcheck::MemcheckRunner runner;
runner.setValgrindExecutable(QLatin1String("valgrind")); runner.setValgrindExecutable(QLatin1String("valgrind"));
runner.setDebuggeeExecutable(executable); runner.setDebuggee(debuggee);
runner.setParser(&parser); runner.setParser(&parser);
RunnerDumper dumper(&runner, &parser); RunnerDumper dumper(&runner, &parser);
runner.start(); runner.start();
@@ -497,17 +501,20 @@ void ParserTests::testValgrindStartError()
{ {
QFETCH(QString, valgrindExe); QFETCH(QString, valgrindExe);
QFETCH(QStringList, valgrindArgs); QFETCH(QStringList, valgrindArgs);
QFETCH(QString, debuggee); QFETCH(QString, debuggeeExecutable);
QFETCH(QString, debuggeeArgs); QFETCH(QString, debuggeeArgs);
ThreadedParser parser; ThreadedParser parser;
ProjectExplorer::StandardRunnable debuggee;
debuggee.executable = debuggeeExecutable;
debuggee.commandLineArguments = debuggeeArgs;
Memcheck::MemcheckRunner runner; Memcheck::MemcheckRunner runner;
runner.setParser(&parser); runner.setParser(&parser);
runner.setValgrindExecutable(valgrindExe); runner.setValgrindExecutable(valgrindExe);
runner.setValgrindArguments(valgrindArgs); runner.setValgrindArguments(valgrindArgs);
runner.setDebuggeeExecutable(debuggee); runner.setDebuggee(debuggee);
runner.setDebuggeeArguments(debuggeeArgs);
RunnerDumper dumper(&runner, &parser); RunnerDumper dumper(&runner, &parser);
runner.start(); runner.start();
runner.waitForFinished(); runner.waitForFinished();

View File

@@ -34,6 +34,7 @@
#include <valgrind/memcheck/memcheckrunner.h> #include <valgrind/memcheck/memcheckrunner.h>
#include <projectexplorer/projectexplorer.h> #include <projectexplorer/projectexplorer.h>
#include <projectexplorer/runnables.h>
#include <extensionsystem/pluginmanager.h> #include <extensionsystem/pluginmanager.h>
#include <QDebug> #include <QDebug>
@@ -77,8 +78,10 @@ QString TestRunner::runTestBinary(const QString &binary, const QStringList &vArg
const QString binPath = appBinDir + QLatin1Char('/') + binary; const QString binPath = appBinDir + QLatin1Char('/') + binary;
if (!QFileInfo(binPath).isExecutable()) if (!QFileInfo(binPath).isExecutable())
qFatal("No such test app: %s", qPrintable(binPath)); qFatal("No such test app: %s", qPrintable(binPath));
ProjectExplorer::StandardRunnable debuggee;
debuggee.executable = binPath;
m_runner->setValgrindArguments(QStringList() << "--num-callers=50" << "--track-origins=yes" << vArgs); m_runner->setValgrindArguments(QStringList() << "--num-callers=50" << "--track-origins=yes" << vArgs);
m_runner->setDebuggeeExecutable(binPath); m_runner->setDebuggee(debuggee);
m_runner->start(); m_runner->start();
m_runner->waitForFinished(); m_runner->waitForFinished();
return binPath; return binPath;