summaryrefslogtreecommitdiffstats
path: root/tests/benchmarks/qscriptengine
diff options
context:
space:
mode:
authorKent Hansen <khansen@trolltech.com>2009-10-26 12:21:27 (GMT)
committerKent Hansen <khansen@trolltech.com>2009-10-28 09:15:32 (GMT)
commit0533c709188d07be0c165838b503124cb6b271e1 (patch)
treed866357d3ac735e9d1527816f83379e6e5746f78 /tests/benchmarks/qscriptengine
parent8cda1c6fef8bd9c4635743fae05158306c2ab09f (diff)
downloadQt-0533c709188d07be0c165838b503124cb6b271e1.zip
Qt-0533c709188d07be0c165838b503124cb6b271e1.tar.gz
Qt-0533c709188d07be0c165838b503124cb6b271e1.tar.bz2
Say hello to QScriptProgram :-)
QScriptProgram encapsulates a Qt Script program (AKA a script). It retains the compiled representation of the script, so that repeated evaluation of the same script becomes faster. An overload of QScriptEngine::evaluate() that takes a QScriptProgram has been added. Reviewed-by: Olivier Goffart
Diffstat (limited to 'tests/benchmarks/qscriptengine')
-rw-r--r--tests/benchmarks/qscriptengine/tst_qscriptengine.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp b/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp
index 4f011c4..8d5f6e6 100644
--- a/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp
+++ b/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp
@@ -60,6 +60,8 @@ private slots:
void constructor();
void evaluate_data();
void evaluate();
+ void evaluateProgram_data();
+ void evaluateProgram();
void connectAndDisconnect();
void newObject();
void newQObject();
@@ -153,6 +155,22 @@ void tst_QScriptEngine::connectAndDisconnect()
}
}
+void tst_QScriptEngine::evaluateProgram_data()
+{
+ evaluate_data();
+}
+
+void tst_QScriptEngine::evaluateProgram()
+{
+ QFETCH(QString, code);
+ QScriptEngine engine;
+ QScriptProgram program(code);
+
+ QBENCHMARK {
+ (void)engine.evaluate(program);
+ }
+}
+
void tst_QScriptEngine::newObject()
{
QScriptEngine engine;
@@ -241,6 +259,5 @@ void tst_QScriptEngine::nativeCall()
}
}
-
QTEST_MAIN(tst_QScriptEngine)
#include "tst_qscriptengine.moc"