tests/benchmarks/qscriptengine/tst_qscriptengine.cpp
changeset 3 41300fa6a67c
parent 0 1918ee327afb
child 4 3b1da2848fc7
--- a/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp	Tue Jan 26 12:42:25 2010 +0200
+++ b/tests/benchmarks/qscriptengine/tst_qscriptengine.cpp	Tue Feb 02 00:43:10 2010 +0200
@@ -60,6 +60,8 @@
     void constructor();
     void evaluate_data();
     void evaluate();
+    void evaluateProgram_data();
+    void evaluateProgram();
     void connectAndDisconnect();
     void newObject();
     void newQObject();
@@ -70,6 +72,8 @@
     void toStringHandle();
     void castValueToQreal();
     void nativeCall();
+    void translation_data();
+    void translation();
 };
 
 tst_QScriptEngine::tst_QScriptEngine()
@@ -153,6 +157,22 @@
     }
 }
 
+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 +261,24 @@
     }
 }
 
+void tst_QScriptEngine::translation_data()
+{
+    QTest::addColumn<QString>("text");
+    QTest::newRow("no translation") << "\"hello world\"";
+    QTest::newRow("qsTr") << "qsTr(\"hello world\")";
+    QTest::newRow("qsTranslate") << "qsTranslate(\"\", \"hello world\")";
+}
+
+void tst_QScriptEngine::translation()
+{
+    QFETCH(QString, text);
+    QScriptEngine engine;
+    engine.installTranslatorFunctions();
+
+    QBENCHMARK {
+        (void)engine.evaluate(text);
+    }
+}
 
 QTEST_MAIN(tst_QScriptEngine)
 #include "tst_qscriptengine.moc"