summaryrefslogtreecommitdiff
path: root/tests/auto/qscriptengine/tst_qscriptengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/qscriptengine/tst_qscriptengine.cpp')
-rw-r--r--tests/auto/qscriptengine/tst_qscriptengine.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/auto/qscriptengine/tst_qscriptengine.cpp b/tests/auto/qscriptengine/tst_qscriptengine.cpp
index 3be9d62..5cb1f08 100644
--- a/tests/auto/qscriptengine/tst_qscriptengine.cpp
+++ b/tests/auto/qscriptengine/tst_qscriptengine.cpp
@@ -132,6 +132,7 @@ private slots:
void valueConversion_basic2();
void valueConversion_dateTime();
void valueConversion_regExp();
+ void valueConversion_long();
void qScriptValueFromValue_noEngine();
void importExtension();
void infiniteRecursion();
@@ -2503,6 +2504,39 @@ void tst_QScriptEngine::valueConversion_regExp()
}
}
+void tst_QScriptEngine::valueConversion_long()
+{
+ QScriptEngine eng;
+ {
+ QScriptValue num(&eng, 123);
+ QCOMPARE(qscriptvalue_cast<long>(num), long(123));
+ QCOMPARE(qscriptvalue_cast<ulong>(num), ulong(123));
+ }
+ {
+ QScriptValue num(456);
+ QCOMPARE(qscriptvalue_cast<long>(num), long(456));
+ QCOMPARE(qscriptvalue_cast<ulong>(num), ulong(456));
+ }
+ {
+ QScriptValue str(&eng, "123");
+ QCOMPARE(qscriptvalue_cast<long>(str), long(123));
+ QCOMPARE(qscriptvalue_cast<ulong>(str), ulong(123));
+ }
+ {
+ QScriptValue str("456");
+ QCOMPARE(qscriptvalue_cast<long>(str), long(456));
+ QCOMPARE(qscriptvalue_cast<ulong>(str), ulong(456));
+ }
+ {
+ QScriptValue num = qScriptValueFromValue<long>(&eng, long(123));
+ QCOMPARE(num.toInt32(), 123);
+ }
+ {
+ QScriptValue num = qScriptValueFromValue<ulong>(&eng, ulong(456));
+ QCOMPARE(num.toInt32(), 456);
+ }
+}
+
void tst_QScriptEngine::qScriptValueFromValue_noEngine()
{
QVERIFY(!qScriptValueFromValue(0, 123).isValid());