aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qjsengine
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2018-03-28 08:27:57 +0200
committerLiang Qi <liang.qi@qt.io>2018-03-28 08:27:57 +0200
commit198409ba76e18587526e9e1ec84fdb432c671937 (patch)
tree2d06c052272ddfd1c9b34b863e342826a31d20b9 /tests/auto/qml/qjsengine
parent9a98d16d9e49395a24cd733ca8f65b2f82ebba94 (diff)
parente696a6b7bff04d1581cf59b4d96ecb5508f54169 (diff)
Merge remote-tracking branch 'origin/5.11' into dev
Conflicts: src/plugins/qmltooling/qmldbg_profiler/qqmlprofilerservice.cpp tests/auto/qml/qjsengine/tst_qjsengine.cpp Change-Id: I8276669e257f35a76768ef7f8795a8605cf4c9bc
Diffstat (limited to 'tests/auto/qml/qjsengine')
-rw-r--r--tests/auto/qml/qjsengine/tst_qjsengine.cpp68
1 files changed, 0 insertions, 68 deletions
diff --git a/tests/auto/qml/qjsengine/tst_qjsengine.cpp b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
index 1eff5739b8..cc0a1e9a93 100644
--- a/tests/auto/qml/qjsengine/tst_qjsengine.cpp
+++ b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
@@ -203,7 +203,6 @@ private slots:
void malformedExpression();
void scriptScopes();
- void perfMapFile();
void binaryNumbers();
void octalNumbers();
@@ -4180,73 +4179,6 @@ void tst_QJSEngine::octalNumbers()
QVERIFY(result.isError());
}
-static const char *perfMapKey = "QV4_PROFILE_WRITE_PERF_MAP";
-static const char *jitCallKey = "QV4_JIT_CALL_THRESHOLD";
-
-struct EnvironmentModifier {
- const bool hasPerfMap = false;
- const bool hasJitCall = false;
- const QByteArray perfMap;
- const QByteArray jitCall;
-
- EnvironmentModifier() :
- hasPerfMap(qEnvironmentVariableIsSet(perfMapKey)),
- hasJitCall(qEnvironmentVariableIsSet(jitCallKey)),
- perfMap(qgetenv(perfMapKey)),
- jitCall(qgetenv(jitCallKey))
- {
- qputenv(perfMapKey, "1");
- qputenv(jitCallKey, "0");
- }
-
- ~EnvironmentModifier()
- {
- if (hasPerfMap)
- qputenv(perfMapKey, perfMap);
- else
- qunsetenv(perfMapKey);
-
- if (hasJitCall)
- qputenv(jitCallKey, jitCall);
- else
- qunsetenv(jitCallKey);
- }
-};
-
-void tst_QJSEngine::perfMapFile()
-{
-#if !defined(Q_OS_LINUX)
- QSKIP("perf map files are only generated on linux");
-#else
- EnvironmentModifier modifier;
- Q_UNUSED(modifier);
- QJSEngine engine;
- QJSValue def = engine.evaluate("'use strict'; function foo() { return 42 }");
- QVERIFY(!def.isError());
- QJSValue use = engine.evaluate("'use strict'; foo()");
- QVERIFY(use.isNumber());
- QFile file(QString::fromLatin1("/tmp/perf-%1.map").arg(QCoreApplication::applicationPid()));
- QVERIFY(file.exists());
- QVERIFY(file.open(QIODevice::ReadOnly));
- QList<QByteArray> functions;
- while (!file.atEnd()) {
- const QByteArray contents = file.readLine();
- QVERIFY(contents.endsWith('\n'));
- QList<QByteArray> fields = contents.split(' ');
- QCOMPARE(fields.length(), 3);
- bool ok = false;
- const qulonglong address = fields[0].toULongLong(&ok, 16);
- QVERIFY(ok);
- QVERIFY(address > 0);
- const ulong size = fields[1].toULong(&ok, 16);
- QVERIFY(ok);
- QVERIFY(size > 0);
- functions.append(fields[2]);
- }
- QVERIFY(functions.contains("foo\n"));
-#endif
-}
-
QTEST_MAIN(tst_QJSEngine)
#include "tst_qjsengine.moc"