summaryrefslogtreecommitdiffstats
path: root/libqsystemtest/qtestide.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libqsystemtest/qtestide.cpp')
-rw-r--r--libqsystemtest/qtestide.cpp26
1 files changed, 23 insertions, 3 deletions
diff --git a/libqsystemtest/qtestide.cpp b/libqsystemtest/qtestide.cpp
index 2e9decd..cb4a271 100644
--- a/libqsystemtest/qtestide.cpp
+++ b/libqsystemtest/qtestide.cpp
@@ -46,9 +46,15 @@
#include <QScriptValueIterator>
#include <QPixmap>
-QTestIDE::QTestIDE(QSystemTest *sysTest)
+QTestIDE* QTestIDE::instance()
+{
+ static QTestIDE instance;
+ return &instance;
+}
+
+QTestIDE::QTestIDE()
+ : m_sysTest(0)
{
- m_sysTest = sysTest;
must_stop_event_recording = false;
event_recording_aborted = false;
}
@@ -57,6 +63,11 @@ QTestIDE::~QTestIDE()
{
}
+void QTestIDE::setSystemTest(QSystemTest *sysTest)
+{
+ m_sysTest = sysTest;
+}
+
/*!
\internal
Opens a socket connection to a remote test tool and uses the connection to
@@ -72,6 +83,15 @@ bool QTestIDE::isConnected()
return m_remote.isConnected();
}
+void QTestIDE::scriptSyntaxError(const QString& errorMsg, const QString& file, int line)
+{
+ if (errorMsg.isEmpty()) {
+ qWarning(QString("Syntax Error in %1, near line %2").arg(file).arg(line).toLatin1());
+ } else {
+ qWarning(QString("Syntax Error in %1, near line %2: %3").arg(file).arg(line).arg(errorMsg).toLatin1());
+ }
+}
+
bool QTestIDE::queryBreakpoint(const QString& file, int line, const QString& function, int depth)
{
if (m_remote.isConnected()) {
@@ -192,7 +212,7 @@ void QTestIDE::contextToMap(const QScriptContext* scriptContext, QVariantMap &co
contextMap["line"] = ctxInfo.lineNumber();
if (ctxInfo.functionName().isEmpty()) {
- contextMap["function"] = m_sysTest->currentTestFunction();
+ contextMap["function"] = m_sysTest ? m_sysTest->currentTestFunction() : QString("unknown");
} else {
contextMap["function"] = ctxInfo.functionName();
contextMap["funcStart"] = ctxInfo.functionStartLineNumber();