tests/auto/qscriptvalue/tst_qscriptvalue.cpp
branchRCL_3
changeset 14 c0432d11811c
parent 8 3f74d0d4af4c
equal deleted inserted replaced
13:cc75c76972ee 14:c0432d11811c
  1444 {
  1444 {
  1445     QScriptEngine eng;
  1445     QScriptEngine eng;
  1446 
  1446 
  1447     QScriptValue undefined = eng.undefinedValue();
  1447     QScriptValue undefined = eng.undefinedValue();
  1448     QCOMPARE(undefined.toObject().isValid(), false);
  1448     QCOMPARE(undefined.toObject().isValid(), false);
       
  1449     QVERIFY(undefined.isUndefined());
  1449 
  1450 
  1450     QScriptValue null = eng.nullValue();
  1451     QScriptValue null = eng.nullValue();
  1451     QCOMPARE(null.toObject().isValid(), false);
  1452     QCOMPARE(null.toObject().isValid(), false);
       
  1453     QVERIFY(null.isNull());
  1452 
  1454 
  1453     {
  1455     {
  1454         QScriptValue falskt = QScriptValue(&eng, false);
  1456         QScriptValue falskt = QScriptValue(&eng, false);
  1455         {
  1457         {
  1456             QScriptValue tmp = falskt.toObject();
  1458             QScriptValue tmp = falskt.toObject();
  1457             QCOMPARE(tmp.isObject(), true);
  1459             QCOMPARE(tmp.isObject(), true);
  1458             QCOMPARE(tmp.toNumber(), falskt.toNumber());
  1460             QCOMPARE(tmp.toNumber(), falskt.toNumber());
  1459         }
  1461         }
       
  1462         QVERIFY(falskt.isBool());
  1460 
  1463 
  1461         QScriptValue sant = QScriptValue(&eng, true);
  1464         QScriptValue sant = QScriptValue(&eng, true);
  1462         {
  1465         {
  1463             QScriptValue tmp = sant.toObject();
  1466             QScriptValue tmp = sant.toObject();
  1464             QCOMPARE(tmp.isObject(), true);
  1467             QCOMPARE(tmp.isObject(), true);
  1465             QCOMPARE(tmp.toNumber(), sant.toNumber());
  1468             QCOMPARE(tmp.toNumber(), sant.toNumber());
  1466         }
  1469         }
       
  1470         QVERIFY(sant.isBool());
  1467 
  1471 
  1468         QScriptValue number = QScriptValue(&eng, 123.0);
  1472         QScriptValue number = QScriptValue(&eng, 123.0);
  1469         {
  1473         {
  1470             QScriptValue tmp = number.toObject();
  1474             QScriptValue tmp = number.toObject();
  1471             QCOMPARE(tmp.isObject(), true);
  1475             QCOMPARE(tmp.isObject(), true);
  1472             QCOMPARE(tmp.toNumber(), number.toNumber());
  1476             QCOMPARE(tmp.toNumber(), number.toNumber());
  1473         }
  1477         }
       
  1478         QVERIFY(number.isNumber());
  1474 
  1479 
  1475         QScriptValue str = QScriptValue(&eng, QString("ciao"));
  1480         QScriptValue str = QScriptValue(&eng, QString("ciao"));
  1476         {
  1481         {
  1477             QScriptValue tmp = str.toObject();
  1482             QScriptValue tmp = str.toObject();
  1478             QCOMPARE(tmp.isObject(), true);
  1483             QCOMPARE(tmp.isObject(), true);
  1479             QCOMPARE(tmp.toString(), str.toString());
  1484             QCOMPARE(tmp.toString(), str.toString());
  1480         }
  1485         }
       
  1486         QVERIFY(str.isString());
  1481     }
  1487     }
  1482 
  1488 
  1483     QScriptValue object = eng.newObject();
  1489     QScriptValue object = eng.newObject();
  1484     {
  1490     {
  1485         QScriptValue tmp = object.toObject();
  1491         QScriptValue tmp = object.toObject();
  1495     // V2 constructors: in this case, you have to use QScriptEngine::toObject()
  1501     // V2 constructors: in this case, you have to use QScriptEngine::toObject()
  1496     {
  1502     {
  1497         QScriptValue undefined = QScriptValue(QScriptValue::UndefinedValue);
  1503         QScriptValue undefined = QScriptValue(QScriptValue::UndefinedValue);
  1498         QVERIFY(!undefined.toObject().isValid());
  1504         QVERIFY(!undefined.toObject().isValid());
  1499         QVERIFY(!eng.toObject(undefined).isValid());
  1505         QVERIFY(!eng.toObject(undefined).isValid());
       
  1506         QVERIFY(undefined.isUndefined());
  1500 
  1507 
  1501         QScriptValue null = QScriptValue(QScriptValue::NullValue);
  1508         QScriptValue null = QScriptValue(QScriptValue::NullValue);
  1502         QVERIFY(!null.toObject().isValid());
  1509         QVERIFY(!null.toObject().isValid());
  1503         QVERIFY(!eng.toObject(null).isValid());
  1510         QVERIFY(!eng.toObject(null).isValid());
       
  1511         QVERIFY(null.isNull());
  1504 
  1512 
  1505         QScriptValue falskt = QScriptValue(false);
  1513         QScriptValue falskt = QScriptValue(false);
  1506         QVERIFY(!falskt.toObject().isValid());
  1514         QVERIFY(!falskt.toObject().isValid());
  1507         {
  1515         {
  1508             QScriptValue tmp = eng.toObject(falskt);
  1516             QScriptValue tmp = eng.toObject(falskt);
  1509             QVERIFY(tmp.isObject());
  1517             QVERIFY(tmp.isObject());
  1510             QVERIFY(tmp.toBool());
  1518             QVERIFY(tmp.toBool());
  1511         }
  1519         }
       
  1520         QVERIFY(falskt.isBool());
  1512 
  1521 
  1513         QScriptValue sant = QScriptValue(true);
  1522         QScriptValue sant = QScriptValue(true);
  1514         QVERIFY(!sant.toObject().isValid());
  1523         QVERIFY(!sant.toObject().isValid());
  1515         {
  1524         {
  1516             QScriptValue tmp = eng.toObject(sant);
  1525             QScriptValue tmp = eng.toObject(sant);
  1517             QVERIFY(tmp.isObject());
  1526             QVERIFY(tmp.isObject());
  1518             QVERIFY(tmp.toBool());
  1527             QVERIFY(tmp.toBool());
  1519         }
  1528         }
       
  1529         QVERIFY(sant.isBool());
  1520 
  1530 
  1521         QScriptValue number = QScriptValue(123.0);
  1531         QScriptValue number = QScriptValue(123.0);
  1522         QVERIFY(!number.toObject().isValid());
  1532         QVERIFY(!number.toObject().isValid());
  1523         {
  1533         {
  1524             QScriptValue tmp = eng.toObject(number);
  1534             QScriptValue tmp = eng.toObject(number);
  1525             QVERIFY(tmp.isObject());
  1535             QVERIFY(tmp.isObject());
  1526             QCOMPARE(tmp.toInt32(), number.toInt32());
  1536             QCOMPARE(tmp.toInt32(), number.toInt32());
  1527         }
  1537         }
       
  1538         QVERIFY(number.isNumber());
  1528 
  1539 
  1529         QScriptValue str = QScriptValue(QString::fromLatin1("ciao"));
  1540         QScriptValue str = QScriptValue(QString::fromLatin1("ciao"));
  1530         QVERIFY(!str.toObject().isValid());
  1541         QVERIFY(!str.toObject().isValid());
  1531         {
  1542         {
  1532             QScriptValue tmp = eng.toObject(str);
  1543             QScriptValue tmp = eng.toObject(str);
  1533             QVERIFY(tmp.isObject());
  1544             QVERIFY(tmp.isObject());
  1534             QCOMPARE(tmp.toString(), QString::fromLatin1("ciao"));
  1545             QCOMPARE(tmp.toString(), QString::fromLatin1("ciao"));
  1535         }
  1546         }
       
  1547         QVERIFY(str.isString());
  1536     }
  1548     }
  1537 }
  1549 }
  1538 
  1550 
  1539 void tst_QScriptValue::toDateTime_old()
  1551 void tst_QScriptValue::toDateTime_old()
  1540 {
  1552 {