tests/auto/qscriptvalue/tst_qscriptvalue_generated.cpp
changeset 7 f7bc934e204c
equal deleted inserted replaced
3:41300fa6a67c 7:f7bc934e204c
       
     1 /****************************************************************************
       
     2 **
       
     3 ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
       
     4 ** All rights reserved.
       
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
       
     6 **
       
     7 ** This file is part of the test suite of the Qt Toolkit.
       
     8 **
       
     9 ** $QT_BEGIN_LICENSE:LGPL$
       
    10 ** No Commercial Usage
       
    11 ** This file contains pre-release code and may not be distributed.
       
    12 ** You may use this file in accordance with the terms and conditions
       
    13 ** contained in the Technology Preview License Agreement accompanying
       
    14 ** this package.
       
    15 **
       
    16 ** GNU Lesser General Public License Usage
       
    17 ** Alternatively, this file may be used under the terms of the GNU Lesser
       
    18 ** General Public License version 2.1 as published by the Free Software
       
    19 ** Foundation and appearing in the file LICENSE.LGPL included in the
       
    20 ** packaging of this file.  Please review the following information to
       
    21 ** ensure the GNU Lesser General Public License version 2.1 requirements
       
    22 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
       
    23 **
       
    24 ** In addition, as a special exception, Nokia gives you certain additional
       
    25 ** rights.  These rights are described in the Nokia Qt LGPL Exception
       
    26 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
       
    27 **
       
    28 ** If you have questions regarding the use of this file, please contact
       
    29 ** Nokia at qt-info@nokia.com.
       
    30 **
       
    31 **
       
    32 **
       
    33 **
       
    34 **
       
    35 **
       
    36 **
       
    37 **
       
    38 ** $QT_END_LICENSE$
       
    39 **
       
    40 ****************************************************************************/
       
    41 
       
    42 #include "tst_qscriptvalue.h"
       
    43 
       
    44 #define DEFINE_TEST_VALUE(expr) m_values.insert(QString::fromLatin1(#expr), expr)
       
    45 
       
    46 void tst_QScriptValue::initScriptValues()
       
    47 {
       
    48     m_values.clear();
       
    49     if (engine) 
       
    50         delete engine;
       
    51     engine = new QScriptEngine;
       
    52     DEFINE_TEST_VALUE(QScriptValue());
       
    53     DEFINE_TEST_VALUE(QScriptValue(QScriptValue::UndefinedValue));
       
    54     DEFINE_TEST_VALUE(QScriptValue(QScriptValue::NullValue));
       
    55     DEFINE_TEST_VALUE(QScriptValue(true));
       
    56     DEFINE_TEST_VALUE(QScriptValue(false));
       
    57     DEFINE_TEST_VALUE(QScriptValue(int(122)));
       
    58     DEFINE_TEST_VALUE(QScriptValue(uint(124)));
       
    59     DEFINE_TEST_VALUE(QScriptValue(0));
       
    60     DEFINE_TEST_VALUE(QScriptValue(0.0));
       
    61     DEFINE_TEST_VALUE(QScriptValue(123.0));
       
    62     DEFINE_TEST_VALUE(QScriptValue(6.37e-8));
       
    63     DEFINE_TEST_VALUE(QScriptValue(-6.37e-8));
       
    64     DEFINE_TEST_VALUE(QScriptValue(0x43211234));
       
    65     DEFINE_TEST_VALUE(QScriptValue(0x10000));
       
    66     DEFINE_TEST_VALUE(QScriptValue(0x10001));
       
    67     DEFINE_TEST_VALUE(QScriptValue(qSNaN()));
       
    68     DEFINE_TEST_VALUE(QScriptValue(qQNaN()));
       
    69     DEFINE_TEST_VALUE(QScriptValue(qInf()));
       
    70     DEFINE_TEST_VALUE(QScriptValue(-qInf()));
       
    71     DEFINE_TEST_VALUE(QScriptValue("NaN"));
       
    72     DEFINE_TEST_VALUE(QScriptValue("Infinity"));
       
    73     DEFINE_TEST_VALUE(QScriptValue("-Infinity"));
       
    74     DEFINE_TEST_VALUE(QScriptValue("ciao"));
       
    75     DEFINE_TEST_VALUE(QScriptValue(QString::fromLatin1("ciao")));
       
    76     DEFINE_TEST_VALUE(QScriptValue(QString("")));
       
    77     DEFINE_TEST_VALUE(QScriptValue(QString()));
       
    78     DEFINE_TEST_VALUE(QScriptValue(QString("0")));
       
    79     DEFINE_TEST_VALUE(QScriptValue(QString("123")));
       
    80     DEFINE_TEST_VALUE(QScriptValue(QString("12.4")));
       
    81     DEFINE_TEST_VALUE(QScriptValue(0, QScriptValue::UndefinedValue));
       
    82     DEFINE_TEST_VALUE(QScriptValue(0, QScriptValue::NullValue));
       
    83     DEFINE_TEST_VALUE(QScriptValue(0, true));
       
    84     DEFINE_TEST_VALUE(QScriptValue(0, false));
       
    85     DEFINE_TEST_VALUE(QScriptValue(0, int(122)));
       
    86     DEFINE_TEST_VALUE(QScriptValue(0, uint(124)));
       
    87     DEFINE_TEST_VALUE(QScriptValue(0, 0));
       
    88     DEFINE_TEST_VALUE(QScriptValue(0, 0.0));
       
    89     DEFINE_TEST_VALUE(QScriptValue(0, 123.0));
       
    90     DEFINE_TEST_VALUE(QScriptValue(0, 6.37e-8));
       
    91     DEFINE_TEST_VALUE(QScriptValue(0, -6.37e-8));
       
    92     DEFINE_TEST_VALUE(QScriptValue(0, 0x43211234));
       
    93     DEFINE_TEST_VALUE(QScriptValue(0, 0x10000));
       
    94     DEFINE_TEST_VALUE(QScriptValue(0, 0x10001));
       
    95     DEFINE_TEST_VALUE(QScriptValue(0, qSNaN()));
       
    96     DEFINE_TEST_VALUE(QScriptValue(0, qQNaN()));
       
    97     DEFINE_TEST_VALUE(QScriptValue(0, qInf()));
       
    98     DEFINE_TEST_VALUE(QScriptValue(0, -qInf()));
       
    99     DEFINE_TEST_VALUE(QScriptValue(0, "NaN"));
       
   100     DEFINE_TEST_VALUE(QScriptValue(0, "Infinity"));
       
   101     DEFINE_TEST_VALUE(QScriptValue(0, "-Infinity"));
       
   102     DEFINE_TEST_VALUE(QScriptValue(0, "ciao"));
       
   103     DEFINE_TEST_VALUE(QScriptValue(0, QString::fromLatin1("ciao")));
       
   104     DEFINE_TEST_VALUE(QScriptValue(0, QString("")));
       
   105     DEFINE_TEST_VALUE(QScriptValue(0, QString()));
       
   106     DEFINE_TEST_VALUE(QScriptValue(0, QString("0")));
       
   107     DEFINE_TEST_VALUE(QScriptValue(0, QString("123")));
       
   108     DEFINE_TEST_VALUE(QScriptValue(0, QString("12.3")));
       
   109     DEFINE_TEST_VALUE(QScriptValue(engine, QScriptValue::UndefinedValue));
       
   110     DEFINE_TEST_VALUE(QScriptValue(engine, QScriptValue::NullValue));
       
   111     DEFINE_TEST_VALUE(QScriptValue(engine, true));
       
   112     DEFINE_TEST_VALUE(QScriptValue(engine, false));
       
   113     DEFINE_TEST_VALUE(QScriptValue(engine, int(122)));
       
   114     DEFINE_TEST_VALUE(QScriptValue(engine, uint(124)));
       
   115     DEFINE_TEST_VALUE(QScriptValue(engine, 0));
       
   116     DEFINE_TEST_VALUE(QScriptValue(engine, 0.0));
       
   117     DEFINE_TEST_VALUE(QScriptValue(engine, 123.0));
       
   118     DEFINE_TEST_VALUE(QScriptValue(engine, 6.37e-8));
       
   119     DEFINE_TEST_VALUE(QScriptValue(engine, -6.37e-8));
       
   120     DEFINE_TEST_VALUE(QScriptValue(engine, 0x43211234));
       
   121     DEFINE_TEST_VALUE(QScriptValue(engine, 0x10000));
       
   122     DEFINE_TEST_VALUE(QScriptValue(engine, 0x10001));
       
   123     DEFINE_TEST_VALUE(QScriptValue(engine, qSNaN()));
       
   124     DEFINE_TEST_VALUE(QScriptValue(engine, qQNaN()));
       
   125     DEFINE_TEST_VALUE(QScriptValue(engine, qInf()));
       
   126     DEFINE_TEST_VALUE(QScriptValue(engine, -qInf()));
       
   127     DEFINE_TEST_VALUE(QScriptValue(engine, "NaN"));
       
   128     DEFINE_TEST_VALUE(QScriptValue(engine, "Infinity"));
       
   129     DEFINE_TEST_VALUE(QScriptValue(engine, "-Infinity"));
       
   130     DEFINE_TEST_VALUE(QScriptValue(engine, "ciao"));
       
   131     DEFINE_TEST_VALUE(QScriptValue(engine, QString::fromLatin1("ciao")));
       
   132     DEFINE_TEST_VALUE(QScriptValue(engine, QString("")));
       
   133     DEFINE_TEST_VALUE(QScriptValue(engine, QString()));
       
   134     DEFINE_TEST_VALUE(QScriptValue(engine, QString("0")));
       
   135     DEFINE_TEST_VALUE(QScriptValue(engine, QString("123")));
       
   136     DEFINE_TEST_VALUE(QScriptValue(engine, QString("1.23")));
       
   137     DEFINE_TEST_VALUE(engine->evaluate("[]"));
       
   138     DEFINE_TEST_VALUE(engine->evaluate("{}"));
       
   139     DEFINE_TEST_VALUE(engine->evaluate("Object.prototype"));
       
   140     DEFINE_TEST_VALUE(engine->evaluate("Date.prototype"));
       
   141     DEFINE_TEST_VALUE(engine->evaluate("Array.prototype"));
       
   142     DEFINE_TEST_VALUE(engine->evaluate("Function.prototype"));
       
   143     DEFINE_TEST_VALUE(engine->evaluate("Error.prototype"));
       
   144     DEFINE_TEST_VALUE(engine->evaluate("Object"));
       
   145     DEFINE_TEST_VALUE(engine->evaluate("Array"));
       
   146     DEFINE_TEST_VALUE(engine->evaluate("Number"));
       
   147     DEFINE_TEST_VALUE(engine->evaluate("Function"));
       
   148     DEFINE_TEST_VALUE(engine->evaluate("(function() { return 1; })"));
       
   149     DEFINE_TEST_VALUE(engine->evaluate("(function() { return 'ciao'; })"));
       
   150     DEFINE_TEST_VALUE(engine->evaluate("(function() { throw new Error('foo'); })"));
       
   151     DEFINE_TEST_VALUE(engine->evaluate("/foo/"));
       
   152     DEFINE_TEST_VALUE(engine->evaluate("new Object()"));
       
   153     DEFINE_TEST_VALUE(engine->evaluate("new Array()"));
       
   154     DEFINE_TEST_VALUE(engine->evaluate("new Error()"));
       
   155     DEFINE_TEST_VALUE(engine->nullValue());
       
   156     DEFINE_TEST_VALUE(engine->undefinedValue());
       
   157 }
       
   158 
       
   159 
       
   160 void tst_QScriptValue::isValid_initData()
       
   161 {
       
   162     QTest::addColumn<bool>("expected");
       
   163     initScriptValues();
       
   164 }
       
   165 
       
   166 void tst_QScriptValue::isValid_makeData(const char* expr)
       
   167 {
       
   168     static QSet<QString> isValid;
       
   169     if (isValid.isEmpty()) {
       
   170         isValid << "QScriptValue(QScriptValue::UndefinedValue)"
       
   171                 << "QScriptValue(QScriptValue::NullValue)"
       
   172                 << "QScriptValue(true)"
       
   173                 << "QScriptValue(false)"
       
   174                 << "QScriptValue(int(122))"
       
   175                 << "QScriptValue(uint(124))"
       
   176                 << "QScriptValue(0)"
       
   177                 << "QScriptValue(0.0)"
       
   178                 << "QScriptValue(123.0)"
       
   179                 << "QScriptValue(6.37e-8)"
       
   180                 << "QScriptValue(-6.37e-8)"
       
   181                 << "QScriptValue(0x43211234)"
       
   182                 << "QScriptValue(0x10000)"
       
   183                 << "QScriptValue(0x10001)"
       
   184                 << "QScriptValue(qSNaN())"
       
   185                 << "QScriptValue(qQNaN())"
       
   186                 << "QScriptValue(qInf())"
       
   187                 << "QScriptValue(-qInf())"
       
   188                 << "QScriptValue(\"NaN\")"
       
   189                 << "QScriptValue(\"Infinity\")"
       
   190                 << "QScriptValue(\"-Infinity\")"
       
   191                 << "QScriptValue(\"ciao\")"
       
   192                 << "QScriptValue(QString::fromLatin1(\"ciao\"))"
       
   193                 << "QScriptValue(QString(\"\"))"
       
   194                 << "QScriptValue(QString())"
       
   195                 << "QScriptValue(QString(\"0\"))"
       
   196                 << "QScriptValue(QString(\"123\"))"
       
   197                 << "QScriptValue(QString(\"12.4\"))"
       
   198                 << "QScriptValue(0, QScriptValue::UndefinedValue)"
       
   199                 << "QScriptValue(0, QScriptValue::NullValue)"
       
   200                 << "QScriptValue(0, true)"
       
   201                 << "QScriptValue(0, false)"
       
   202                 << "QScriptValue(0, int(122))"
       
   203                 << "QScriptValue(0, uint(124))"
       
   204                 << "QScriptValue(0, 0)"
       
   205                 << "QScriptValue(0, 0.0)"
       
   206                 << "QScriptValue(0, 123.0)"
       
   207                 << "QScriptValue(0, 6.37e-8)"
       
   208                 << "QScriptValue(0, -6.37e-8)"
       
   209                 << "QScriptValue(0, 0x43211234)"
       
   210                 << "QScriptValue(0, 0x10000)"
       
   211                 << "QScriptValue(0, 0x10001)"
       
   212                 << "QScriptValue(0, qSNaN())"
       
   213                 << "QScriptValue(0, qQNaN())"
       
   214                 << "QScriptValue(0, qInf())"
       
   215                 << "QScriptValue(0, -qInf())"
       
   216                 << "QScriptValue(0, \"NaN\")"
       
   217                 << "QScriptValue(0, \"Infinity\")"
       
   218                 << "QScriptValue(0, \"-Infinity\")"
       
   219                 << "QScriptValue(0, \"ciao\")"
       
   220                 << "QScriptValue(0, QString::fromLatin1(\"ciao\"))"
       
   221                 << "QScriptValue(0, QString(\"\"))"
       
   222                 << "QScriptValue(0, QString())"
       
   223                 << "QScriptValue(0, QString(\"0\"))"
       
   224                 << "QScriptValue(0, QString(\"123\"))"
       
   225                 << "QScriptValue(0, QString(\"12.3\"))"
       
   226                 << "QScriptValue(engine, QScriptValue::UndefinedValue)"
       
   227                 << "QScriptValue(engine, QScriptValue::NullValue)"
       
   228                 << "QScriptValue(engine, true)"
       
   229                 << "QScriptValue(engine, false)"
       
   230                 << "QScriptValue(engine, int(122))"
       
   231                 << "QScriptValue(engine, uint(124))"
       
   232                 << "QScriptValue(engine, 0)"
       
   233                 << "QScriptValue(engine, 0.0)"
       
   234                 << "QScriptValue(engine, 123.0)"
       
   235                 << "QScriptValue(engine, 6.37e-8)"
       
   236                 << "QScriptValue(engine, -6.37e-8)"
       
   237                 << "QScriptValue(engine, 0x43211234)"
       
   238                 << "QScriptValue(engine, 0x10000)"
       
   239                 << "QScriptValue(engine, 0x10001)"
       
   240                 << "QScriptValue(engine, qSNaN())"
       
   241                 << "QScriptValue(engine, qQNaN())"
       
   242                 << "QScriptValue(engine, qInf())"
       
   243                 << "QScriptValue(engine, -qInf())"
       
   244                 << "QScriptValue(engine, \"NaN\")"
       
   245                 << "QScriptValue(engine, \"Infinity\")"
       
   246                 << "QScriptValue(engine, \"-Infinity\")"
       
   247                 << "QScriptValue(engine, \"ciao\")"
       
   248                 << "QScriptValue(engine, QString::fromLatin1(\"ciao\"))"
       
   249                 << "QScriptValue(engine, QString(\"\"))"
       
   250                 << "QScriptValue(engine, QString())"
       
   251                 << "QScriptValue(engine, QString(\"0\"))"
       
   252                 << "QScriptValue(engine, QString(\"123\"))"
       
   253                 << "QScriptValue(engine, QString(\"1.23\"))"
       
   254                 << "engine->evaluate(\"[]\")"
       
   255                 << "engine->evaluate(\"{}\")"
       
   256                 << "engine->evaluate(\"Object.prototype\")"
       
   257                 << "engine->evaluate(\"Date.prototype\")"
       
   258                 << "engine->evaluate(\"Array.prototype\")"
       
   259                 << "engine->evaluate(\"Function.prototype\")"
       
   260                 << "engine->evaluate(\"Error.prototype\")"
       
   261                 << "engine->evaluate(\"Object\")"
       
   262                 << "engine->evaluate(\"Array\")"
       
   263                 << "engine->evaluate(\"Number\")"
       
   264                 << "engine->evaluate(\"Function\")"
       
   265                 << "engine->evaluate(\"(function() { return 1; })\")"
       
   266                 << "engine->evaluate(\"(function() { return 'ciao'; })\")"
       
   267                 << "engine->evaluate(\"(function() { throw new Error('foo'); })\")"
       
   268                 << "engine->evaluate(\"/foo/\")"
       
   269                 << "engine->evaluate(\"new Object()\")"
       
   270                 << "engine->evaluate(\"new Array()\")"
       
   271                 << "engine->evaluate(\"new Error()\")"
       
   272                 << "engine->nullValue()"
       
   273                 << "engine->undefinedValue()"
       
   274                ;
       
   275     }
       
   276     newRow(expr) << isValid.contains(expr);
       
   277 }
       
   278 
       
   279 void tst_QScriptValue::isValid_test(const char*, const QScriptValue& value)
       
   280 {
       
   281     QFETCH(bool, expected);
       
   282     QCOMPARE(value.isValid(), expected);
       
   283 }
       
   284 
       
   285 DEFINE_TEST_FUNCTION(isValid)
       
   286 
       
   287 
       
   288 void tst_QScriptValue::isBool_initData()
       
   289 {
       
   290     QTest::addColumn<bool>("expected");
       
   291     initScriptValues();
       
   292 }
       
   293 
       
   294 void tst_QScriptValue::isBool_makeData(const char* expr)
       
   295 {
       
   296     static QSet<QString> isBool;
       
   297     if (isBool.isEmpty()) {
       
   298         isBool << "QScriptValue(true)"
       
   299                 << "QScriptValue(false)"
       
   300                 << "QScriptValue(0, true)"
       
   301                 << "QScriptValue(0, false)"
       
   302                 << "QScriptValue(engine, true)"
       
   303                 << "QScriptValue(engine, false)"
       
   304                ;
       
   305     }
       
   306     newRow(expr) << isBool.contains(expr);
       
   307 }
       
   308 
       
   309 void tst_QScriptValue::isBool_test(const char*, const QScriptValue& value)
       
   310 {
       
   311     QFETCH(bool, expected);
       
   312     QCOMPARE(value.isBool(), expected);
       
   313 }
       
   314 
       
   315 DEFINE_TEST_FUNCTION(isBool)
       
   316 
       
   317 
       
   318 void tst_QScriptValue::isBoolean_initData()
       
   319 {
       
   320     QTest::addColumn<bool>("expected");
       
   321     initScriptValues();
       
   322 }
       
   323 
       
   324 void tst_QScriptValue::isBoolean_makeData(const char* expr)
       
   325 {
       
   326     static QSet<QString> isBoolean;
       
   327     if (isBoolean.isEmpty()) {
       
   328         isBoolean << "QScriptValue(true)"
       
   329                 << "QScriptValue(false)"
       
   330                 << "QScriptValue(0, true)"
       
   331                 << "QScriptValue(0, false)"
       
   332                 << "QScriptValue(engine, true)"
       
   333                 << "QScriptValue(engine, false)"
       
   334                ;
       
   335     }
       
   336     newRow(expr) << isBoolean.contains(expr);
       
   337 }
       
   338 
       
   339 void tst_QScriptValue::isBoolean_test(const char*, const QScriptValue& value)
       
   340 {
       
   341     QFETCH(bool, expected);
       
   342     QCOMPARE(value.isBoolean(), expected);
       
   343 }
       
   344 
       
   345 DEFINE_TEST_FUNCTION(isBoolean)
       
   346 
       
   347 
       
   348 void tst_QScriptValue::isNumber_initData()
       
   349 {
       
   350     QTest::addColumn<bool>("expected");
       
   351     initScriptValues();
       
   352 }
       
   353 
       
   354 void tst_QScriptValue::isNumber_makeData(const char* expr)
       
   355 {
       
   356     static QSet<QString> isNumber;
       
   357     if (isNumber.isEmpty()) {
       
   358         isNumber << "QScriptValue(int(122))"
       
   359                 << "QScriptValue(uint(124))"
       
   360                 << "QScriptValue(0)"
       
   361                 << "QScriptValue(0.0)"
       
   362                 << "QScriptValue(123.0)"
       
   363                 << "QScriptValue(6.37e-8)"
       
   364                 << "QScriptValue(-6.37e-8)"
       
   365                 << "QScriptValue(0x43211234)"
       
   366                 << "QScriptValue(0x10000)"
       
   367                 << "QScriptValue(0x10001)"
       
   368                 << "QScriptValue(qSNaN())"
       
   369                 << "QScriptValue(qQNaN())"
       
   370                 << "QScriptValue(qInf())"
       
   371                 << "QScriptValue(-qInf())"
       
   372                 << "QScriptValue(0, int(122))"
       
   373                 << "QScriptValue(0, uint(124))"
       
   374                 << "QScriptValue(0, 0)"
       
   375                 << "QScriptValue(0, 0.0)"
       
   376                 << "QScriptValue(0, 123.0)"
       
   377                 << "QScriptValue(0, 6.37e-8)"
       
   378                 << "QScriptValue(0, -6.37e-8)"
       
   379                 << "QScriptValue(0, 0x43211234)"
       
   380                 << "QScriptValue(0, 0x10000)"
       
   381                 << "QScriptValue(0, 0x10001)"
       
   382                 << "QScriptValue(0, qSNaN())"
       
   383                 << "QScriptValue(0, qQNaN())"
       
   384                 << "QScriptValue(0, qInf())"
       
   385                 << "QScriptValue(0, -qInf())"
       
   386                 << "QScriptValue(engine, int(122))"
       
   387                 << "QScriptValue(engine, uint(124))"
       
   388                 << "QScriptValue(engine, 0)"
       
   389                 << "QScriptValue(engine, 0.0)"
       
   390                 << "QScriptValue(engine, 123.0)"
       
   391                 << "QScriptValue(engine, 6.37e-8)"
       
   392                 << "QScriptValue(engine, -6.37e-8)"
       
   393                 << "QScriptValue(engine, 0x43211234)"
       
   394                 << "QScriptValue(engine, 0x10000)"
       
   395                 << "QScriptValue(engine, 0x10001)"
       
   396                 << "QScriptValue(engine, qSNaN())"
       
   397                 << "QScriptValue(engine, qQNaN())"
       
   398                 << "QScriptValue(engine, qInf())"
       
   399                 << "QScriptValue(engine, -qInf())"
       
   400                ;
       
   401     }
       
   402     newRow(expr) << isNumber.contains(expr);
       
   403 }
       
   404 
       
   405 void tst_QScriptValue::isNumber_test(const char*, const QScriptValue& value)
       
   406 {
       
   407     QFETCH(bool, expected);
       
   408     QCOMPARE(value.isNumber(), expected);
       
   409 }
       
   410 
       
   411 DEFINE_TEST_FUNCTION(isNumber)
       
   412 
       
   413 
       
   414 void tst_QScriptValue::isFunction_initData()
       
   415 {
       
   416     QTest::addColumn<bool>("expected");
       
   417     initScriptValues();
       
   418 }
       
   419 
       
   420 void tst_QScriptValue::isFunction_makeData(const char* expr)
       
   421 {
       
   422     static QSet<QString> isFunction;
       
   423     if (isFunction.isEmpty()) {
       
   424         isFunction << "engine->evaluate(\"Function.prototype\")"
       
   425                 << "engine->evaluate(\"Object\")"
       
   426                 << "engine->evaluate(\"Array\")"
       
   427                 << "engine->evaluate(\"Number\")"
       
   428                 << "engine->evaluate(\"Function\")"
       
   429                 << "engine->evaluate(\"(function() { return 1; })\")"
       
   430                 << "engine->evaluate(\"(function() { return 'ciao'; })\")"
       
   431                 << "engine->evaluate(\"(function() { throw new Error('foo'); })\")"
       
   432                 << "engine->evaluate(\"/foo/\")"
       
   433                ;
       
   434     }
       
   435     newRow(expr) << isFunction.contains(expr);
       
   436 }
       
   437 
       
   438 void tst_QScriptValue::isFunction_test(const char*, const QScriptValue& value)
       
   439 {
       
   440     QFETCH(bool, expected);
       
   441     QCOMPARE(value.isFunction(), expected);
       
   442 }
       
   443 
       
   444 DEFINE_TEST_FUNCTION(isFunction)
       
   445 
       
   446 
       
   447 void tst_QScriptValue::isNull_initData()
       
   448 {
       
   449     QTest::addColumn<bool>("expected");
       
   450     initScriptValues();
       
   451 }
       
   452 
       
   453 void tst_QScriptValue::isNull_makeData(const char* expr)
       
   454 {
       
   455     static QSet<QString> isNull;
       
   456     if (isNull.isEmpty()) {
       
   457         isNull << "QScriptValue(QScriptValue::NullValue)"
       
   458                 << "QScriptValue(0, QScriptValue::NullValue)"
       
   459                 << "QScriptValue(engine, QScriptValue::NullValue)"
       
   460                 << "engine->nullValue()"
       
   461                ;
       
   462     }
       
   463     newRow(expr) << isNull.contains(expr);
       
   464 }
       
   465 
       
   466 void tst_QScriptValue::isNull_test(const char*, const QScriptValue& value)
       
   467 {
       
   468     QFETCH(bool, expected);
       
   469     QCOMPARE(value.isNull(), expected);
       
   470 }
       
   471 
       
   472 DEFINE_TEST_FUNCTION(isNull)
       
   473 
       
   474 
       
   475 void tst_QScriptValue::isString_initData()
       
   476 {
       
   477     QTest::addColumn<bool>("expected");
       
   478     initScriptValues();
       
   479 }
       
   480 
       
   481 void tst_QScriptValue::isString_makeData(const char* expr)
       
   482 {
       
   483     static QSet<QString> isString;
       
   484     if (isString.isEmpty()) {
       
   485         isString << "QScriptValue(\"NaN\")"
       
   486                 << "QScriptValue(\"Infinity\")"
       
   487                 << "QScriptValue(\"-Infinity\")"
       
   488                 << "QScriptValue(\"ciao\")"
       
   489                 << "QScriptValue(QString::fromLatin1(\"ciao\"))"
       
   490                 << "QScriptValue(QString(\"\"))"
       
   491                 << "QScriptValue(QString())"
       
   492                 << "QScriptValue(QString(\"0\"))"
       
   493                 << "QScriptValue(QString(\"123\"))"
       
   494                 << "QScriptValue(QString(\"12.4\"))"
       
   495                 << "QScriptValue(0, \"NaN\")"
       
   496                 << "QScriptValue(0, \"Infinity\")"
       
   497                 << "QScriptValue(0, \"-Infinity\")"
       
   498                 << "QScriptValue(0, \"ciao\")"
       
   499                 << "QScriptValue(0, QString::fromLatin1(\"ciao\"))"
       
   500                 << "QScriptValue(0, QString(\"\"))"
       
   501                 << "QScriptValue(0, QString())"
       
   502                 << "QScriptValue(0, QString(\"0\"))"
       
   503                 << "QScriptValue(0, QString(\"123\"))"
       
   504                 << "QScriptValue(0, QString(\"12.3\"))"
       
   505                 << "QScriptValue(engine, \"NaN\")"
       
   506                 << "QScriptValue(engine, \"Infinity\")"
       
   507                 << "QScriptValue(engine, \"-Infinity\")"
       
   508                 << "QScriptValue(engine, \"ciao\")"
       
   509                 << "QScriptValue(engine, QString::fromLatin1(\"ciao\"))"
       
   510                 << "QScriptValue(engine, QString(\"\"))"
       
   511                 << "QScriptValue(engine, QString())"
       
   512                 << "QScriptValue(engine, QString(\"0\"))"
       
   513                 << "QScriptValue(engine, QString(\"123\"))"
       
   514                 << "QScriptValue(engine, QString(\"1.23\"))"
       
   515                ;
       
   516     }
       
   517     newRow(expr) << isString.contains(expr);
       
   518 }
       
   519 
       
   520 void tst_QScriptValue::isString_test(const char*, const QScriptValue& value)
       
   521 {
       
   522     QFETCH(bool, expected);
       
   523     QCOMPARE(value.isString(), expected);
       
   524 }
       
   525 
       
   526 DEFINE_TEST_FUNCTION(isString)
       
   527 
       
   528 
       
   529 void tst_QScriptValue::isUndefined_initData()
       
   530 {
       
   531     QTest::addColumn<bool>("expected");
       
   532     initScriptValues();
       
   533 }
       
   534 
       
   535 void tst_QScriptValue::isUndefined_makeData(const char* expr)
       
   536 {
       
   537     static QSet<QString> isUndefined;
       
   538     if (isUndefined.isEmpty()) {
       
   539         isUndefined << "QScriptValue(QScriptValue::UndefinedValue)"
       
   540                 << "QScriptValue(0, QScriptValue::UndefinedValue)"
       
   541                 << "QScriptValue(engine, QScriptValue::UndefinedValue)"
       
   542                 << "engine->evaluate(\"{}\")"
       
   543                 << "engine->undefinedValue()"
       
   544                ;
       
   545     }
       
   546     newRow(expr) << isUndefined.contains(expr);
       
   547 }
       
   548 
       
   549 void tst_QScriptValue::isUndefined_test(const char*, const QScriptValue& value)
       
   550 {
       
   551     QFETCH(bool, expected);
       
   552     QCOMPARE(value.isUndefined(), expected);
       
   553 }
       
   554 
       
   555 DEFINE_TEST_FUNCTION(isUndefined)
       
   556 
       
   557 
       
   558 
       
   559 
       
   560 
       
   561 void tst_QScriptValue::isObject_initData()
       
   562 {
       
   563     QTest::addColumn<bool>("expected");
       
   564     initScriptValues();
       
   565 }
       
   566 
       
   567 void tst_QScriptValue::isObject_makeData(const char* expr)
       
   568 {
       
   569     static QSet<QString> isObject;
       
   570     if (isObject.isEmpty()) {
       
   571         isObject << "engine->evaluate(\"[]\")"
       
   572                 << "engine->evaluate(\"Object.prototype\")"
       
   573                 << "engine->evaluate(\"Date.prototype\")"
       
   574                 << "engine->evaluate(\"Array.prototype\")"
       
   575                 << "engine->evaluate(\"Function.prototype\")"
       
   576                 << "engine->evaluate(\"Error.prototype\")"
       
   577                 << "engine->evaluate(\"Object\")"
       
   578                 << "engine->evaluate(\"Array\")"
       
   579                 << "engine->evaluate(\"Number\")"
       
   580                 << "engine->evaluate(\"Function\")"
       
   581                 << "engine->evaluate(\"(function() { return 1; })\")"
       
   582                 << "engine->evaluate(\"(function() { return 'ciao'; })\")"
       
   583                 << "engine->evaluate(\"(function() { throw new Error('foo'); })\")"
       
   584                 << "engine->evaluate(\"/foo/\")"
       
   585                 << "engine->evaluate(\"new Object()\")"
       
   586                 << "engine->evaluate(\"new Array()\")"
       
   587                 << "engine->evaluate(\"new Error()\")"
       
   588                ;
       
   589     }
       
   590     newRow(expr) << isObject.contains(expr);
       
   591 }
       
   592 
       
   593 void tst_QScriptValue::isObject_test(const char*, const QScriptValue& value)
       
   594 {
       
   595     QFETCH(bool, expected);
       
   596     QCOMPARE(value.isObject(), expected);
       
   597 }
       
   598 
       
   599 DEFINE_TEST_FUNCTION(isObject)
       
   600 
       
   601 
       
   602 void tst_QScriptValue::isDate_initData()
       
   603 {
       
   604     QTest::addColumn<bool>("expected");
       
   605     initScriptValues();
       
   606 }
       
   607 
       
   608 void tst_QScriptValue::isDate_makeData(const char* expr)
       
   609 {
       
   610     static QSet<QString> isDate;
       
   611     if (isDate.isEmpty()) {
       
   612         isDate << "engine->evaluate(\"Date.prototype\")"
       
   613                ;
       
   614     }
       
   615     newRow(expr) << isDate.contains(expr);
       
   616 }
       
   617 
       
   618 void tst_QScriptValue::isDate_test(const char*, const QScriptValue& value)
       
   619 {
       
   620     QFETCH(bool, expected);
       
   621     QCOMPARE(value.isDate(), expected);
       
   622 }
       
   623 
       
   624 DEFINE_TEST_FUNCTION(isDate)
       
   625 
       
   626 
       
   627 void tst_QScriptValue::isRegExp_initData()
       
   628 {
       
   629     QTest::addColumn<bool>("expected");
       
   630     initScriptValues();
       
   631 }
       
   632 
       
   633 void tst_QScriptValue::isRegExp_makeData(const char* expr)
       
   634 {
       
   635     static QSet<QString> isRegExp;
       
   636     if (isRegExp.isEmpty()) {
       
   637         isRegExp << "engine->evaluate(\"/foo/\")"
       
   638                ;
       
   639     }
       
   640     newRow(expr) << isRegExp.contains(expr);
       
   641 }
       
   642 
       
   643 void tst_QScriptValue::isRegExp_test(const char*, const QScriptValue& value)
       
   644 {
       
   645     QFETCH(bool, expected);
       
   646     QCOMPARE(value.isRegExp(), expected);
       
   647 }
       
   648 
       
   649 DEFINE_TEST_FUNCTION(isRegExp)
       
   650 
       
   651 
       
   652 void tst_QScriptValue::isArray_initData()
       
   653 {
       
   654     QTest::addColumn<bool>("expected");
       
   655     initScriptValues();
       
   656 }
       
   657 
       
   658 void tst_QScriptValue::isArray_makeData(const char* expr)
       
   659 {
       
   660     static QSet<QString> isArray;
       
   661     if (isArray.isEmpty()) {
       
   662         isArray << "engine->evaluate(\"[]\")"
       
   663                 << "engine->evaluate(\"Array.prototype\")"
       
   664                 << "engine->evaluate(\"new Array()\")"
       
   665                ;
       
   666     }
       
   667     newRow(expr) << isArray.contains(expr);
       
   668 }
       
   669 
       
   670 void tst_QScriptValue::isArray_test(const char*, const QScriptValue& value)
       
   671 {
       
   672     QFETCH(bool, expected);
       
   673     QCOMPARE(value.isArray(), expected);
       
   674 }
       
   675 
       
   676 DEFINE_TEST_FUNCTION(isArray)
       
   677 
       
   678 
       
   679 void tst_QScriptValue::isError_initData()
       
   680 {
       
   681     QTest::addColumn<bool>("expected");
       
   682     initScriptValues();
       
   683 }
       
   684 
       
   685 void tst_QScriptValue::isError_makeData(const char* expr)
       
   686 {
       
   687     static QSet<QString> isError;
       
   688     if (isError.isEmpty()) {
       
   689         isError << "engine->evaluate(\"Error.prototype\")"
       
   690                 << "engine->evaluate(\"new Error()\")"
       
   691                ;
       
   692     }
       
   693     newRow(expr) << isError.contains(expr);
       
   694 }
       
   695 
       
   696 void tst_QScriptValue::isError_test(const char*, const QScriptValue& value)
       
   697 {
       
   698     QFETCH(bool, expected);
       
   699     QCOMPARE(value.isError(), expected);
       
   700 }
       
   701 
       
   702 DEFINE_TEST_FUNCTION(isError)
       
   703 
       
   704 
       
   705 
       
   706 void tst_QScriptValue::toString_initData()
       
   707 {
       
   708     QTest::addColumn<QString>("expected");
       
   709     initScriptValues();
       
   710 }
       
   711 
       
   712 void tst_QScriptValue::toString_makeData(const char* expr)
       
   713 {
       
   714     static QHash<QString, QString> toString;
       
   715     if (toString.isEmpty()) {
       
   716         toString.insert("QScriptValue()", "");
       
   717         toString.insert("QScriptValue(QScriptValue::UndefinedValue)", "undefined");
       
   718         toString.insert("QScriptValue(QScriptValue::NullValue)", "null");
       
   719         toString.insert("QScriptValue(true)", "true");
       
   720         toString.insert("QScriptValue(false)", "false");
       
   721         toString.insert("QScriptValue(int(122))", "122");
       
   722         toString.insert("QScriptValue(uint(124))", "124");
       
   723         toString.insert("QScriptValue(0)", "0");
       
   724         toString.insert("QScriptValue(0.0)", "0");
       
   725         toString.insert("QScriptValue(123.0)", "123");
       
   726         toString.insert("QScriptValue(6.37e-8)", "6.37e-8");
       
   727         toString.insert("QScriptValue(-6.37e-8)", "-6.37e-8");
       
   728         toString.insert("QScriptValue(0x43211234)", "1126240820");
       
   729         toString.insert("QScriptValue(0x10000)", "65536");
       
   730         toString.insert("QScriptValue(0x10001)", "65537");
       
   731         toString.insert("QScriptValue(qSNaN())", "NaN");
       
   732         toString.insert("QScriptValue(qQNaN())", "NaN");
       
   733         toString.insert("QScriptValue(qInf())", "Infinity");
       
   734         toString.insert("QScriptValue(-qInf())", "-Infinity");
       
   735         toString.insert("QScriptValue(\"NaN\")", "NaN");
       
   736         toString.insert("QScriptValue(\"Infinity\")", "Infinity");
       
   737         toString.insert("QScriptValue(\"-Infinity\")", "-Infinity");
       
   738         toString.insert("QScriptValue(\"ciao\")", "ciao");
       
   739         toString.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", "ciao");
       
   740         toString.insert("QScriptValue(QString(\"\"))", "");
       
   741         toString.insert("QScriptValue(QString())", "");
       
   742         toString.insert("QScriptValue(QString(\"0\"))", "0");
       
   743         toString.insert("QScriptValue(QString(\"123\"))", "123");
       
   744         toString.insert("QScriptValue(QString(\"12.4\"))", "12.4");
       
   745         toString.insert("QScriptValue(0, QScriptValue::UndefinedValue)", "undefined");
       
   746         toString.insert("QScriptValue(0, QScriptValue::NullValue)", "null");
       
   747         toString.insert("QScriptValue(0, true)", "true");
       
   748         toString.insert("QScriptValue(0, false)", "false");
       
   749         toString.insert("QScriptValue(0, int(122))", "122");
       
   750         toString.insert("QScriptValue(0, uint(124))", "124");
       
   751         toString.insert("QScriptValue(0, 0)", "0");
       
   752         toString.insert("QScriptValue(0, 0.0)", "0");
       
   753         toString.insert("QScriptValue(0, 123.0)", "123");
       
   754         toString.insert("QScriptValue(0, 6.37e-8)", "6.37e-8");
       
   755         toString.insert("QScriptValue(0, -6.37e-8)", "-6.37e-8");
       
   756         toString.insert("QScriptValue(0, 0x43211234)", "1126240820");
       
   757         toString.insert("QScriptValue(0, 0x10000)", "65536");
       
   758         toString.insert("QScriptValue(0, 0x10001)", "65537");
       
   759         toString.insert("QScriptValue(0, qSNaN())", "NaN");
       
   760         toString.insert("QScriptValue(0, qQNaN())", "NaN");
       
   761         toString.insert("QScriptValue(0, qInf())", "Infinity");
       
   762         toString.insert("QScriptValue(0, -qInf())", "-Infinity");
       
   763         toString.insert("QScriptValue(0, \"NaN\")", "NaN");
       
   764         toString.insert("QScriptValue(0, \"Infinity\")", "Infinity");
       
   765         toString.insert("QScriptValue(0, \"-Infinity\")", "-Infinity");
       
   766         toString.insert("QScriptValue(0, \"ciao\")", "ciao");
       
   767         toString.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", "ciao");
       
   768         toString.insert("QScriptValue(0, QString(\"\"))", "");
       
   769         toString.insert("QScriptValue(0, QString())", "");
       
   770         toString.insert("QScriptValue(0, QString(\"0\"))", "0");
       
   771         toString.insert("QScriptValue(0, QString(\"123\"))", "123");
       
   772         toString.insert("QScriptValue(0, QString(\"12.3\"))", "12.3");
       
   773         toString.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", "undefined");
       
   774         toString.insert("QScriptValue(engine, QScriptValue::NullValue)", "null");
       
   775         toString.insert("QScriptValue(engine, true)", "true");
       
   776         toString.insert("QScriptValue(engine, false)", "false");
       
   777         toString.insert("QScriptValue(engine, int(122))", "122");
       
   778         toString.insert("QScriptValue(engine, uint(124))", "124");
       
   779         toString.insert("QScriptValue(engine, 0)", "0");
       
   780         toString.insert("QScriptValue(engine, 0.0)", "0");
       
   781         toString.insert("QScriptValue(engine, 123.0)", "123");
       
   782         toString.insert("QScriptValue(engine, 6.37e-8)", "6.37e-8");
       
   783         toString.insert("QScriptValue(engine, -6.37e-8)", "-6.37e-8");
       
   784         toString.insert("QScriptValue(engine, 0x43211234)", "1126240820");
       
   785         toString.insert("QScriptValue(engine, 0x10000)", "65536");
       
   786         toString.insert("QScriptValue(engine, 0x10001)", "65537");
       
   787         toString.insert("QScriptValue(engine, qSNaN())", "NaN");
       
   788         toString.insert("QScriptValue(engine, qQNaN())", "NaN");
       
   789         toString.insert("QScriptValue(engine, qInf())", "Infinity");
       
   790         toString.insert("QScriptValue(engine, -qInf())", "-Infinity");
       
   791         toString.insert("QScriptValue(engine, \"NaN\")", "NaN");
       
   792         toString.insert("QScriptValue(engine, \"Infinity\")", "Infinity");
       
   793         toString.insert("QScriptValue(engine, \"-Infinity\")", "-Infinity");
       
   794         toString.insert("QScriptValue(engine, \"ciao\")", "ciao");
       
   795         toString.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", "ciao");
       
   796         toString.insert("QScriptValue(engine, QString(\"\"))", "");
       
   797         toString.insert("QScriptValue(engine, QString())", "");
       
   798         toString.insert("QScriptValue(engine, QString(\"0\"))", "0");
       
   799         toString.insert("QScriptValue(engine, QString(\"123\"))", "123");
       
   800         toString.insert("QScriptValue(engine, QString(\"1.23\"))", "1.23");
       
   801         toString.insert("engine->evaluate(\"[]\")", "");
       
   802         toString.insert("engine->evaluate(\"{}\")", "undefined");
       
   803         toString.insert("engine->evaluate(\"Object.prototype\")", "[object Object]");
       
   804         toString.insert("engine->evaluate(\"Date.prototype\")", "Invalid Date");
       
   805         toString.insert("engine->evaluate(\"Array.prototype\")", "");
       
   806         toString.insert("engine->evaluate(\"Function.prototype\")", "function () {\n    [native code]\n}");
       
   807         toString.insert("engine->evaluate(\"Error.prototype\")", "Error: Unknown error");
       
   808         toString.insert("engine->evaluate(\"Object\")", "function Object() {\n    [native code]\n}");
       
   809         toString.insert("engine->evaluate(\"Array\")", "function Array() {\n    [native code]\n}");
       
   810         toString.insert("engine->evaluate(\"Number\")", "function Number() {\n    [native code]\n}");
       
   811         toString.insert("engine->evaluate(\"Function\")", "function Function() {\n    [native code]\n}");
       
   812         toString.insert("engine->evaluate(\"(function() { return 1; })\")", "function () { return 1; }");
       
   813         toString.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", "function () { return 'ciao'; }");
       
   814         toString.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", "function () { throw new Error('foo'); }");
       
   815         toString.insert("engine->evaluate(\"/foo/\")", "/foo/");
       
   816         toString.insert("engine->evaluate(\"new Object()\")", "[object Object]");
       
   817         toString.insert("engine->evaluate(\"new Array()\")", "");
       
   818         toString.insert("engine->evaluate(\"new Error()\")", "Error: Unknown error");
       
   819         toString.insert("engine->nullValue()", "null");
       
   820         toString.insert("engine->undefinedValue()", "undefined");
       
   821     }
       
   822     newRow(expr) << toString.value(expr);
       
   823 }
       
   824 
       
   825 void tst_QScriptValue::toString_test(const char*, const QScriptValue& value)
       
   826 {
       
   827     QFETCH(QString, expected);
       
   828     QCOMPARE(value.toString(), expected);
       
   829 }
       
   830 
       
   831 DEFINE_TEST_FUNCTION(toString)
       
   832 
       
   833 
       
   834 void tst_QScriptValue::toNumber_initData()
       
   835 {
       
   836     QTest::addColumn<qsreal>("expected");
       
   837     initScriptValues();
       
   838 }
       
   839 
       
   840 void tst_QScriptValue::toNumber_makeData(const char* expr)
       
   841 {
       
   842     static QHash<QString, qsreal> toNumber;
       
   843     if (toNumber.isEmpty()) {
       
   844         toNumber.insert("QScriptValue()", 0);
       
   845         toNumber.insert("QScriptValue(QScriptValue::UndefinedValue)", qQNaN());
       
   846         toNumber.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
   847         toNumber.insert("QScriptValue(true)", 1);
       
   848         toNumber.insert("QScriptValue(false)", 0);
       
   849         toNumber.insert("QScriptValue(int(122))", 122);
       
   850         toNumber.insert("QScriptValue(uint(124))", 124);
       
   851         toNumber.insert("QScriptValue(0)", 0);
       
   852         toNumber.insert("QScriptValue(0.0)", 0);
       
   853         toNumber.insert("QScriptValue(123.0)", 123);
       
   854         toNumber.insert("QScriptValue(6.37e-8)", 6.369999999999999e-08);
       
   855         toNumber.insert("QScriptValue(-6.37e-8)", -6.369999999999999e-08);
       
   856         toNumber.insert("QScriptValue(0x43211234)", 1126240820);
       
   857         toNumber.insert("QScriptValue(0x10000)", 65536);
       
   858         toNumber.insert("QScriptValue(0x10001)", 65537);
       
   859         toNumber.insert("QScriptValue(qSNaN())", qQNaN());
       
   860         toNumber.insert("QScriptValue(qQNaN())", qQNaN());
       
   861         toNumber.insert("QScriptValue(qInf())", qInf());
       
   862         toNumber.insert("QScriptValue(-qInf())", qInf());
       
   863         toNumber.insert("QScriptValue(\"NaN\")", qQNaN());
       
   864         toNumber.insert("QScriptValue(\"Infinity\")", qInf());
       
   865         toNumber.insert("QScriptValue(\"-Infinity\")", qInf());
       
   866         toNumber.insert("QScriptValue(\"ciao\")", qQNaN());
       
   867         toNumber.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", qQNaN());
       
   868         toNumber.insert("QScriptValue(QString(\"\"))", 0);
       
   869         toNumber.insert("QScriptValue(QString())", 0);
       
   870         toNumber.insert("QScriptValue(QString(\"0\"))", 0);
       
   871         toNumber.insert("QScriptValue(QString(\"123\"))", 123);
       
   872         toNumber.insert("QScriptValue(QString(\"12.4\"))", 12.4);
       
   873         toNumber.insert("QScriptValue(0, QScriptValue::UndefinedValue)", qQNaN());
       
   874         toNumber.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
   875         toNumber.insert("QScriptValue(0, true)", 1);
       
   876         toNumber.insert("QScriptValue(0, false)", 0);
       
   877         toNumber.insert("QScriptValue(0, int(122))", 122);
       
   878         toNumber.insert("QScriptValue(0, uint(124))", 124);
       
   879         toNumber.insert("QScriptValue(0, 0)", 0);
       
   880         toNumber.insert("QScriptValue(0, 0.0)", 0);
       
   881         toNumber.insert("QScriptValue(0, 123.0)", 123);
       
   882         toNumber.insert("QScriptValue(0, 6.37e-8)", 6.369999999999999e-08);
       
   883         toNumber.insert("QScriptValue(0, -6.37e-8)", -6.369999999999999e-08);
       
   884         toNumber.insert("QScriptValue(0, 0x43211234)", 1126240820);
       
   885         toNumber.insert("QScriptValue(0, 0x10000)", 65536);
       
   886         toNumber.insert("QScriptValue(0, 0x10001)", 65537);
       
   887         toNumber.insert("QScriptValue(0, qSNaN())", qQNaN());
       
   888         toNumber.insert("QScriptValue(0, qQNaN())", qQNaN());
       
   889         toNumber.insert("QScriptValue(0, qInf())", qInf());
       
   890         toNumber.insert("QScriptValue(0, -qInf())", qInf());
       
   891         toNumber.insert("QScriptValue(0, \"NaN\")", qQNaN());
       
   892         toNumber.insert("QScriptValue(0, \"Infinity\")", qInf());
       
   893         toNumber.insert("QScriptValue(0, \"-Infinity\")", qInf());
       
   894         toNumber.insert("QScriptValue(0, \"ciao\")", qQNaN());
       
   895         toNumber.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", qQNaN());
       
   896         toNumber.insert("QScriptValue(0, QString(\"\"))", 0);
       
   897         toNumber.insert("QScriptValue(0, QString())", 0);
       
   898         toNumber.insert("QScriptValue(0, QString(\"0\"))", 0);
       
   899         toNumber.insert("QScriptValue(0, QString(\"123\"))", 123);
       
   900         toNumber.insert("QScriptValue(0, QString(\"12.3\"))", 12.3);
       
   901         toNumber.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", qQNaN());
       
   902         toNumber.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
   903         toNumber.insert("QScriptValue(engine, true)", 1);
       
   904         toNumber.insert("QScriptValue(engine, false)", 0);
       
   905         toNumber.insert("QScriptValue(engine, int(122))", 122);
       
   906         toNumber.insert("QScriptValue(engine, uint(124))", 124);
       
   907         toNumber.insert("QScriptValue(engine, 0)", 0);
       
   908         toNumber.insert("QScriptValue(engine, 0.0)", 0);
       
   909         toNumber.insert("QScriptValue(engine, 123.0)", 123);
       
   910         toNumber.insert("QScriptValue(engine, 6.37e-8)", 6.369999999999999e-08);
       
   911         toNumber.insert("QScriptValue(engine, -6.37e-8)", -6.369999999999999e-08);
       
   912         toNumber.insert("QScriptValue(engine, 0x43211234)", 1126240820);
       
   913         toNumber.insert("QScriptValue(engine, 0x10000)", 65536);
       
   914         toNumber.insert("QScriptValue(engine, 0x10001)", 65537);
       
   915         toNumber.insert("QScriptValue(engine, qSNaN())", qQNaN());
       
   916         toNumber.insert("QScriptValue(engine, qQNaN())", qQNaN());
       
   917         toNumber.insert("QScriptValue(engine, qInf())", qInf());
       
   918         toNumber.insert("QScriptValue(engine, -qInf())", qInf());
       
   919         toNumber.insert("QScriptValue(engine, \"NaN\")", qQNaN());
       
   920         toNumber.insert("QScriptValue(engine, \"Infinity\")", qInf());
       
   921         toNumber.insert("QScriptValue(engine, \"-Infinity\")", qInf());
       
   922         toNumber.insert("QScriptValue(engine, \"ciao\")", qQNaN());
       
   923         toNumber.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", qQNaN());
       
   924         toNumber.insert("QScriptValue(engine, QString(\"\"))", 0);
       
   925         toNumber.insert("QScriptValue(engine, QString())", 0);
       
   926         toNumber.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
   927         toNumber.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
   928         toNumber.insert("QScriptValue(engine, QString(\"1.23\"))", 1.23);
       
   929         toNumber.insert("engine->evaluate(\"[]\")", 0);
       
   930         toNumber.insert("engine->evaluate(\"{}\")", qQNaN());
       
   931         toNumber.insert("engine->evaluate(\"Object.prototype\")", qQNaN());
       
   932         toNumber.insert("engine->evaluate(\"Date.prototype\")", qQNaN());
       
   933         toNumber.insert("engine->evaluate(\"Array.prototype\")", 0);
       
   934         toNumber.insert("engine->evaluate(\"Function.prototype\")", qQNaN());
       
   935         toNumber.insert("engine->evaluate(\"Error.prototype\")", qQNaN());
       
   936         toNumber.insert("engine->evaluate(\"Object\")", qQNaN());
       
   937         toNumber.insert("engine->evaluate(\"Array\")", qQNaN());
       
   938         toNumber.insert("engine->evaluate(\"Number\")", qQNaN());
       
   939         toNumber.insert("engine->evaluate(\"Function\")", qQNaN());
       
   940         toNumber.insert("engine->evaluate(\"(function() { return 1; })\")", qQNaN());
       
   941         toNumber.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", qQNaN());
       
   942         toNumber.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", qQNaN());
       
   943         toNumber.insert("engine->evaluate(\"/foo/\")", qQNaN());
       
   944         toNumber.insert("engine->evaluate(\"new Object()\")", qQNaN());
       
   945         toNumber.insert("engine->evaluate(\"new Array()\")", 0);
       
   946         toNumber.insert("engine->evaluate(\"new Error()\")", qQNaN());
       
   947         toNumber.insert("engine->nullValue()", 0);
       
   948         toNumber.insert("engine->undefinedValue()", qQNaN());
       
   949     }
       
   950     newRow(expr) << toNumber.value(expr);
       
   951 }
       
   952 
       
   953 void tst_QScriptValue::toNumber_test(const char*, const QScriptValue& value)
       
   954 {
       
   955     QFETCH(qsreal, expected);
       
   956     if (qIsNaN(expected)) {
       
   957         QVERIFY(qIsNaN(value.toNumber()));
       
   958         return;
       
   959     }
       
   960     if (qIsInf(expected)) {
       
   961         QVERIFY(qIsInf(value.toNumber()));
       
   962         return;
       
   963     }
       
   964     QCOMPARE(value.toNumber(), expected);
       
   965 }
       
   966 
       
   967 DEFINE_TEST_FUNCTION(toNumber)
       
   968 
       
   969 
       
   970 void tst_QScriptValue::toBool_initData()
       
   971 {
       
   972     QTest::addColumn<bool>("expected");
       
   973     initScriptValues();
       
   974 }
       
   975 
       
   976 void tst_QScriptValue::toBool_makeData(const char* expr)
       
   977 {
       
   978     static QHash<QString, bool> toBool;
       
   979     if (toBool.isEmpty()) {
       
   980         toBool.insert("QScriptValue()", false);
       
   981         toBool.insert("QScriptValue(QScriptValue::UndefinedValue)", false);
       
   982         toBool.insert("QScriptValue(QScriptValue::NullValue)", false);
       
   983         toBool.insert("QScriptValue(true)", true);
       
   984         toBool.insert("QScriptValue(false)", false);
       
   985         toBool.insert("QScriptValue(int(122))", true);
       
   986         toBool.insert("QScriptValue(uint(124))", true);
       
   987         toBool.insert("QScriptValue(0)", false);
       
   988         toBool.insert("QScriptValue(0.0)", false);
       
   989         toBool.insert("QScriptValue(123.0)", true);
       
   990         toBool.insert("QScriptValue(6.37e-8)", true);
       
   991         toBool.insert("QScriptValue(-6.37e-8)", true);
       
   992         toBool.insert("QScriptValue(0x43211234)", true);
       
   993         toBool.insert("QScriptValue(0x10000)", true);
       
   994         toBool.insert("QScriptValue(0x10001)", true);
       
   995         toBool.insert("QScriptValue(qSNaN())", false);
       
   996         toBool.insert("QScriptValue(qQNaN())", false);
       
   997         toBool.insert("QScriptValue(qInf())", true);
       
   998         toBool.insert("QScriptValue(-qInf())", true);
       
   999         toBool.insert("QScriptValue(\"NaN\")", true);
       
  1000         toBool.insert("QScriptValue(\"Infinity\")", true);
       
  1001         toBool.insert("QScriptValue(\"-Infinity\")", true);
       
  1002         toBool.insert("QScriptValue(\"ciao\")", true);
       
  1003         toBool.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", true);
       
  1004         toBool.insert("QScriptValue(QString(\"\"))", false);
       
  1005         toBool.insert("QScriptValue(QString())", false);
       
  1006         toBool.insert("QScriptValue(QString(\"0\"))", true);
       
  1007         toBool.insert("QScriptValue(QString(\"123\"))", true);
       
  1008         toBool.insert("QScriptValue(QString(\"12.4\"))", true);
       
  1009         toBool.insert("QScriptValue(0, QScriptValue::UndefinedValue)", false);
       
  1010         toBool.insert("QScriptValue(0, QScriptValue::NullValue)", false);
       
  1011         toBool.insert("QScriptValue(0, true)", true);
       
  1012         toBool.insert("QScriptValue(0, false)", false);
       
  1013         toBool.insert("QScriptValue(0, int(122))", true);
       
  1014         toBool.insert("QScriptValue(0, uint(124))", true);
       
  1015         toBool.insert("QScriptValue(0, 0)", false);
       
  1016         toBool.insert("QScriptValue(0, 0.0)", false);
       
  1017         toBool.insert("QScriptValue(0, 123.0)", true);
       
  1018         toBool.insert("QScriptValue(0, 6.37e-8)", true);
       
  1019         toBool.insert("QScriptValue(0, -6.37e-8)", true);
       
  1020         toBool.insert("QScriptValue(0, 0x43211234)", true);
       
  1021         toBool.insert("QScriptValue(0, 0x10000)", true);
       
  1022         toBool.insert("QScriptValue(0, 0x10001)", true);
       
  1023         toBool.insert("QScriptValue(0, qSNaN())", false);
       
  1024         toBool.insert("QScriptValue(0, qQNaN())", false);
       
  1025         toBool.insert("QScriptValue(0, qInf())", true);
       
  1026         toBool.insert("QScriptValue(0, -qInf())", true);
       
  1027         toBool.insert("QScriptValue(0, \"NaN\")", true);
       
  1028         toBool.insert("QScriptValue(0, \"Infinity\")", true);
       
  1029         toBool.insert("QScriptValue(0, \"-Infinity\")", true);
       
  1030         toBool.insert("QScriptValue(0, \"ciao\")", true);
       
  1031         toBool.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", true);
       
  1032         toBool.insert("QScriptValue(0, QString(\"\"))", false);
       
  1033         toBool.insert("QScriptValue(0, QString())", false);
       
  1034         toBool.insert("QScriptValue(0, QString(\"0\"))", true);
       
  1035         toBool.insert("QScriptValue(0, QString(\"123\"))", true);
       
  1036         toBool.insert("QScriptValue(0, QString(\"12.3\"))", true);
       
  1037         toBool.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", false);
       
  1038         toBool.insert("QScriptValue(engine, QScriptValue::NullValue)", false);
       
  1039         toBool.insert("QScriptValue(engine, true)", true);
       
  1040         toBool.insert("QScriptValue(engine, false)", false);
       
  1041         toBool.insert("QScriptValue(engine, int(122))", true);
       
  1042         toBool.insert("QScriptValue(engine, uint(124))", true);
       
  1043         toBool.insert("QScriptValue(engine, 0)", false);
       
  1044         toBool.insert("QScriptValue(engine, 0.0)", false);
       
  1045         toBool.insert("QScriptValue(engine, 123.0)", true);
       
  1046         toBool.insert("QScriptValue(engine, 6.37e-8)", true);
       
  1047         toBool.insert("QScriptValue(engine, -6.37e-8)", true);
       
  1048         toBool.insert("QScriptValue(engine, 0x43211234)", true);
       
  1049         toBool.insert("QScriptValue(engine, 0x10000)", true);
       
  1050         toBool.insert("QScriptValue(engine, 0x10001)", true);
       
  1051         toBool.insert("QScriptValue(engine, qSNaN())", false);
       
  1052         toBool.insert("QScriptValue(engine, qQNaN())", false);
       
  1053         toBool.insert("QScriptValue(engine, qInf())", true);
       
  1054         toBool.insert("QScriptValue(engine, -qInf())", true);
       
  1055         toBool.insert("QScriptValue(engine, \"NaN\")", true);
       
  1056         toBool.insert("QScriptValue(engine, \"Infinity\")", true);
       
  1057         toBool.insert("QScriptValue(engine, \"-Infinity\")", true);
       
  1058         toBool.insert("QScriptValue(engine, \"ciao\")", true);
       
  1059         toBool.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", true);
       
  1060         toBool.insert("QScriptValue(engine, QString(\"\"))", false);
       
  1061         toBool.insert("QScriptValue(engine, QString())", false);
       
  1062         toBool.insert("QScriptValue(engine, QString(\"0\"))", true);
       
  1063         toBool.insert("QScriptValue(engine, QString(\"123\"))", true);
       
  1064         toBool.insert("QScriptValue(engine, QString(\"1.23\"))", true);
       
  1065         toBool.insert("engine->evaluate(\"[]\")", true);
       
  1066         toBool.insert("engine->evaluate(\"{}\")", false);
       
  1067         toBool.insert("engine->evaluate(\"Object.prototype\")", true);
       
  1068         toBool.insert("engine->evaluate(\"Date.prototype\")", true);
       
  1069         toBool.insert("engine->evaluate(\"Array.prototype\")", true);
       
  1070         toBool.insert("engine->evaluate(\"Function.prototype\")", true);
       
  1071         toBool.insert("engine->evaluate(\"Error.prototype\")", true);
       
  1072         toBool.insert("engine->evaluate(\"Object\")", true);
       
  1073         toBool.insert("engine->evaluate(\"Array\")", true);
       
  1074         toBool.insert("engine->evaluate(\"Number\")", true);
       
  1075         toBool.insert("engine->evaluate(\"Function\")", true);
       
  1076         toBool.insert("engine->evaluate(\"(function() { return 1; })\")", true);
       
  1077         toBool.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", true);
       
  1078         toBool.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", true);
       
  1079         toBool.insert("engine->evaluate(\"/foo/\")", true);
       
  1080         toBool.insert("engine->evaluate(\"new Object()\")", true);
       
  1081         toBool.insert("engine->evaluate(\"new Array()\")", true);
       
  1082         toBool.insert("engine->evaluate(\"new Error()\")", true);
       
  1083         toBool.insert("engine->nullValue()", false);
       
  1084         toBool.insert("engine->undefinedValue()", false);
       
  1085     }
       
  1086     newRow(expr) << toBool.value(expr);
       
  1087 }
       
  1088 
       
  1089 void tst_QScriptValue::toBool_test(const char*, const QScriptValue& value)
       
  1090 {
       
  1091     QFETCH(bool, expected);
       
  1092     QCOMPARE(value.toBool(), expected);
       
  1093 }
       
  1094 
       
  1095 DEFINE_TEST_FUNCTION(toBool)
       
  1096 
       
  1097 
       
  1098 void tst_QScriptValue::toBoolean_initData()
       
  1099 {
       
  1100     QTest::addColumn<bool>("expected");
       
  1101     initScriptValues();
       
  1102 }
       
  1103 
       
  1104 void tst_QScriptValue::toBoolean_makeData(const char* expr)
       
  1105 {
       
  1106     static QHash<QString, bool> toBoolean;
       
  1107     if (toBoolean.isEmpty()) {
       
  1108         toBoolean.insert("QScriptValue()", false);
       
  1109         toBoolean.insert("QScriptValue(QScriptValue::UndefinedValue)", false);
       
  1110         toBoolean.insert("QScriptValue(QScriptValue::NullValue)", false);
       
  1111         toBoolean.insert("QScriptValue(true)", true);
       
  1112         toBoolean.insert("QScriptValue(false)", false);
       
  1113         toBoolean.insert("QScriptValue(int(122))", true);
       
  1114         toBoolean.insert("QScriptValue(uint(124))", true);
       
  1115         toBoolean.insert("QScriptValue(0)", false);
       
  1116         toBoolean.insert("QScriptValue(0.0)", false);
       
  1117         toBoolean.insert("QScriptValue(123.0)", true);
       
  1118         toBoolean.insert("QScriptValue(6.37e-8)", true);
       
  1119         toBoolean.insert("QScriptValue(-6.37e-8)", true);
       
  1120         toBoolean.insert("QScriptValue(0x43211234)", true);
       
  1121         toBoolean.insert("QScriptValue(0x10000)", true);
       
  1122         toBoolean.insert("QScriptValue(0x10001)", true);
       
  1123         toBoolean.insert("QScriptValue(qSNaN())", false);
       
  1124         toBoolean.insert("QScriptValue(qQNaN())", false);
       
  1125         toBoolean.insert("QScriptValue(qInf())", true);
       
  1126         toBoolean.insert("QScriptValue(-qInf())", true);
       
  1127         toBoolean.insert("QScriptValue(\"NaN\")", true);
       
  1128         toBoolean.insert("QScriptValue(\"Infinity\")", true);
       
  1129         toBoolean.insert("QScriptValue(\"-Infinity\")", true);
       
  1130         toBoolean.insert("QScriptValue(\"ciao\")", true);
       
  1131         toBoolean.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", true);
       
  1132         toBoolean.insert("QScriptValue(QString(\"\"))", false);
       
  1133         toBoolean.insert("QScriptValue(QString())", false);
       
  1134         toBoolean.insert("QScriptValue(QString(\"0\"))", true);
       
  1135         toBoolean.insert("QScriptValue(QString(\"123\"))", true);
       
  1136         toBoolean.insert("QScriptValue(QString(\"12.4\"))", true);
       
  1137         toBoolean.insert("QScriptValue(0, QScriptValue::UndefinedValue)", false);
       
  1138         toBoolean.insert("QScriptValue(0, QScriptValue::NullValue)", false);
       
  1139         toBoolean.insert("QScriptValue(0, true)", true);
       
  1140         toBoolean.insert("QScriptValue(0, false)", false);
       
  1141         toBoolean.insert("QScriptValue(0, int(122))", true);
       
  1142         toBoolean.insert("QScriptValue(0, uint(124))", true);
       
  1143         toBoolean.insert("QScriptValue(0, 0)", false);
       
  1144         toBoolean.insert("QScriptValue(0, 0.0)", false);
       
  1145         toBoolean.insert("QScriptValue(0, 123.0)", true);
       
  1146         toBoolean.insert("QScriptValue(0, 6.37e-8)", true);
       
  1147         toBoolean.insert("QScriptValue(0, -6.37e-8)", true);
       
  1148         toBoolean.insert("QScriptValue(0, 0x43211234)", true);
       
  1149         toBoolean.insert("QScriptValue(0, 0x10000)", true);
       
  1150         toBoolean.insert("QScriptValue(0, 0x10001)", true);
       
  1151         toBoolean.insert("QScriptValue(0, qSNaN())", false);
       
  1152         toBoolean.insert("QScriptValue(0, qQNaN())", false);
       
  1153         toBoolean.insert("QScriptValue(0, qInf())", true);
       
  1154         toBoolean.insert("QScriptValue(0, -qInf())", true);
       
  1155         toBoolean.insert("QScriptValue(0, \"NaN\")", true);
       
  1156         toBoolean.insert("QScriptValue(0, \"Infinity\")", true);
       
  1157         toBoolean.insert("QScriptValue(0, \"-Infinity\")", true);
       
  1158         toBoolean.insert("QScriptValue(0, \"ciao\")", true);
       
  1159         toBoolean.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", true);
       
  1160         toBoolean.insert("QScriptValue(0, QString(\"\"))", false);
       
  1161         toBoolean.insert("QScriptValue(0, QString())", false);
       
  1162         toBoolean.insert("QScriptValue(0, QString(\"0\"))", true);
       
  1163         toBoolean.insert("QScriptValue(0, QString(\"123\"))", true);
       
  1164         toBoolean.insert("QScriptValue(0, QString(\"12.3\"))", true);
       
  1165         toBoolean.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", false);
       
  1166         toBoolean.insert("QScriptValue(engine, QScriptValue::NullValue)", false);
       
  1167         toBoolean.insert("QScriptValue(engine, true)", true);
       
  1168         toBoolean.insert("QScriptValue(engine, false)", false);
       
  1169         toBoolean.insert("QScriptValue(engine, int(122))", true);
       
  1170         toBoolean.insert("QScriptValue(engine, uint(124))", true);
       
  1171         toBoolean.insert("QScriptValue(engine, 0)", false);
       
  1172         toBoolean.insert("QScriptValue(engine, 0.0)", false);
       
  1173         toBoolean.insert("QScriptValue(engine, 123.0)", true);
       
  1174         toBoolean.insert("QScriptValue(engine, 6.37e-8)", true);
       
  1175         toBoolean.insert("QScriptValue(engine, -6.37e-8)", true);
       
  1176         toBoolean.insert("QScriptValue(engine, 0x43211234)", true);
       
  1177         toBoolean.insert("QScriptValue(engine, 0x10000)", true);
       
  1178         toBoolean.insert("QScriptValue(engine, 0x10001)", true);
       
  1179         toBoolean.insert("QScriptValue(engine, qSNaN())", false);
       
  1180         toBoolean.insert("QScriptValue(engine, qQNaN())", false);
       
  1181         toBoolean.insert("QScriptValue(engine, qInf())", true);
       
  1182         toBoolean.insert("QScriptValue(engine, -qInf())", true);
       
  1183         toBoolean.insert("QScriptValue(engine, \"NaN\")", true);
       
  1184         toBoolean.insert("QScriptValue(engine, \"Infinity\")", true);
       
  1185         toBoolean.insert("QScriptValue(engine, \"-Infinity\")", true);
       
  1186         toBoolean.insert("QScriptValue(engine, \"ciao\")", true);
       
  1187         toBoolean.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", true);
       
  1188         toBoolean.insert("QScriptValue(engine, QString(\"\"))", false);
       
  1189         toBoolean.insert("QScriptValue(engine, QString())", false);
       
  1190         toBoolean.insert("QScriptValue(engine, QString(\"0\"))", true);
       
  1191         toBoolean.insert("QScriptValue(engine, QString(\"123\"))", true);
       
  1192         toBoolean.insert("QScriptValue(engine, QString(\"1.23\"))", true);
       
  1193         toBoolean.insert("engine->evaluate(\"[]\")", true);
       
  1194         toBoolean.insert("engine->evaluate(\"{}\")", false);
       
  1195         toBoolean.insert("engine->evaluate(\"Object.prototype\")", true);
       
  1196         toBoolean.insert("engine->evaluate(\"Date.prototype\")", true);
       
  1197         toBoolean.insert("engine->evaluate(\"Array.prototype\")", true);
       
  1198         toBoolean.insert("engine->evaluate(\"Function.prototype\")", true);
       
  1199         toBoolean.insert("engine->evaluate(\"Error.prototype\")", true);
       
  1200         toBoolean.insert("engine->evaluate(\"Object\")", true);
       
  1201         toBoolean.insert("engine->evaluate(\"Array\")", true);
       
  1202         toBoolean.insert("engine->evaluate(\"Number\")", true);
       
  1203         toBoolean.insert("engine->evaluate(\"Function\")", true);
       
  1204         toBoolean.insert("engine->evaluate(\"(function() { return 1; })\")", true);
       
  1205         toBoolean.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", true);
       
  1206         toBoolean.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", true);
       
  1207         toBoolean.insert("engine->evaluate(\"/foo/\")", true);
       
  1208         toBoolean.insert("engine->evaluate(\"new Object()\")", true);
       
  1209         toBoolean.insert("engine->evaluate(\"new Array()\")", true);
       
  1210         toBoolean.insert("engine->evaluate(\"new Error()\")", true);
       
  1211         toBoolean.insert("engine->nullValue()", false);
       
  1212         toBoolean.insert("engine->undefinedValue()", false);
       
  1213     }
       
  1214     newRow(expr) << toBoolean.value(expr);
       
  1215 }
       
  1216 
       
  1217 void tst_QScriptValue::toBoolean_test(const char*, const QScriptValue& value)
       
  1218 {
       
  1219     QFETCH(bool, expected);
       
  1220     QCOMPARE(value.toBoolean(), expected);
       
  1221 }
       
  1222 
       
  1223 DEFINE_TEST_FUNCTION(toBoolean)
       
  1224 
       
  1225 
       
  1226 void tst_QScriptValue::toInteger_initData()
       
  1227 {
       
  1228     QTest::addColumn<qsreal>("expected");
       
  1229     initScriptValues();
       
  1230 }
       
  1231 
       
  1232 void tst_QScriptValue::toInteger_makeData(const char* expr)
       
  1233 {
       
  1234     static QHash<QString, qsreal> toInteger;
       
  1235     if (toInteger.isEmpty()) {
       
  1236         toInteger.insert("QScriptValue()", 0);
       
  1237         toInteger.insert("QScriptValue(QScriptValue::UndefinedValue)", 0);
       
  1238         toInteger.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  1239         toInteger.insert("QScriptValue(true)", 1);
       
  1240         toInteger.insert("QScriptValue(false)", 0);
       
  1241         toInteger.insert("QScriptValue(int(122))", 122);
       
  1242         toInteger.insert("QScriptValue(uint(124))", 124);
       
  1243         toInteger.insert("QScriptValue(0)", 0);
       
  1244         toInteger.insert("QScriptValue(0.0)", 0);
       
  1245         toInteger.insert("QScriptValue(123.0)", 123);
       
  1246         toInteger.insert("QScriptValue(6.37e-8)", 0);
       
  1247         toInteger.insert("QScriptValue(-6.37e-8)", 0);
       
  1248         toInteger.insert("QScriptValue(0x43211234)", 1126240820);
       
  1249         toInteger.insert("QScriptValue(0x10000)", 65536);
       
  1250         toInteger.insert("QScriptValue(0x10001)", 65537);
       
  1251         toInteger.insert("QScriptValue(qSNaN())", 0);
       
  1252         toInteger.insert("QScriptValue(qQNaN())", 0);
       
  1253         toInteger.insert("QScriptValue(qInf())", qInf());
       
  1254         toInteger.insert("QScriptValue(-qInf())", qInf());
       
  1255         toInteger.insert("QScriptValue(\"NaN\")", 0);
       
  1256         toInteger.insert("QScriptValue(\"Infinity\")", qInf());
       
  1257         toInteger.insert("QScriptValue(\"-Infinity\")", qInf());
       
  1258         toInteger.insert("QScriptValue(\"ciao\")", 0);
       
  1259         toInteger.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0);
       
  1260         toInteger.insert("QScriptValue(QString(\"\"))", 0);
       
  1261         toInteger.insert("QScriptValue(QString())", 0);
       
  1262         toInteger.insert("QScriptValue(QString(\"0\"))", 0);
       
  1263         toInteger.insert("QScriptValue(QString(\"123\"))", 123);
       
  1264         toInteger.insert("QScriptValue(QString(\"12.4\"))", 12);
       
  1265         toInteger.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0);
       
  1266         toInteger.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  1267         toInteger.insert("QScriptValue(0, true)", 1);
       
  1268         toInteger.insert("QScriptValue(0, false)", 0);
       
  1269         toInteger.insert("QScriptValue(0, int(122))", 122);
       
  1270         toInteger.insert("QScriptValue(0, uint(124))", 124);
       
  1271         toInteger.insert("QScriptValue(0, 0)", 0);
       
  1272         toInteger.insert("QScriptValue(0, 0.0)", 0);
       
  1273         toInteger.insert("QScriptValue(0, 123.0)", 123);
       
  1274         toInteger.insert("QScriptValue(0, 6.37e-8)", 0);
       
  1275         toInteger.insert("QScriptValue(0, -6.37e-8)", 0);
       
  1276         toInteger.insert("QScriptValue(0, 0x43211234)", 1126240820);
       
  1277         toInteger.insert("QScriptValue(0, 0x10000)", 65536);
       
  1278         toInteger.insert("QScriptValue(0, 0x10001)", 65537);
       
  1279         toInteger.insert("QScriptValue(0, qSNaN())", 0);
       
  1280         toInteger.insert("QScriptValue(0, qQNaN())", 0);
       
  1281         toInteger.insert("QScriptValue(0, qInf())", qInf());
       
  1282         toInteger.insert("QScriptValue(0, -qInf())", qInf());
       
  1283         toInteger.insert("QScriptValue(0, \"NaN\")", 0);
       
  1284         toInteger.insert("QScriptValue(0, \"Infinity\")", qInf());
       
  1285         toInteger.insert("QScriptValue(0, \"-Infinity\")", qInf());
       
  1286         toInteger.insert("QScriptValue(0, \"ciao\")", 0);
       
  1287         toInteger.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0);
       
  1288         toInteger.insert("QScriptValue(0, QString(\"\"))", 0);
       
  1289         toInteger.insert("QScriptValue(0, QString())", 0);
       
  1290         toInteger.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  1291         toInteger.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  1292         toInteger.insert("QScriptValue(0, QString(\"12.3\"))", 12);
       
  1293         toInteger.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0);
       
  1294         toInteger.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  1295         toInteger.insert("QScriptValue(engine, true)", 1);
       
  1296         toInteger.insert("QScriptValue(engine, false)", 0);
       
  1297         toInteger.insert("QScriptValue(engine, int(122))", 122);
       
  1298         toInteger.insert("QScriptValue(engine, uint(124))", 124);
       
  1299         toInteger.insert("QScriptValue(engine, 0)", 0);
       
  1300         toInteger.insert("QScriptValue(engine, 0.0)", 0);
       
  1301         toInteger.insert("QScriptValue(engine, 123.0)", 123);
       
  1302         toInteger.insert("QScriptValue(engine, 6.37e-8)", 0);
       
  1303         toInteger.insert("QScriptValue(engine, -6.37e-8)", 0);
       
  1304         toInteger.insert("QScriptValue(engine, 0x43211234)", 1126240820);
       
  1305         toInteger.insert("QScriptValue(engine, 0x10000)", 65536);
       
  1306         toInteger.insert("QScriptValue(engine, 0x10001)", 65537);
       
  1307         toInteger.insert("QScriptValue(engine, qSNaN())", 0);
       
  1308         toInteger.insert("QScriptValue(engine, qQNaN())", 0);
       
  1309         toInteger.insert("QScriptValue(engine, qInf())", qInf());
       
  1310         toInteger.insert("QScriptValue(engine, -qInf())", qInf());
       
  1311         toInteger.insert("QScriptValue(engine, \"NaN\")", 0);
       
  1312         toInteger.insert("QScriptValue(engine, \"Infinity\")", qInf());
       
  1313         toInteger.insert("QScriptValue(engine, \"-Infinity\")", qInf());
       
  1314         toInteger.insert("QScriptValue(engine, \"ciao\")", 0);
       
  1315         toInteger.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0);
       
  1316         toInteger.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  1317         toInteger.insert("QScriptValue(engine, QString())", 0);
       
  1318         toInteger.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  1319         toInteger.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  1320         toInteger.insert("QScriptValue(engine, QString(\"1.23\"))", 1);
       
  1321         toInteger.insert("engine->evaluate(\"[]\")", 0);
       
  1322         toInteger.insert("engine->evaluate(\"{}\")", 0);
       
  1323         toInteger.insert("engine->evaluate(\"Object.prototype\")", 0);
       
  1324         toInteger.insert("engine->evaluate(\"Date.prototype\")", 0);
       
  1325         toInteger.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  1326         toInteger.insert("engine->evaluate(\"Function.prototype\")", 0);
       
  1327         toInteger.insert("engine->evaluate(\"Error.prototype\")", 0);
       
  1328         toInteger.insert("engine->evaluate(\"Object\")", 0);
       
  1329         toInteger.insert("engine->evaluate(\"Array\")", 0);
       
  1330         toInteger.insert("engine->evaluate(\"Number\")", 0);
       
  1331         toInteger.insert("engine->evaluate(\"Function\")", 0);
       
  1332         toInteger.insert("engine->evaluate(\"(function() { return 1; })\")", 0);
       
  1333         toInteger.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0);
       
  1334         toInteger.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0);
       
  1335         toInteger.insert("engine->evaluate(\"/foo/\")", 0);
       
  1336         toInteger.insert("engine->evaluate(\"new Object()\")", 0);
       
  1337         toInteger.insert("engine->evaluate(\"new Array()\")", 0);
       
  1338         toInteger.insert("engine->evaluate(\"new Error()\")", 0);
       
  1339         toInteger.insert("engine->nullValue()", 0);
       
  1340         toInteger.insert("engine->undefinedValue()", 0);
       
  1341     }
       
  1342     newRow(expr) << toInteger.value(expr);
       
  1343 }
       
  1344 
       
  1345 void tst_QScriptValue::toInteger_test(const char*, const QScriptValue& value)
       
  1346 {
       
  1347     QFETCH(qsreal, expected);
       
  1348     if (qIsInf(expected)) {
       
  1349         QVERIFY(qIsInf(value.toInteger()));
       
  1350         return;
       
  1351     }
       
  1352     QCOMPARE(value.toInteger(), expected);
       
  1353 }
       
  1354 
       
  1355 DEFINE_TEST_FUNCTION(toInteger)
       
  1356 
       
  1357 
       
  1358 void tst_QScriptValue::toInt32_initData()
       
  1359 {
       
  1360     QTest::addColumn<qint32>("expected");
       
  1361     initScriptValues();
       
  1362 }
       
  1363 
       
  1364 void tst_QScriptValue::toInt32_makeData(const char* expr)
       
  1365 {
       
  1366     static QHash<QString, qint32> toInt32;
       
  1367     if (toInt32.isEmpty()) {
       
  1368         toInt32.insert("QScriptValue()", 0);
       
  1369         toInt32.insert("QScriptValue(QScriptValue::UndefinedValue)", 0);
       
  1370         toInt32.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  1371         toInt32.insert("QScriptValue(true)", 1);
       
  1372         toInt32.insert("QScriptValue(false)", 0);
       
  1373         toInt32.insert("QScriptValue(int(122))", 122);
       
  1374         toInt32.insert("QScriptValue(uint(124))", 124);
       
  1375         toInt32.insert("QScriptValue(0)", 0);
       
  1376         toInt32.insert("QScriptValue(0.0)", 0);
       
  1377         toInt32.insert("QScriptValue(123.0)", 123);
       
  1378         toInt32.insert("QScriptValue(6.37e-8)", 0);
       
  1379         toInt32.insert("QScriptValue(-6.37e-8)", 0);
       
  1380         toInt32.insert("QScriptValue(0x43211234)", 1126240820);
       
  1381         toInt32.insert("QScriptValue(0x10000)", 65536);
       
  1382         toInt32.insert("QScriptValue(0x10001)", 65537);
       
  1383         toInt32.insert("QScriptValue(qSNaN())", 0);
       
  1384         toInt32.insert("QScriptValue(qQNaN())", 0);
       
  1385         toInt32.insert("QScriptValue(qInf())", 0);
       
  1386         toInt32.insert("QScriptValue(-qInf())", 0);
       
  1387         toInt32.insert("QScriptValue(\"NaN\")", 0);
       
  1388         toInt32.insert("QScriptValue(\"Infinity\")", 0);
       
  1389         toInt32.insert("QScriptValue(\"-Infinity\")", 0);
       
  1390         toInt32.insert("QScriptValue(\"ciao\")", 0);
       
  1391         toInt32.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0);
       
  1392         toInt32.insert("QScriptValue(QString(\"\"))", 0);
       
  1393         toInt32.insert("QScriptValue(QString())", 0);
       
  1394         toInt32.insert("QScriptValue(QString(\"0\"))", 0);
       
  1395         toInt32.insert("QScriptValue(QString(\"123\"))", 123);
       
  1396         toInt32.insert("QScriptValue(QString(\"12.4\"))", 12);
       
  1397         toInt32.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0);
       
  1398         toInt32.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  1399         toInt32.insert("QScriptValue(0, true)", 1);
       
  1400         toInt32.insert("QScriptValue(0, false)", 0);
       
  1401         toInt32.insert("QScriptValue(0, int(122))", 122);
       
  1402         toInt32.insert("QScriptValue(0, uint(124))", 124);
       
  1403         toInt32.insert("QScriptValue(0, 0)", 0);
       
  1404         toInt32.insert("QScriptValue(0, 0.0)", 0);
       
  1405         toInt32.insert("QScriptValue(0, 123.0)", 123);
       
  1406         toInt32.insert("QScriptValue(0, 6.37e-8)", 0);
       
  1407         toInt32.insert("QScriptValue(0, -6.37e-8)", 0);
       
  1408         toInt32.insert("QScriptValue(0, 0x43211234)", 1126240820);
       
  1409         toInt32.insert("QScriptValue(0, 0x10000)", 65536);
       
  1410         toInt32.insert("QScriptValue(0, 0x10001)", 65537);
       
  1411         toInt32.insert("QScriptValue(0, qSNaN())", 0);
       
  1412         toInt32.insert("QScriptValue(0, qQNaN())", 0);
       
  1413         toInt32.insert("QScriptValue(0, qInf())", 0);
       
  1414         toInt32.insert("QScriptValue(0, -qInf())", 0);
       
  1415         toInt32.insert("QScriptValue(0, \"NaN\")", 0);
       
  1416         toInt32.insert("QScriptValue(0, \"Infinity\")", 0);
       
  1417         toInt32.insert("QScriptValue(0, \"-Infinity\")", 0);
       
  1418         toInt32.insert("QScriptValue(0, \"ciao\")", 0);
       
  1419         toInt32.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0);
       
  1420         toInt32.insert("QScriptValue(0, QString(\"\"))", 0);
       
  1421         toInt32.insert("QScriptValue(0, QString())", 0);
       
  1422         toInt32.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  1423         toInt32.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  1424         toInt32.insert("QScriptValue(0, QString(\"12.3\"))", 12);
       
  1425         toInt32.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0);
       
  1426         toInt32.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  1427         toInt32.insert("QScriptValue(engine, true)", 1);
       
  1428         toInt32.insert("QScriptValue(engine, false)", 0);
       
  1429         toInt32.insert("QScriptValue(engine, int(122))", 122);
       
  1430         toInt32.insert("QScriptValue(engine, uint(124))", 124);
       
  1431         toInt32.insert("QScriptValue(engine, 0)", 0);
       
  1432         toInt32.insert("QScriptValue(engine, 0.0)", 0);
       
  1433         toInt32.insert("QScriptValue(engine, 123.0)", 123);
       
  1434         toInt32.insert("QScriptValue(engine, 6.37e-8)", 0);
       
  1435         toInt32.insert("QScriptValue(engine, -6.37e-8)", 0);
       
  1436         toInt32.insert("QScriptValue(engine, 0x43211234)", 1126240820);
       
  1437         toInt32.insert("QScriptValue(engine, 0x10000)", 65536);
       
  1438         toInt32.insert("QScriptValue(engine, 0x10001)", 65537);
       
  1439         toInt32.insert("QScriptValue(engine, qSNaN())", 0);
       
  1440         toInt32.insert("QScriptValue(engine, qQNaN())", 0);
       
  1441         toInt32.insert("QScriptValue(engine, qInf())", 0);
       
  1442         toInt32.insert("QScriptValue(engine, -qInf())", 0);
       
  1443         toInt32.insert("QScriptValue(engine, \"NaN\")", 0);
       
  1444         toInt32.insert("QScriptValue(engine, \"Infinity\")", 0);
       
  1445         toInt32.insert("QScriptValue(engine, \"-Infinity\")", 0);
       
  1446         toInt32.insert("QScriptValue(engine, \"ciao\")", 0);
       
  1447         toInt32.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0);
       
  1448         toInt32.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  1449         toInt32.insert("QScriptValue(engine, QString())", 0);
       
  1450         toInt32.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  1451         toInt32.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  1452         toInt32.insert("QScriptValue(engine, QString(\"1.23\"))", 1);
       
  1453         toInt32.insert("engine->evaluate(\"[]\")", 0);
       
  1454         toInt32.insert("engine->evaluate(\"{}\")", 0);
       
  1455         toInt32.insert("engine->evaluate(\"Object.prototype\")", 0);
       
  1456         toInt32.insert("engine->evaluate(\"Date.prototype\")", 0);
       
  1457         toInt32.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  1458         toInt32.insert("engine->evaluate(\"Function.prototype\")", 0);
       
  1459         toInt32.insert("engine->evaluate(\"Error.prototype\")", 0);
       
  1460         toInt32.insert("engine->evaluate(\"Object\")", 0);
       
  1461         toInt32.insert("engine->evaluate(\"Array\")", 0);
       
  1462         toInt32.insert("engine->evaluate(\"Number\")", 0);
       
  1463         toInt32.insert("engine->evaluate(\"Function\")", 0);
       
  1464         toInt32.insert("engine->evaluate(\"(function() { return 1; })\")", 0);
       
  1465         toInt32.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0);
       
  1466         toInt32.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0);
       
  1467         toInt32.insert("engine->evaluate(\"/foo/\")", 0);
       
  1468         toInt32.insert("engine->evaluate(\"new Object()\")", 0);
       
  1469         toInt32.insert("engine->evaluate(\"new Array()\")", 0);
       
  1470         toInt32.insert("engine->evaluate(\"new Error()\")", 0);
       
  1471         toInt32.insert("engine->nullValue()", 0);
       
  1472         toInt32.insert("engine->undefinedValue()", 0);
       
  1473     }
       
  1474     newRow(expr) << toInt32.value(expr);
       
  1475 }
       
  1476 
       
  1477 void tst_QScriptValue::toInt32_test(const char*, const QScriptValue& value)
       
  1478 {
       
  1479     QFETCH(qint32, expected);
       
  1480     QCOMPARE(value.toInt32(), expected);
       
  1481 }
       
  1482 
       
  1483 DEFINE_TEST_FUNCTION(toInt32)
       
  1484 
       
  1485 
       
  1486 void tst_QScriptValue::toUInt32_initData()
       
  1487 {
       
  1488     QTest::addColumn<quint32>("expected");
       
  1489     initScriptValues();
       
  1490 }
       
  1491 
       
  1492 void tst_QScriptValue::toUInt32_makeData(const char* expr)
       
  1493 {
       
  1494     static QHash<QString, quint32> toUInt32;
       
  1495     if (toUInt32.isEmpty()) {
       
  1496         toUInt32.insert("QScriptValue()", 0);
       
  1497         toUInt32.insert("QScriptValue(QScriptValue::UndefinedValue)", 0);
       
  1498         toUInt32.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  1499         toUInt32.insert("QScriptValue(true)", 1);
       
  1500         toUInt32.insert("QScriptValue(false)", 0);
       
  1501         toUInt32.insert("QScriptValue(int(122))", 122);
       
  1502         toUInt32.insert("QScriptValue(uint(124))", 124);
       
  1503         toUInt32.insert("QScriptValue(0)", 0);
       
  1504         toUInt32.insert("QScriptValue(0.0)", 0);
       
  1505         toUInt32.insert("QScriptValue(123.0)", 123);
       
  1506         toUInt32.insert("QScriptValue(6.37e-8)", 0);
       
  1507         toUInt32.insert("QScriptValue(-6.37e-8)", 0);
       
  1508         toUInt32.insert("QScriptValue(0x43211234)", 1126240820);
       
  1509         toUInt32.insert("QScriptValue(0x10000)", 65536);
       
  1510         toUInt32.insert("QScriptValue(0x10001)", 65537);
       
  1511         toUInt32.insert("QScriptValue(qSNaN())", 0);
       
  1512         toUInt32.insert("QScriptValue(qQNaN())", 0);
       
  1513         toUInt32.insert("QScriptValue(qInf())", 0);
       
  1514         toUInt32.insert("QScriptValue(-qInf())", 0);
       
  1515         toUInt32.insert("QScriptValue(\"NaN\")", 0);
       
  1516         toUInt32.insert("QScriptValue(\"Infinity\")", 0);
       
  1517         toUInt32.insert("QScriptValue(\"-Infinity\")", 0);
       
  1518         toUInt32.insert("QScriptValue(\"ciao\")", 0);
       
  1519         toUInt32.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0);
       
  1520         toUInt32.insert("QScriptValue(QString(\"\"))", 0);
       
  1521         toUInt32.insert("QScriptValue(QString())", 0);
       
  1522         toUInt32.insert("QScriptValue(QString(\"0\"))", 0);
       
  1523         toUInt32.insert("QScriptValue(QString(\"123\"))", 123);
       
  1524         toUInt32.insert("QScriptValue(QString(\"12.4\"))", 12);
       
  1525         toUInt32.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0);
       
  1526         toUInt32.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  1527         toUInt32.insert("QScriptValue(0, true)", 1);
       
  1528         toUInt32.insert("QScriptValue(0, false)", 0);
       
  1529         toUInt32.insert("QScriptValue(0, int(122))", 122);
       
  1530         toUInt32.insert("QScriptValue(0, uint(124))", 124);
       
  1531         toUInt32.insert("QScriptValue(0, 0)", 0);
       
  1532         toUInt32.insert("QScriptValue(0, 0.0)", 0);
       
  1533         toUInt32.insert("QScriptValue(0, 123.0)", 123);
       
  1534         toUInt32.insert("QScriptValue(0, 6.37e-8)", 0);
       
  1535         toUInt32.insert("QScriptValue(0, -6.37e-8)", 0);
       
  1536         toUInt32.insert("QScriptValue(0, 0x43211234)", 1126240820);
       
  1537         toUInt32.insert("QScriptValue(0, 0x10000)", 65536);
       
  1538         toUInt32.insert("QScriptValue(0, 0x10001)", 65537);
       
  1539         toUInt32.insert("QScriptValue(0, qSNaN())", 0);
       
  1540         toUInt32.insert("QScriptValue(0, qQNaN())", 0);
       
  1541         toUInt32.insert("QScriptValue(0, qInf())", 0);
       
  1542         toUInt32.insert("QScriptValue(0, -qInf())", 0);
       
  1543         toUInt32.insert("QScriptValue(0, \"NaN\")", 0);
       
  1544         toUInt32.insert("QScriptValue(0, \"Infinity\")", 0);
       
  1545         toUInt32.insert("QScriptValue(0, \"-Infinity\")", 0);
       
  1546         toUInt32.insert("QScriptValue(0, \"ciao\")", 0);
       
  1547         toUInt32.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0);
       
  1548         toUInt32.insert("QScriptValue(0, QString(\"\"))", 0);
       
  1549         toUInt32.insert("QScriptValue(0, QString())", 0);
       
  1550         toUInt32.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  1551         toUInt32.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  1552         toUInt32.insert("QScriptValue(0, QString(\"12.3\"))", 12);
       
  1553         toUInt32.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0);
       
  1554         toUInt32.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  1555         toUInt32.insert("QScriptValue(engine, true)", 1);
       
  1556         toUInt32.insert("QScriptValue(engine, false)", 0);
       
  1557         toUInt32.insert("QScriptValue(engine, int(122))", 122);
       
  1558         toUInt32.insert("QScriptValue(engine, uint(124))", 124);
       
  1559         toUInt32.insert("QScriptValue(engine, 0)", 0);
       
  1560         toUInt32.insert("QScriptValue(engine, 0.0)", 0);
       
  1561         toUInt32.insert("QScriptValue(engine, 123.0)", 123);
       
  1562         toUInt32.insert("QScriptValue(engine, 6.37e-8)", 0);
       
  1563         toUInt32.insert("QScriptValue(engine, -6.37e-8)", 0);
       
  1564         toUInt32.insert("QScriptValue(engine, 0x43211234)", 1126240820);
       
  1565         toUInt32.insert("QScriptValue(engine, 0x10000)", 65536);
       
  1566         toUInt32.insert("QScriptValue(engine, 0x10001)", 65537);
       
  1567         toUInt32.insert("QScriptValue(engine, qSNaN())", 0);
       
  1568         toUInt32.insert("QScriptValue(engine, qQNaN())", 0);
       
  1569         toUInt32.insert("QScriptValue(engine, qInf())", 0);
       
  1570         toUInt32.insert("QScriptValue(engine, -qInf())", 0);
       
  1571         toUInt32.insert("QScriptValue(engine, \"NaN\")", 0);
       
  1572         toUInt32.insert("QScriptValue(engine, \"Infinity\")", 0);
       
  1573         toUInt32.insert("QScriptValue(engine, \"-Infinity\")", 0);
       
  1574         toUInt32.insert("QScriptValue(engine, \"ciao\")", 0);
       
  1575         toUInt32.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0);
       
  1576         toUInt32.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  1577         toUInt32.insert("QScriptValue(engine, QString())", 0);
       
  1578         toUInt32.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  1579         toUInt32.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  1580         toUInt32.insert("QScriptValue(engine, QString(\"1.23\"))", 1);
       
  1581         toUInt32.insert("engine->evaluate(\"[]\")", 0);
       
  1582         toUInt32.insert("engine->evaluate(\"{}\")", 0);
       
  1583         toUInt32.insert("engine->evaluate(\"Object.prototype\")", 0);
       
  1584         toUInt32.insert("engine->evaluate(\"Date.prototype\")", 0);
       
  1585         toUInt32.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  1586         toUInt32.insert("engine->evaluate(\"Function.prototype\")", 0);
       
  1587         toUInt32.insert("engine->evaluate(\"Error.prototype\")", 0);
       
  1588         toUInt32.insert("engine->evaluate(\"Object\")", 0);
       
  1589         toUInt32.insert("engine->evaluate(\"Array\")", 0);
       
  1590         toUInt32.insert("engine->evaluate(\"Number\")", 0);
       
  1591         toUInt32.insert("engine->evaluate(\"Function\")", 0);
       
  1592         toUInt32.insert("engine->evaluate(\"(function() { return 1; })\")", 0);
       
  1593         toUInt32.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0);
       
  1594         toUInt32.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0);
       
  1595         toUInt32.insert("engine->evaluate(\"/foo/\")", 0);
       
  1596         toUInt32.insert("engine->evaluate(\"new Object()\")", 0);
       
  1597         toUInt32.insert("engine->evaluate(\"new Array()\")", 0);
       
  1598         toUInt32.insert("engine->evaluate(\"new Error()\")", 0);
       
  1599         toUInt32.insert("engine->nullValue()", 0);
       
  1600         toUInt32.insert("engine->undefinedValue()", 0);
       
  1601     }
       
  1602     newRow(expr) << toUInt32.value(expr);
       
  1603 }
       
  1604 
       
  1605 void tst_QScriptValue::toUInt32_test(const char*, const QScriptValue& value)
       
  1606 {
       
  1607     QFETCH(quint32, expected);
       
  1608     QCOMPARE(value.toUInt32(), expected);
       
  1609 }
       
  1610 
       
  1611 DEFINE_TEST_FUNCTION(toUInt32)
       
  1612 
       
  1613 
       
  1614 void tst_QScriptValue::toUInt16_initData()
       
  1615 {
       
  1616     QTest::addColumn<quint16>("expected");
       
  1617     initScriptValues();
       
  1618 }
       
  1619 
       
  1620 void tst_QScriptValue::toUInt16_makeData(const char* expr)
       
  1621 {
       
  1622     static QHash<QString, quint16> toUInt16;
       
  1623     if (toUInt16.isEmpty()) {
       
  1624         toUInt16.insert("QScriptValue()", 0);
       
  1625         toUInt16.insert("QScriptValue(QScriptValue::UndefinedValue)", 0);
       
  1626         toUInt16.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  1627         toUInt16.insert("QScriptValue(true)", 1);
       
  1628         toUInt16.insert("QScriptValue(false)", 0);
       
  1629         toUInt16.insert("QScriptValue(int(122))", 122);
       
  1630         toUInt16.insert("QScriptValue(uint(124))", 124);
       
  1631         toUInt16.insert("QScriptValue(0)", 0);
       
  1632         toUInt16.insert("QScriptValue(0.0)", 0);
       
  1633         toUInt16.insert("QScriptValue(123.0)", 123);
       
  1634         toUInt16.insert("QScriptValue(6.37e-8)", 0);
       
  1635         toUInt16.insert("QScriptValue(-6.37e-8)", 0);
       
  1636         toUInt16.insert("QScriptValue(0x43211234)", 4660);
       
  1637         toUInt16.insert("QScriptValue(0x10000)", 0);
       
  1638         toUInt16.insert("QScriptValue(0x10001)", 1);
       
  1639         toUInt16.insert("QScriptValue(qSNaN())", 0);
       
  1640         toUInt16.insert("QScriptValue(qQNaN())", 0);
       
  1641         toUInt16.insert("QScriptValue(qInf())", 0);
       
  1642         toUInt16.insert("QScriptValue(-qInf())", 0);
       
  1643         toUInt16.insert("QScriptValue(\"NaN\")", 0);
       
  1644         toUInt16.insert("QScriptValue(\"Infinity\")", 0);
       
  1645         toUInt16.insert("QScriptValue(\"-Infinity\")", 0);
       
  1646         toUInt16.insert("QScriptValue(\"ciao\")", 0);
       
  1647         toUInt16.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0);
       
  1648         toUInt16.insert("QScriptValue(QString(\"\"))", 0);
       
  1649         toUInt16.insert("QScriptValue(QString())", 0);
       
  1650         toUInt16.insert("QScriptValue(QString(\"0\"))", 0);
       
  1651         toUInt16.insert("QScriptValue(QString(\"123\"))", 123);
       
  1652         toUInt16.insert("QScriptValue(QString(\"12.4\"))", 12);
       
  1653         toUInt16.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0);
       
  1654         toUInt16.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  1655         toUInt16.insert("QScriptValue(0, true)", 1);
       
  1656         toUInt16.insert("QScriptValue(0, false)", 0);
       
  1657         toUInt16.insert("QScriptValue(0, int(122))", 122);
       
  1658         toUInt16.insert("QScriptValue(0, uint(124))", 124);
       
  1659         toUInt16.insert("QScriptValue(0, 0)", 0);
       
  1660         toUInt16.insert("QScriptValue(0, 0.0)", 0);
       
  1661         toUInt16.insert("QScriptValue(0, 123.0)", 123);
       
  1662         toUInt16.insert("QScriptValue(0, 6.37e-8)", 0);
       
  1663         toUInt16.insert("QScriptValue(0, -6.37e-8)", 0);
       
  1664         toUInt16.insert("QScriptValue(0, 0x43211234)", 4660);
       
  1665         toUInt16.insert("QScriptValue(0, 0x10000)", 0);
       
  1666         toUInt16.insert("QScriptValue(0, 0x10001)", 1);
       
  1667         toUInt16.insert("QScriptValue(0, qSNaN())", 0);
       
  1668         toUInt16.insert("QScriptValue(0, qQNaN())", 0);
       
  1669         toUInt16.insert("QScriptValue(0, qInf())", 0);
       
  1670         toUInt16.insert("QScriptValue(0, -qInf())", 0);
       
  1671         toUInt16.insert("QScriptValue(0, \"NaN\")", 0);
       
  1672         toUInt16.insert("QScriptValue(0, \"Infinity\")", 0);
       
  1673         toUInt16.insert("QScriptValue(0, \"-Infinity\")", 0);
       
  1674         toUInt16.insert("QScriptValue(0, \"ciao\")", 0);
       
  1675         toUInt16.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0);
       
  1676         toUInt16.insert("QScriptValue(0, QString(\"\"))", 0);
       
  1677         toUInt16.insert("QScriptValue(0, QString())", 0);
       
  1678         toUInt16.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  1679         toUInt16.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  1680         toUInt16.insert("QScriptValue(0, QString(\"12.3\"))", 12);
       
  1681         toUInt16.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0);
       
  1682         toUInt16.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  1683         toUInt16.insert("QScriptValue(engine, true)", 1);
       
  1684         toUInt16.insert("QScriptValue(engine, false)", 0);
       
  1685         toUInt16.insert("QScriptValue(engine, int(122))", 122);
       
  1686         toUInt16.insert("QScriptValue(engine, uint(124))", 124);
       
  1687         toUInt16.insert("QScriptValue(engine, 0)", 0);
       
  1688         toUInt16.insert("QScriptValue(engine, 0.0)", 0);
       
  1689         toUInt16.insert("QScriptValue(engine, 123.0)", 123);
       
  1690         toUInt16.insert("QScriptValue(engine, 6.37e-8)", 0);
       
  1691         toUInt16.insert("QScriptValue(engine, -6.37e-8)", 0);
       
  1692         toUInt16.insert("QScriptValue(engine, 0x43211234)", 4660);
       
  1693         toUInt16.insert("QScriptValue(engine, 0x10000)", 0);
       
  1694         toUInt16.insert("QScriptValue(engine, 0x10001)", 1);
       
  1695         toUInt16.insert("QScriptValue(engine, qSNaN())", 0);
       
  1696         toUInt16.insert("QScriptValue(engine, qQNaN())", 0);
       
  1697         toUInt16.insert("QScriptValue(engine, qInf())", 0);
       
  1698         toUInt16.insert("QScriptValue(engine, -qInf())", 0);
       
  1699         toUInt16.insert("QScriptValue(engine, \"NaN\")", 0);
       
  1700         toUInt16.insert("QScriptValue(engine, \"Infinity\")", 0);
       
  1701         toUInt16.insert("QScriptValue(engine, \"-Infinity\")", 0);
       
  1702         toUInt16.insert("QScriptValue(engine, \"ciao\")", 0);
       
  1703         toUInt16.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0);
       
  1704         toUInt16.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  1705         toUInt16.insert("QScriptValue(engine, QString())", 0);
       
  1706         toUInt16.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  1707         toUInt16.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  1708         toUInt16.insert("QScriptValue(engine, QString(\"1.23\"))", 1);
       
  1709         toUInt16.insert("engine->evaluate(\"[]\")", 0);
       
  1710         toUInt16.insert("engine->evaluate(\"{}\")", 0);
       
  1711         toUInt16.insert("engine->evaluate(\"Object.prototype\")", 0);
       
  1712         toUInt16.insert("engine->evaluate(\"Date.prototype\")", 0);
       
  1713         toUInt16.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  1714         toUInt16.insert("engine->evaluate(\"Function.prototype\")", 0);
       
  1715         toUInt16.insert("engine->evaluate(\"Error.prototype\")", 0);
       
  1716         toUInt16.insert("engine->evaluate(\"Object\")", 0);
       
  1717         toUInt16.insert("engine->evaluate(\"Array\")", 0);
       
  1718         toUInt16.insert("engine->evaluate(\"Number\")", 0);
       
  1719         toUInt16.insert("engine->evaluate(\"Function\")", 0);
       
  1720         toUInt16.insert("engine->evaluate(\"(function() { return 1; })\")", 0);
       
  1721         toUInt16.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0);
       
  1722         toUInt16.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0);
       
  1723         toUInt16.insert("engine->evaluate(\"/foo/\")", 0);
       
  1724         toUInt16.insert("engine->evaluate(\"new Object()\")", 0);
       
  1725         toUInt16.insert("engine->evaluate(\"new Array()\")", 0);
       
  1726         toUInt16.insert("engine->evaluate(\"new Error()\")", 0);
       
  1727         toUInt16.insert("engine->nullValue()", 0);
       
  1728         toUInt16.insert("engine->undefinedValue()", 0);
       
  1729     }
       
  1730     newRow(expr) << toUInt16.value(expr);
       
  1731 }
       
  1732 
       
  1733 void tst_QScriptValue::toUInt16_test(const char*, const QScriptValue& value)
       
  1734 {
       
  1735     QFETCH(quint16, expected);
       
  1736     QCOMPARE(value.toUInt16(), expected);
       
  1737 }
       
  1738 
       
  1739 DEFINE_TEST_FUNCTION(toUInt16)
       
  1740 
       
  1741 
       
  1742 void tst_QScriptValue::equals_initData()
       
  1743 {
       
  1744     QTest::addColumn<QScriptValue>("other");
       
  1745     QTest::addColumn<bool>("expected");
       
  1746     initScriptValues();
       
  1747 }
       
  1748 
       
  1749 void tst_QScriptValue::equals_makeData(const char *expr)
       
  1750 {
       
  1751     static QSet<QString> equals;
       
  1752     if (equals.isEmpty()) {
       
  1753         equals.insert("QScriptValue() <=> QScriptValue()");
       
  1754         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  1755         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  1756         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  1757         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  1758         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  1759         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  1760         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")");
       
  1761         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> engine->nullValue()");
       
  1762         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> engine->undefinedValue()");
       
  1763         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  1764         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  1765         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  1766         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  1767         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  1768         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  1769         equals.insert("QScriptValue(QScriptValue::NullValue) <=> engine->evaluate(\"{}\")");
       
  1770         equals.insert("QScriptValue(QScriptValue::NullValue) <=> engine->nullValue()");
       
  1771         equals.insert("QScriptValue(QScriptValue::NullValue) <=> engine->undefinedValue()");
       
  1772         equals.insert("QScriptValue(true) <=> QScriptValue(true)");
       
  1773         equals.insert("QScriptValue(true) <=> QScriptValue(0, true)");
       
  1774         equals.insert("QScriptValue(true) <=> QScriptValue(engine, true)");
       
  1775         equals.insert("QScriptValue(false) <=> QScriptValue(false)");
       
  1776         equals.insert("QScriptValue(false) <=> QScriptValue(0)");
       
  1777         equals.insert("QScriptValue(false) <=> QScriptValue(0.0)");
       
  1778         equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"\"))");
       
  1779         equals.insert("QScriptValue(false) <=> QScriptValue(QString())");
       
  1780         equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"0\"))");
       
  1781         equals.insert("QScriptValue(false) <=> QScriptValue(0, false)");
       
  1782         equals.insert("QScriptValue(false) <=> QScriptValue(0, 0)");
       
  1783         equals.insert("QScriptValue(false) <=> QScriptValue(0, 0.0)");
       
  1784         equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"\"))");
       
  1785         equals.insert("QScriptValue(false) <=> QScriptValue(0, QString())");
       
  1786         equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"0\"))");
       
  1787         equals.insert("QScriptValue(false) <=> QScriptValue(engine, false)");
       
  1788         equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0)");
       
  1789         equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0.0)");
       
  1790         equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"\"))");
       
  1791         equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString())");
       
  1792         equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"0\"))");
       
  1793         equals.insert("QScriptValue(false) <=> engine->evaluate(\"[]\")");
       
  1794         equals.insert("QScriptValue(false) <=> engine->evaluate(\"Array.prototype\")");
       
  1795         equals.insert("QScriptValue(false) <=> engine->evaluate(\"new Array()\")");
       
  1796         equals.insert("QScriptValue(int(122)) <=> QScriptValue(int(122))");
       
  1797         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, int(122))");
       
  1798         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, int(122))");
       
  1799         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(uint(124))");
       
  1800         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, uint(124))");
       
  1801         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, uint(124))");
       
  1802         equals.insert("QScriptValue(0) <=> QScriptValue(false)");
       
  1803         equals.insert("QScriptValue(0) <=> QScriptValue(0)");
       
  1804         equals.insert("QScriptValue(0) <=> QScriptValue(0.0)");
       
  1805         equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"\"))");
       
  1806         equals.insert("QScriptValue(0) <=> QScriptValue(QString())");
       
  1807         equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"0\"))");
       
  1808         equals.insert("QScriptValue(0) <=> QScriptValue(0, false)");
       
  1809         equals.insert("QScriptValue(0) <=> QScriptValue(0, 0)");
       
  1810         equals.insert("QScriptValue(0) <=> QScriptValue(0, 0.0)");
       
  1811         equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"\"))");
       
  1812         equals.insert("QScriptValue(0) <=> QScriptValue(0, QString())");
       
  1813         equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"0\"))");
       
  1814         equals.insert("QScriptValue(0) <=> QScriptValue(engine, false)");
       
  1815         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0)");
       
  1816         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0.0)");
       
  1817         equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"\"))");
       
  1818         equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString())");
       
  1819         equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"0\"))");
       
  1820         equals.insert("QScriptValue(0) <=> engine->evaluate(\"[]\")");
       
  1821         equals.insert("QScriptValue(0) <=> engine->evaluate(\"Array.prototype\")");
       
  1822         equals.insert("QScriptValue(0) <=> engine->evaluate(\"new Array()\")");
       
  1823         equals.insert("QScriptValue(0.0) <=> QScriptValue(false)");
       
  1824         equals.insert("QScriptValue(0.0) <=> QScriptValue(0)");
       
  1825         equals.insert("QScriptValue(0.0) <=> QScriptValue(0.0)");
       
  1826         equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"\"))");
       
  1827         equals.insert("QScriptValue(0.0) <=> QScriptValue(QString())");
       
  1828         equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"0\"))");
       
  1829         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, false)");
       
  1830         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0)");
       
  1831         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0.0)");
       
  1832         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"\"))");
       
  1833         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString())");
       
  1834         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"0\"))");
       
  1835         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, false)");
       
  1836         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0)");
       
  1837         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0.0)");
       
  1838         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"\"))");
       
  1839         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString())");
       
  1840         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"0\"))");
       
  1841         equals.insert("QScriptValue(0.0) <=> engine->evaluate(\"[]\")");
       
  1842         equals.insert("QScriptValue(0.0) <=> engine->evaluate(\"Array.prototype\")");
       
  1843         equals.insert("QScriptValue(0.0) <=> engine->evaluate(\"new Array()\")");
       
  1844         equals.insert("QScriptValue(123.0) <=> QScriptValue(123.0)");
       
  1845         equals.insert("QScriptValue(123.0) <=> QScriptValue(QString(\"123\"))");
       
  1846         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 123.0)");
       
  1847         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, QString(\"123\"))");
       
  1848         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 123.0)");
       
  1849         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, QString(\"123\"))");
       
  1850         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(6.37e-8)");
       
  1851         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  1852         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  1853         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(-6.37e-8)");
       
  1854         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, -6.37e-8)");
       
  1855         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, -6.37e-8)");
       
  1856         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0x43211234)");
       
  1857         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, 0x43211234)");
       
  1858         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, 0x43211234)");
       
  1859         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x10000)");
       
  1860         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x10000)");
       
  1861         equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x10000)");
       
  1862         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0x10001)");
       
  1863         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, 0x10001)");
       
  1864         equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, 0x10001)");
       
  1865         equals.insert("QScriptValue(qInf()) <=> QScriptValue(qInf())");
       
  1866         equals.insert("QScriptValue(qInf()) <=> QScriptValue(\"Infinity\")");
       
  1867         equals.insert("QScriptValue(qInf()) <=> QScriptValue(0, qInf())");
       
  1868         equals.insert("QScriptValue(qInf()) <=> QScriptValue(0, \"Infinity\")");
       
  1869         equals.insert("QScriptValue(qInf()) <=> QScriptValue(engine, qInf())");
       
  1870         equals.insert("QScriptValue(qInf()) <=> QScriptValue(engine, \"Infinity\")");
       
  1871         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(-qInf())");
       
  1872         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(\"-Infinity\")");
       
  1873         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, -qInf())");
       
  1874         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, \"-Infinity\")");
       
  1875         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, -qInf())");
       
  1876         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, \"-Infinity\")");
       
  1877         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(\"NaN\")");
       
  1878         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, \"NaN\")");
       
  1879         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, \"NaN\")");
       
  1880         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(qInf())");
       
  1881         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"Infinity\")");
       
  1882         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, qInf())");
       
  1883         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  1884         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, qInf())");
       
  1885         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  1886         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(-qInf())");
       
  1887         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"-Infinity\")");
       
  1888         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, -qInf())");
       
  1889         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"-Infinity\")");
       
  1890         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, -qInf())");
       
  1891         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")");
       
  1892         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(\"ciao\")");
       
  1893         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  1894         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, \"ciao\")");
       
  1895         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  1896         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, \"ciao\")");
       
  1897         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  1898         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")");
       
  1899         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  1900         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")");
       
  1901         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  1902         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")");
       
  1903         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  1904         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(false)");
       
  1905         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0)");
       
  1906         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0.0)");
       
  1907         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"\"))");
       
  1908         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString())");
       
  1909         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, false)");
       
  1910         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0)");
       
  1911         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0.0)");
       
  1912         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"\"))");
       
  1913         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString())");
       
  1914         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, false)");
       
  1915         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0)");
       
  1916         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0.0)");
       
  1917         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"\"))");
       
  1918         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString())");
       
  1919         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"[]\")");
       
  1920         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Array.prototype\")");
       
  1921         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"new Array()\")");
       
  1922         equals.insert("QScriptValue(QString()) <=> QScriptValue(false)");
       
  1923         equals.insert("QScriptValue(QString()) <=> QScriptValue(0)");
       
  1924         equals.insert("QScriptValue(QString()) <=> QScriptValue(0.0)");
       
  1925         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"\"))");
       
  1926         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString())");
       
  1927         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, false)");
       
  1928         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0)");
       
  1929         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0.0)");
       
  1930         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"\"))");
       
  1931         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString())");
       
  1932         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, false)");
       
  1933         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0)");
       
  1934         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0.0)");
       
  1935         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"\"))");
       
  1936         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString())");
       
  1937         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"[]\")");
       
  1938         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Array.prototype\")");
       
  1939         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"new Array()\")");
       
  1940         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(false)");
       
  1941         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0)");
       
  1942         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0.0)");
       
  1943         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"0\"))");
       
  1944         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, false)");
       
  1945         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0)");
       
  1946         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0.0)");
       
  1947         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))");
       
  1948         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, false)");
       
  1949         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0)");
       
  1950         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0.0)");
       
  1951         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  1952         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(123.0)");
       
  1953         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(QString(\"123\"))");
       
  1954         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 123.0)");
       
  1955         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))");
       
  1956         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 123.0)");
       
  1957         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  1958         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString(\"12.4\"))");
       
  1959         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  1960         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  1961         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  1962         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  1963         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  1964         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  1965         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")");
       
  1966         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> engine->nullValue()");
       
  1967         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> engine->undefinedValue()");
       
  1968         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  1969         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  1970         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  1971         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  1972         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  1973         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  1974         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> engine->evaluate(\"{}\")");
       
  1975         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> engine->nullValue()");
       
  1976         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> engine->undefinedValue()");
       
  1977         equals.insert("QScriptValue(0, true) <=> QScriptValue(true)");
       
  1978         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, true)");
       
  1979         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, true)");
       
  1980         equals.insert("QScriptValue(0, false) <=> QScriptValue(false)");
       
  1981         equals.insert("QScriptValue(0, false) <=> QScriptValue(0)");
       
  1982         equals.insert("QScriptValue(0, false) <=> QScriptValue(0.0)");
       
  1983         equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"\"))");
       
  1984         equals.insert("QScriptValue(0, false) <=> QScriptValue(QString())");
       
  1985         equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"0\"))");
       
  1986         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, false)");
       
  1987         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0)");
       
  1988         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0.0)");
       
  1989         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"\"))");
       
  1990         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString())");
       
  1991         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"0\"))");
       
  1992         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, false)");
       
  1993         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0)");
       
  1994         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0.0)");
       
  1995         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"\"))");
       
  1996         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString())");
       
  1997         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"0\"))");
       
  1998         equals.insert("QScriptValue(0, false) <=> engine->evaluate(\"[]\")");
       
  1999         equals.insert("QScriptValue(0, false) <=> engine->evaluate(\"Array.prototype\")");
       
  2000         equals.insert("QScriptValue(0, false) <=> engine->evaluate(\"new Array()\")");
       
  2001         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(int(122))");
       
  2002         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, int(122))");
       
  2003         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, int(122))");
       
  2004         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(uint(124))");
       
  2005         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, uint(124))");
       
  2006         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, uint(124))");
       
  2007         equals.insert("QScriptValue(0, 0) <=> QScriptValue(false)");
       
  2008         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0)");
       
  2009         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0.0)");
       
  2010         equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"\"))");
       
  2011         equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString())");
       
  2012         equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"0\"))");
       
  2013         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, false)");
       
  2014         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0)");
       
  2015         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0.0)");
       
  2016         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"\"))");
       
  2017         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString())");
       
  2018         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"0\"))");
       
  2019         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, false)");
       
  2020         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0)");
       
  2021         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0.0)");
       
  2022         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"\"))");
       
  2023         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString())");
       
  2024         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"0\"))");
       
  2025         equals.insert("QScriptValue(0, 0) <=> engine->evaluate(\"[]\")");
       
  2026         equals.insert("QScriptValue(0, 0) <=> engine->evaluate(\"Array.prototype\")");
       
  2027         equals.insert("QScriptValue(0, 0) <=> engine->evaluate(\"new Array()\")");
       
  2028         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(false)");
       
  2029         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0)");
       
  2030         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0.0)");
       
  2031         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"\"))");
       
  2032         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString())");
       
  2033         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"0\"))");
       
  2034         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, false)");
       
  2035         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0)");
       
  2036         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0.0)");
       
  2037         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"\"))");
       
  2038         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString())");
       
  2039         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"0\"))");
       
  2040         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, false)");
       
  2041         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0)");
       
  2042         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0.0)");
       
  2043         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"\"))");
       
  2044         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString())");
       
  2045         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"0\"))");
       
  2046         equals.insert("QScriptValue(0, 0.0) <=> engine->evaluate(\"[]\")");
       
  2047         equals.insert("QScriptValue(0, 0.0) <=> engine->evaluate(\"Array.prototype\")");
       
  2048         equals.insert("QScriptValue(0, 0.0) <=> engine->evaluate(\"new Array()\")");
       
  2049         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(123.0)");
       
  2050         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(QString(\"123\"))");
       
  2051         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 123.0)");
       
  2052         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, QString(\"123\"))");
       
  2053         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 123.0)");
       
  2054         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, QString(\"123\"))");
       
  2055         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(6.37e-8)");
       
  2056         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  2057         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  2058         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(-6.37e-8)");
       
  2059         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, -6.37e-8)");
       
  2060         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)");
       
  2061         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0x43211234)");
       
  2062         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, 0x43211234)");
       
  2063         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, 0x43211234)");
       
  2064         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x10000)");
       
  2065         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x10000)");
       
  2066         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x10000)");
       
  2067         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0x10001)");
       
  2068         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, 0x10001)");
       
  2069         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, 0x10001)");
       
  2070         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(qInf())");
       
  2071         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(\"Infinity\")");
       
  2072         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(0, qInf())");
       
  2073         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(0, \"Infinity\")");
       
  2074         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(engine, qInf())");
       
  2075         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(engine, \"Infinity\")");
       
  2076         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(-qInf())");
       
  2077         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(\"-Infinity\")");
       
  2078         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, -qInf())");
       
  2079         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, \"-Infinity\")");
       
  2080         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, -qInf())");
       
  2081         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, \"-Infinity\")");
       
  2082         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(\"NaN\")");
       
  2083         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, \"NaN\")");
       
  2084         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, \"NaN\")");
       
  2085         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(qInf())");
       
  2086         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"Infinity\")");
       
  2087         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, qInf())");
       
  2088         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  2089         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, qInf())");
       
  2090         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  2091         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(-qInf())");
       
  2092         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"-Infinity\")");
       
  2093         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, -qInf())");
       
  2094         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")");
       
  2095         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, -qInf())");
       
  2096         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")");
       
  2097         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(\"ciao\")");
       
  2098         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2099         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, \"ciao\")");
       
  2100         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2101         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, \"ciao\")");
       
  2102         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2103         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")");
       
  2104         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2105         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")");
       
  2106         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2107         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")");
       
  2108         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2109         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(false)");
       
  2110         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0)");
       
  2111         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0.0)");
       
  2112         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"\"))");
       
  2113         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString())");
       
  2114         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, false)");
       
  2115         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0)");
       
  2116         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0.0)");
       
  2117         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"\"))");
       
  2118         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString())");
       
  2119         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, false)");
       
  2120         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0)");
       
  2121         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0.0)");
       
  2122         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))");
       
  2123         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString())");
       
  2124         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"[]\")");
       
  2125         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Array.prototype\")");
       
  2126         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"new Array()\")");
       
  2127         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(false)");
       
  2128         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0)");
       
  2129         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0.0)");
       
  2130         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"\"))");
       
  2131         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString())");
       
  2132         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, false)");
       
  2133         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0)");
       
  2134         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0.0)");
       
  2135         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"\"))");
       
  2136         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString())");
       
  2137         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, false)");
       
  2138         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0)");
       
  2139         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0.0)");
       
  2140         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"\"))");
       
  2141         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString())");
       
  2142         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"[]\")");
       
  2143         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Array.prototype\")");
       
  2144         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"new Array()\")");
       
  2145         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(false)");
       
  2146         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0)");
       
  2147         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0.0)");
       
  2148         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"0\"))");
       
  2149         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, false)");
       
  2150         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0)");
       
  2151         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0.0)");
       
  2152         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))");
       
  2153         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, false)");
       
  2154         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0)");
       
  2155         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0.0)");
       
  2156         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  2157         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(123.0)");
       
  2158         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(QString(\"123\"))");
       
  2159         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 123.0)");
       
  2160         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))");
       
  2161         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 123.0)");
       
  2162         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  2163         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  2164         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2165         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  2166         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2167         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2168         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2169         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2170         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")");
       
  2171         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> engine->nullValue()");
       
  2172         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> engine->undefinedValue()");
       
  2173         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2174         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  2175         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2176         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2177         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2178         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2179         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> engine->evaluate(\"{}\")");
       
  2180         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> engine->nullValue()");
       
  2181         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> engine->undefinedValue()");
       
  2182         equals.insert("QScriptValue(engine, true) <=> QScriptValue(true)");
       
  2183         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, true)");
       
  2184         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, true)");
       
  2185         equals.insert("QScriptValue(engine, false) <=> QScriptValue(false)");
       
  2186         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0)");
       
  2187         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0.0)");
       
  2188         equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"\"))");
       
  2189         equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString())");
       
  2190         equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"0\"))");
       
  2191         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, false)");
       
  2192         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0)");
       
  2193         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0.0)");
       
  2194         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"\"))");
       
  2195         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString())");
       
  2196         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"0\"))");
       
  2197         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, false)");
       
  2198         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0)");
       
  2199         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0.0)");
       
  2200         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"\"))");
       
  2201         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString())");
       
  2202         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"0\"))");
       
  2203         equals.insert("QScriptValue(engine, false) <=> engine->evaluate(\"[]\")");
       
  2204         equals.insert("QScriptValue(engine, false) <=> engine->evaluate(\"Array.prototype\")");
       
  2205         equals.insert("QScriptValue(engine, false) <=> engine->evaluate(\"new Array()\")");
       
  2206         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(int(122))");
       
  2207         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, int(122))");
       
  2208         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, int(122))");
       
  2209         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(uint(124))");
       
  2210         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, uint(124))");
       
  2211         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, uint(124))");
       
  2212         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(false)");
       
  2213         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0)");
       
  2214         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0.0)");
       
  2215         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"\"))");
       
  2216         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString())");
       
  2217         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"0\"))");
       
  2218         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, false)");
       
  2219         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0)");
       
  2220         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0.0)");
       
  2221         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"\"))");
       
  2222         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString())");
       
  2223         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"0\"))");
       
  2224         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, false)");
       
  2225         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0)");
       
  2226         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0.0)");
       
  2227         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"\"))");
       
  2228         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString())");
       
  2229         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"0\"))");
       
  2230         equals.insert("QScriptValue(engine, 0) <=> engine->evaluate(\"[]\")");
       
  2231         equals.insert("QScriptValue(engine, 0) <=> engine->evaluate(\"Array.prototype\")");
       
  2232         equals.insert("QScriptValue(engine, 0) <=> engine->evaluate(\"new Array()\")");
       
  2233         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(false)");
       
  2234         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0)");
       
  2235         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0.0)");
       
  2236         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"\"))");
       
  2237         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString())");
       
  2238         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"0\"))");
       
  2239         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, false)");
       
  2240         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0)");
       
  2241         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0.0)");
       
  2242         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"\"))");
       
  2243         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString())");
       
  2244         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"0\"))");
       
  2245         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, false)");
       
  2246         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0)");
       
  2247         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0.0)");
       
  2248         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"\"))");
       
  2249         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString())");
       
  2250         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"0\"))");
       
  2251         equals.insert("QScriptValue(engine, 0.0) <=> engine->evaluate(\"[]\")");
       
  2252         equals.insert("QScriptValue(engine, 0.0) <=> engine->evaluate(\"Array.prototype\")");
       
  2253         equals.insert("QScriptValue(engine, 0.0) <=> engine->evaluate(\"new Array()\")");
       
  2254         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(123.0)");
       
  2255         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(QString(\"123\"))");
       
  2256         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 123.0)");
       
  2257         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, QString(\"123\"))");
       
  2258         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 123.0)");
       
  2259         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, QString(\"123\"))");
       
  2260         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(6.37e-8)");
       
  2261         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  2262         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  2263         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(-6.37e-8)");
       
  2264         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, -6.37e-8)");
       
  2265         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)");
       
  2266         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0x43211234)");
       
  2267         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, 0x43211234)");
       
  2268         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, 0x43211234)");
       
  2269         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x10000)");
       
  2270         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x10000)");
       
  2271         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x10000)");
       
  2272         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0x10001)");
       
  2273         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, 0x10001)");
       
  2274         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, 0x10001)");
       
  2275         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(qInf())");
       
  2276         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(\"Infinity\")");
       
  2277         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(0, qInf())");
       
  2278         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(0, \"Infinity\")");
       
  2279         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(engine, qInf())");
       
  2280         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(engine, \"Infinity\")");
       
  2281         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(-qInf())");
       
  2282         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(\"-Infinity\")");
       
  2283         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, -qInf())");
       
  2284         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, \"-Infinity\")");
       
  2285         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, -qInf())");
       
  2286         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, \"-Infinity\")");
       
  2287         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(\"NaN\")");
       
  2288         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, \"NaN\")");
       
  2289         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, \"NaN\")");
       
  2290         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(qInf())");
       
  2291         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"Infinity\")");
       
  2292         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, qInf())");
       
  2293         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  2294         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, qInf())");
       
  2295         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  2296         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(-qInf())");
       
  2297         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"-Infinity\")");
       
  2298         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, -qInf())");
       
  2299         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")");
       
  2300         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, -qInf())");
       
  2301         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")");
       
  2302         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(\"ciao\")");
       
  2303         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2304         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, \"ciao\")");
       
  2305         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2306         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, \"ciao\")");
       
  2307         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2308         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")");
       
  2309         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2310         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")");
       
  2311         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2312         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")");
       
  2313         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2314         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(false)");
       
  2315         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0)");
       
  2316         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0.0)");
       
  2317         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"\"))");
       
  2318         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString())");
       
  2319         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, false)");
       
  2320         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0)");
       
  2321         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0.0)");
       
  2322         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"\"))");
       
  2323         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString())");
       
  2324         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, false)");
       
  2325         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0)");
       
  2326         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0.0)");
       
  2327         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))");
       
  2328         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString())");
       
  2329         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"[]\")");
       
  2330         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Array.prototype\")");
       
  2331         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"new Array()\")");
       
  2332         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(false)");
       
  2333         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0)");
       
  2334         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0.0)");
       
  2335         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"\"))");
       
  2336         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString())");
       
  2337         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, false)");
       
  2338         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0)");
       
  2339         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0.0)");
       
  2340         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"\"))");
       
  2341         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString())");
       
  2342         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, false)");
       
  2343         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0)");
       
  2344         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0.0)");
       
  2345         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"\"))");
       
  2346         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString())");
       
  2347         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"[]\")");
       
  2348         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Array.prototype\")");
       
  2349         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"new Array()\")");
       
  2350         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(false)");
       
  2351         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0)");
       
  2352         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0.0)");
       
  2353         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"0\"))");
       
  2354         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, false)");
       
  2355         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0)");
       
  2356         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0.0)");
       
  2357         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))");
       
  2358         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, false)");
       
  2359         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0)");
       
  2360         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0.0)");
       
  2361         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  2362         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(123.0)");
       
  2363         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(QString(\"123\"))");
       
  2364         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 123.0)");
       
  2365         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))");
       
  2366         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 123.0)");
       
  2367         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  2368         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  2369         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(false)");
       
  2370         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0)");
       
  2371         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0.0)");
       
  2372         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"\"))");
       
  2373         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString())");
       
  2374         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, false)");
       
  2375         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0)");
       
  2376         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0.0)");
       
  2377         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"\"))");
       
  2378         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString())");
       
  2379         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, false)");
       
  2380         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0)");
       
  2381         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0.0)");
       
  2382         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"\"))");
       
  2383         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString())");
       
  2384         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"[]\")");
       
  2385         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2386         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(QScriptValue::NullValue)");
       
  2387         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2388         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2389         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2390         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2391         equals.insert("engine->evaluate(\"{}\") <=> engine->evaluate(\"{}\")");
       
  2392         equals.insert("engine->evaluate(\"{}\") <=> engine->nullValue()");
       
  2393         equals.insert("engine->evaluate(\"{}\") <=> engine->undefinedValue()");
       
  2394         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Object.prototype\")");
       
  2395         equals.insert("engine->evaluate(\"Date.prototype\") <=> engine->evaluate(\"Date.prototype\")");
       
  2396         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(false)");
       
  2397         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0)");
       
  2398         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0.0)");
       
  2399         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"\"))");
       
  2400         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString())");
       
  2401         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, false)");
       
  2402         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0)");
       
  2403         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0.0)");
       
  2404         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"\"))");
       
  2405         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString())");
       
  2406         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, false)");
       
  2407         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0)");
       
  2408         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0.0)");
       
  2409         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"\"))");
       
  2410         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString())");
       
  2411         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Array.prototype\")");
       
  2412         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Function.prototype\")");
       
  2413         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Error.prototype\")");
       
  2414         equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Object\")");
       
  2415         equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Array\")");
       
  2416         equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Number\")");
       
  2417         equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Function\")");
       
  2418         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  2419         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  2420         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  2421         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"/foo/\")");
       
  2422         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"new Object()\")");
       
  2423         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(false)");
       
  2424         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0)");
       
  2425         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0.0)");
       
  2426         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"\"))");
       
  2427         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString())");
       
  2428         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, false)");
       
  2429         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0)");
       
  2430         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0.0)");
       
  2431         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"\"))");
       
  2432         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString())");
       
  2433         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, false)");
       
  2434         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0)");
       
  2435         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0.0)");
       
  2436         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"\"))");
       
  2437         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString())");
       
  2438         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Array()\")");
       
  2439         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"new Error()\")");
       
  2440         equals.insert("engine->nullValue() <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2441         equals.insert("engine->nullValue() <=> QScriptValue(QScriptValue::NullValue)");
       
  2442         equals.insert("engine->nullValue() <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2443         equals.insert("engine->nullValue() <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2444         equals.insert("engine->nullValue() <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2445         equals.insert("engine->nullValue() <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2446         equals.insert("engine->nullValue() <=> engine->evaluate(\"{}\")");
       
  2447         equals.insert("engine->nullValue() <=> engine->nullValue()");
       
  2448         equals.insert("engine->nullValue() <=> engine->undefinedValue()");
       
  2449         equals.insert("engine->undefinedValue() <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2450         equals.insert("engine->undefinedValue() <=> QScriptValue(QScriptValue::NullValue)");
       
  2451         equals.insert("engine->undefinedValue() <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2452         equals.insert("engine->undefinedValue() <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2453         equals.insert("engine->undefinedValue() <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2454         equals.insert("engine->undefinedValue() <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2455         equals.insert("engine->undefinedValue() <=> engine->evaluate(\"{}\")");
       
  2456         equals.insert("engine->undefinedValue() <=> engine->nullValue()");
       
  2457         equals.insert("engine->undefinedValue() <=> engine->undefinedValue()");
       
  2458     }
       
  2459     QHash<QString, QScriptValue>::const_iterator it;
       
  2460     for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) {
       
  2461         QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key());
       
  2462         newRow(tag.toLatin1()) << it.value() << equals.contains(tag);
       
  2463     }
       
  2464 }
       
  2465 
       
  2466 void tst_QScriptValue::equals_test(const char *, const QScriptValue& value)
       
  2467 {
       
  2468     QFETCH(QScriptValue, other);
       
  2469     QFETCH(bool, expected);
       
  2470     QCOMPARE(value.equals(other), expected);
       
  2471 }
       
  2472 
       
  2473 DEFINE_TEST_FUNCTION(equals)
       
  2474 
       
  2475 
       
  2476 void tst_QScriptValue::strictlyEquals_initData()
       
  2477 {
       
  2478     QTest::addColumn<QScriptValue>("other");
       
  2479     QTest::addColumn<bool>("expected");
       
  2480     initScriptValues();
       
  2481 }
       
  2482 
       
  2483 void tst_QScriptValue::strictlyEquals_makeData(const char *expr)
       
  2484 {
       
  2485     static QSet<QString> equals;
       
  2486     if (equals.isEmpty()) {
       
  2487         equals.insert("QScriptValue() <=> QScriptValue()");
       
  2488         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2489         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2490         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2491         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")");
       
  2492         equals.insert("QScriptValue(QScriptValue::UndefinedValue) <=> engine->undefinedValue()");
       
  2493         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  2494         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2495         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2496         equals.insert("QScriptValue(QScriptValue::NullValue) <=> engine->nullValue()");
       
  2497         equals.insert("QScriptValue(true) <=> QScriptValue(true)");
       
  2498         equals.insert("QScriptValue(true) <=> QScriptValue(0, true)");
       
  2499         equals.insert("QScriptValue(true) <=> QScriptValue(engine, true)");
       
  2500         equals.insert("QScriptValue(false) <=> QScriptValue(false)");
       
  2501         equals.insert("QScriptValue(false) <=> QScriptValue(0, false)");
       
  2502         equals.insert("QScriptValue(false) <=> QScriptValue(engine, false)");
       
  2503         equals.insert("QScriptValue(int(122)) <=> QScriptValue(int(122))");
       
  2504         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, int(122))");
       
  2505         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, int(122))");
       
  2506         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(uint(124))");
       
  2507         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, uint(124))");
       
  2508         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, uint(124))");
       
  2509         equals.insert("QScriptValue(0) <=> QScriptValue(0)");
       
  2510         equals.insert("QScriptValue(0) <=> QScriptValue(0.0)");
       
  2511         equals.insert("QScriptValue(0) <=> QScriptValue(0, 0)");
       
  2512         equals.insert("QScriptValue(0) <=> QScriptValue(0, 0.0)");
       
  2513         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0)");
       
  2514         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0.0)");
       
  2515         equals.insert("QScriptValue(0.0) <=> QScriptValue(0)");
       
  2516         equals.insert("QScriptValue(0.0) <=> QScriptValue(0.0)");
       
  2517         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0)");
       
  2518         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0.0)");
       
  2519         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0)");
       
  2520         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0.0)");
       
  2521         equals.insert("QScriptValue(123.0) <=> QScriptValue(123.0)");
       
  2522         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 123.0)");
       
  2523         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 123.0)");
       
  2524         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(6.37e-8)");
       
  2525         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  2526         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  2527         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(-6.37e-8)");
       
  2528         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, -6.37e-8)");
       
  2529         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, -6.37e-8)");
       
  2530         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0x43211234)");
       
  2531         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, 0x43211234)");
       
  2532         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, 0x43211234)");
       
  2533         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x10000)");
       
  2534         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x10000)");
       
  2535         equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x10000)");
       
  2536         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0x10001)");
       
  2537         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, 0x10001)");
       
  2538         equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, 0x10001)");
       
  2539         equals.insert("QScriptValue(qInf()) <=> QScriptValue(qInf())");
       
  2540         equals.insert("QScriptValue(qInf()) <=> QScriptValue(0, qInf())");
       
  2541         equals.insert("QScriptValue(qInf()) <=> QScriptValue(engine, qInf())");
       
  2542         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(-qInf())");
       
  2543         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, -qInf())");
       
  2544         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, -qInf())");
       
  2545         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(\"NaN\")");
       
  2546         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, \"NaN\")");
       
  2547         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, \"NaN\")");
       
  2548         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"Infinity\")");
       
  2549         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  2550         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  2551         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"-Infinity\")");
       
  2552         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"-Infinity\")");
       
  2553         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")");
       
  2554         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(\"ciao\")");
       
  2555         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2556         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, \"ciao\")");
       
  2557         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2558         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, \"ciao\")");
       
  2559         equals.insert("QScriptValue(\"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2560         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")");
       
  2561         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2562         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")");
       
  2563         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2564         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")");
       
  2565         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2566         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"\"))");
       
  2567         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString())");
       
  2568         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"\"))");
       
  2569         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString())");
       
  2570         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"\"))");
       
  2571         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString())");
       
  2572         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"\"))");
       
  2573         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString())");
       
  2574         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"\"))");
       
  2575         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString())");
       
  2576         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"\"))");
       
  2577         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString())");
       
  2578         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"0\"))");
       
  2579         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))");
       
  2580         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  2581         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(QString(\"123\"))");
       
  2582         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))");
       
  2583         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  2584         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString(\"12.4\"))");
       
  2585         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2586         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2587         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2588         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")");
       
  2589         equals.insert("QScriptValue(0, QScriptValue::UndefinedValue) <=> engine->undefinedValue()");
       
  2590         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  2591         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2592         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2593         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> engine->nullValue()");
       
  2594         equals.insert("QScriptValue(0, true) <=> QScriptValue(true)");
       
  2595         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, true)");
       
  2596         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, true)");
       
  2597         equals.insert("QScriptValue(0, false) <=> QScriptValue(false)");
       
  2598         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, false)");
       
  2599         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, false)");
       
  2600         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(int(122))");
       
  2601         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, int(122))");
       
  2602         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, int(122))");
       
  2603         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(uint(124))");
       
  2604         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, uint(124))");
       
  2605         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, uint(124))");
       
  2606         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0)");
       
  2607         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0.0)");
       
  2608         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0)");
       
  2609         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0.0)");
       
  2610         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0)");
       
  2611         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0.0)");
       
  2612         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0)");
       
  2613         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0.0)");
       
  2614         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0)");
       
  2615         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0.0)");
       
  2616         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0)");
       
  2617         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0.0)");
       
  2618         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(123.0)");
       
  2619         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 123.0)");
       
  2620         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 123.0)");
       
  2621         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(6.37e-8)");
       
  2622         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  2623         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  2624         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(-6.37e-8)");
       
  2625         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, -6.37e-8)");
       
  2626         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)");
       
  2627         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0x43211234)");
       
  2628         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, 0x43211234)");
       
  2629         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, 0x43211234)");
       
  2630         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x10000)");
       
  2631         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x10000)");
       
  2632         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x10000)");
       
  2633         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0x10001)");
       
  2634         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, 0x10001)");
       
  2635         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, 0x10001)");
       
  2636         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(qInf())");
       
  2637         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(0, qInf())");
       
  2638         equals.insert("QScriptValue(0, qInf()) <=> QScriptValue(engine, qInf())");
       
  2639         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(-qInf())");
       
  2640         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, -qInf())");
       
  2641         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, -qInf())");
       
  2642         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(\"NaN\")");
       
  2643         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, \"NaN\")");
       
  2644         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, \"NaN\")");
       
  2645         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"Infinity\")");
       
  2646         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  2647         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  2648         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"-Infinity\")");
       
  2649         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")");
       
  2650         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")");
       
  2651         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(\"ciao\")");
       
  2652         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2653         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, \"ciao\")");
       
  2654         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2655         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, \"ciao\")");
       
  2656         equals.insert("QScriptValue(0, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2657         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")");
       
  2658         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2659         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")");
       
  2660         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2661         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")");
       
  2662         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2663         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"\"))");
       
  2664         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString())");
       
  2665         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"\"))");
       
  2666         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString())");
       
  2667         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))");
       
  2668         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString())");
       
  2669         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"\"))");
       
  2670         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString())");
       
  2671         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"\"))");
       
  2672         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString())");
       
  2673         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"\"))");
       
  2674         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString())");
       
  2675         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"0\"))");
       
  2676         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))");
       
  2677         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  2678         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(QString(\"123\"))");
       
  2679         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))");
       
  2680         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  2681         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  2682         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2683         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2684         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2685         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> engine->evaluate(\"{}\")");
       
  2686         equals.insert("QScriptValue(engine, QScriptValue::UndefinedValue) <=> engine->undefinedValue()");
       
  2687         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QScriptValue::NullValue)");
       
  2688         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2689         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2690         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> engine->nullValue()");
       
  2691         equals.insert("QScriptValue(engine, true) <=> QScriptValue(true)");
       
  2692         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, true)");
       
  2693         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, true)");
       
  2694         equals.insert("QScriptValue(engine, false) <=> QScriptValue(false)");
       
  2695         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, false)");
       
  2696         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, false)");
       
  2697         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(int(122))");
       
  2698         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, int(122))");
       
  2699         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, int(122))");
       
  2700         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(uint(124))");
       
  2701         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, uint(124))");
       
  2702         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, uint(124))");
       
  2703         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0)");
       
  2704         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0.0)");
       
  2705         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0)");
       
  2706         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0.0)");
       
  2707         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0)");
       
  2708         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0.0)");
       
  2709         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0)");
       
  2710         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0.0)");
       
  2711         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0)");
       
  2712         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0.0)");
       
  2713         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0)");
       
  2714         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0.0)");
       
  2715         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(123.0)");
       
  2716         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 123.0)");
       
  2717         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 123.0)");
       
  2718         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(6.37e-8)");
       
  2719         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  2720         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  2721         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(-6.37e-8)");
       
  2722         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, -6.37e-8)");
       
  2723         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, -6.37e-8)");
       
  2724         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0x43211234)");
       
  2725         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, 0x43211234)");
       
  2726         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, 0x43211234)");
       
  2727         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x10000)");
       
  2728         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x10000)");
       
  2729         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x10000)");
       
  2730         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0x10001)");
       
  2731         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, 0x10001)");
       
  2732         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, 0x10001)");
       
  2733         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(qInf())");
       
  2734         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(0, qInf())");
       
  2735         equals.insert("QScriptValue(engine, qInf()) <=> QScriptValue(engine, qInf())");
       
  2736         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(-qInf())");
       
  2737         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, -qInf())");
       
  2738         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, -qInf())");
       
  2739         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(\"NaN\")");
       
  2740         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, \"NaN\")");
       
  2741         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, \"NaN\")");
       
  2742         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"Infinity\")");
       
  2743         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  2744         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  2745         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"-Infinity\")");
       
  2746         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"-Infinity\")");
       
  2747         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"-Infinity\")");
       
  2748         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(\"ciao\")");
       
  2749         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2750         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, \"ciao\")");
       
  2751         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2752         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, \"ciao\")");
       
  2753         equals.insert("QScriptValue(engine, \"ciao\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2754         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(\"ciao\")");
       
  2755         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  2756         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, \"ciao\")");
       
  2757         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  2758         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, \"ciao\")");
       
  2759         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  2760         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"\"))");
       
  2761         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString())");
       
  2762         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"\"))");
       
  2763         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString())");
       
  2764         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"\"))");
       
  2765         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString())");
       
  2766         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"\"))");
       
  2767         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString())");
       
  2768         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"\"))");
       
  2769         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString())");
       
  2770         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"\"))");
       
  2771         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString())");
       
  2772         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"0\"))");
       
  2773         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"0\"))");
       
  2774         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  2775         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(QString(\"123\"))");
       
  2776         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, QString(\"123\"))");
       
  2777         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  2778         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  2779         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"[]\")");
       
  2780         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2781         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2782         equals.insert("engine->evaluate(\"{}\") <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2783         equals.insert("engine->evaluate(\"{}\") <=> engine->evaluate(\"{}\")");
       
  2784         equals.insert("engine->evaluate(\"{}\") <=> engine->undefinedValue()");
       
  2785         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Object.prototype\")");
       
  2786         equals.insert("engine->evaluate(\"Date.prototype\") <=> engine->evaluate(\"Date.prototype\")");
       
  2787         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Array.prototype\")");
       
  2788         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Function.prototype\")");
       
  2789         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Error.prototype\")");
       
  2790         equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Object\")");
       
  2791         equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Array\")");
       
  2792         equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Number\")");
       
  2793         equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Function\")");
       
  2794         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  2795         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  2796         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  2797         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"/foo/\")");
       
  2798         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"new Object()\")");
       
  2799         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Array()\")");
       
  2800         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"new Error()\")");
       
  2801         equals.insert("engine->nullValue() <=> QScriptValue(QScriptValue::NullValue)");
       
  2802         equals.insert("engine->nullValue() <=> QScriptValue(0, QScriptValue::NullValue)");
       
  2803         equals.insert("engine->nullValue() <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  2804         equals.insert("engine->nullValue() <=> engine->nullValue()");
       
  2805         equals.insert("engine->undefinedValue() <=> QScriptValue(QScriptValue::UndefinedValue)");
       
  2806         equals.insert("engine->undefinedValue() <=> QScriptValue(0, QScriptValue::UndefinedValue)");
       
  2807         equals.insert("engine->undefinedValue() <=> QScriptValue(engine, QScriptValue::UndefinedValue)");
       
  2808         equals.insert("engine->undefinedValue() <=> engine->evaluate(\"{}\")");
       
  2809         equals.insert("engine->undefinedValue() <=> engine->undefinedValue()");
       
  2810     }
       
  2811     QHash<QString, QScriptValue>::const_iterator it;
       
  2812     for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) {
       
  2813         QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key());
       
  2814         newRow(tag.toLatin1()) << it.value() << equals.contains(tag);
       
  2815     }
       
  2816 }
       
  2817 
       
  2818 void tst_QScriptValue::strictlyEquals_test(const char *, const QScriptValue& value)
       
  2819 {
       
  2820     QFETCH(QScriptValue, other);
       
  2821     QFETCH(bool, expected);
       
  2822     QCOMPARE(value.strictlyEquals(other), expected);
       
  2823 }
       
  2824 
       
  2825 DEFINE_TEST_FUNCTION(strictlyEquals)
       
  2826 
       
  2827 
       
  2828 void tst_QScriptValue::lessThan_initData()
       
  2829 {
       
  2830     QTest::addColumn<QScriptValue>("other");
       
  2831     QTest::addColumn<bool>("expected");
       
  2832     initScriptValues();
       
  2833 }
       
  2834 
       
  2835 void tst_QScriptValue::lessThan_makeData(const char *expr)
       
  2836 {
       
  2837     static QSet<QString> equals;
       
  2838     if (equals.isEmpty()) {
       
  2839         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(true)");
       
  2840         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(int(122))");
       
  2841         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(uint(124))");
       
  2842         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(123.0)");
       
  2843         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(6.37e-8)");
       
  2844         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0x43211234)");
       
  2845         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0x10000)");
       
  2846         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0x10001)");
       
  2847         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(qInf())");
       
  2848         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(\"Infinity\")");
       
  2849         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QString(\"123\"))");
       
  2850         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(QString(\"12.4\"))");
       
  2851         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, true)");
       
  2852         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, int(122))");
       
  2853         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, uint(124))");
       
  2854         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 123.0)");
       
  2855         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 6.37e-8)");
       
  2856         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 0x43211234)");
       
  2857         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 0x10000)");
       
  2858         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, 0x10001)");
       
  2859         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, qInf())");
       
  2860         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, \"Infinity\")");
       
  2861         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QString(\"123\"))");
       
  2862         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(0, QString(\"12.3\"))");
       
  2863         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, true)");
       
  2864         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, int(122))");
       
  2865         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, uint(124))");
       
  2866         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 123.0)");
       
  2867         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 6.37e-8)");
       
  2868         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 0x43211234)");
       
  2869         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 0x10000)");
       
  2870         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, 0x10001)");
       
  2871         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, qInf())");
       
  2872         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, \"Infinity\")");
       
  2873         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"123\"))");
       
  2874         equals.insert("QScriptValue(QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  2875         equals.insert("QScriptValue(true) <=> QScriptValue(int(122))");
       
  2876         equals.insert("QScriptValue(true) <=> QScriptValue(uint(124))");
       
  2877         equals.insert("QScriptValue(true) <=> QScriptValue(123.0)");
       
  2878         equals.insert("QScriptValue(true) <=> QScriptValue(0x43211234)");
       
  2879         equals.insert("QScriptValue(true) <=> QScriptValue(0x10000)");
       
  2880         equals.insert("QScriptValue(true) <=> QScriptValue(0x10001)");
       
  2881         equals.insert("QScriptValue(true) <=> QScriptValue(qInf())");
       
  2882         equals.insert("QScriptValue(true) <=> QScriptValue(\"Infinity\")");
       
  2883         equals.insert("QScriptValue(true) <=> QScriptValue(QString(\"123\"))");
       
  2884         equals.insert("QScriptValue(true) <=> QScriptValue(QString(\"12.4\"))");
       
  2885         equals.insert("QScriptValue(true) <=> QScriptValue(0, int(122))");
       
  2886         equals.insert("QScriptValue(true) <=> QScriptValue(0, uint(124))");
       
  2887         equals.insert("QScriptValue(true) <=> QScriptValue(0, 123.0)");
       
  2888         equals.insert("QScriptValue(true) <=> QScriptValue(0, 0x43211234)");
       
  2889         equals.insert("QScriptValue(true) <=> QScriptValue(0, 0x10000)");
       
  2890         equals.insert("QScriptValue(true) <=> QScriptValue(0, 0x10001)");
       
  2891         equals.insert("QScriptValue(true) <=> QScriptValue(0, qInf())");
       
  2892         equals.insert("QScriptValue(true) <=> QScriptValue(0, \"Infinity\")");
       
  2893         equals.insert("QScriptValue(true) <=> QScriptValue(0, QString(\"123\"))");
       
  2894         equals.insert("QScriptValue(true) <=> QScriptValue(0, QString(\"12.3\"))");
       
  2895         equals.insert("QScriptValue(true) <=> QScriptValue(engine, int(122))");
       
  2896         equals.insert("QScriptValue(true) <=> QScriptValue(engine, uint(124))");
       
  2897         equals.insert("QScriptValue(true) <=> QScriptValue(engine, 123.0)");
       
  2898         equals.insert("QScriptValue(true) <=> QScriptValue(engine, 0x43211234)");
       
  2899         equals.insert("QScriptValue(true) <=> QScriptValue(engine, 0x10000)");
       
  2900         equals.insert("QScriptValue(true) <=> QScriptValue(engine, 0x10001)");
       
  2901         equals.insert("QScriptValue(true) <=> QScriptValue(engine, qInf())");
       
  2902         equals.insert("QScriptValue(true) <=> QScriptValue(engine, \"Infinity\")");
       
  2903         equals.insert("QScriptValue(true) <=> QScriptValue(engine, QString(\"123\"))");
       
  2904         equals.insert("QScriptValue(true) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  2905         equals.insert("QScriptValue(false) <=> QScriptValue(true)");
       
  2906         equals.insert("QScriptValue(false) <=> QScriptValue(int(122))");
       
  2907         equals.insert("QScriptValue(false) <=> QScriptValue(uint(124))");
       
  2908         equals.insert("QScriptValue(false) <=> QScriptValue(123.0)");
       
  2909         equals.insert("QScriptValue(false) <=> QScriptValue(6.37e-8)");
       
  2910         equals.insert("QScriptValue(false) <=> QScriptValue(0x43211234)");
       
  2911         equals.insert("QScriptValue(false) <=> QScriptValue(0x10000)");
       
  2912         equals.insert("QScriptValue(false) <=> QScriptValue(0x10001)");
       
  2913         equals.insert("QScriptValue(false) <=> QScriptValue(qInf())");
       
  2914         equals.insert("QScriptValue(false) <=> QScriptValue(\"Infinity\")");
       
  2915         equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"123\"))");
       
  2916         equals.insert("QScriptValue(false) <=> QScriptValue(QString(\"12.4\"))");
       
  2917         equals.insert("QScriptValue(false) <=> QScriptValue(0, true)");
       
  2918         equals.insert("QScriptValue(false) <=> QScriptValue(0, int(122))");
       
  2919         equals.insert("QScriptValue(false) <=> QScriptValue(0, uint(124))");
       
  2920         equals.insert("QScriptValue(false) <=> QScriptValue(0, 123.0)");
       
  2921         equals.insert("QScriptValue(false) <=> QScriptValue(0, 6.37e-8)");
       
  2922         equals.insert("QScriptValue(false) <=> QScriptValue(0, 0x43211234)");
       
  2923         equals.insert("QScriptValue(false) <=> QScriptValue(0, 0x10000)");
       
  2924         equals.insert("QScriptValue(false) <=> QScriptValue(0, 0x10001)");
       
  2925         equals.insert("QScriptValue(false) <=> QScriptValue(0, qInf())");
       
  2926         equals.insert("QScriptValue(false) <=> QScriptValue(0, \"Infinity\")");
       
  2927         equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"123\"))");
       
  2928         equals.insert("QScriptValue(false) <=> QScriptValue(0, QString(\"12.3\"))");
       
  2929         equals.insert("QScriptValue(false) <=> QScriptValue(engine, true)");
       
  2930         equals.insert("QScriptValue(false) <=> QScriptValue(engine, int(122))");
       
  2931         equals.insert("QScriptValue(false) <=> QScriptValue(engine, uint(124))");
       
  2932         equals.insert("QScriptValue(false) <=> QScriptValue(engine, 123.0)");
       
  2933         equals.insert("QScriptValue(false) <=> QScriptValue(engine, 6.37e-8)");
       
  2934         equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0x43211234)");
       
  2935         equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0x10000)");
       
  2936         equals.insert("QScriptValue(false) <=> QScriptValue(engine, 0x10001)");
       
  2937         equals.insert("QScriptValue(false) <=> QScriptValue(engine, qInf())");
       
  2938         equals.insert("QScriptValue(false) <=> QScriptValue(engine, \"Infinity\")");
       
  2939         equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"123\"))");
       
  2940         equals.insert("QScriptValue(false) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  2941         equals.insert("QScriptValue(int(122)) <=> QScriptValue(uint(124))");
       
  2942         equals.insert("QScriptValue(int(122)) <=> QScriptValue(123.0)");
       
  2943         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0x43211234)");
       
  2944         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0x10000)");
       
  2945         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0x10001)");
       
  2946         equals.insert("QScriptValue(int(122)) <=> QScriptValue(qInf())");
       
  2947         equals.insert("QScriptValue(int(122)) <=> QScriptValue(\"Infinity\")");
       
  2948         equals.insert("QScriptValue(int(122)) <=> QScriptValue(QString(\"123\"))");
       
  2949         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, uint(124))");
       
  2950         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 123.0)");
       
  2951         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 0x43211234)");
       
  2952         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 0x10000)");
       
  2953         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, 0x10001)");
       
  2954         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, qInf())");
       
  2955         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, \"Infinity\")");
       
  2956         equals.insert("QScriptValue(int(122)) <=> QScriptValue(0, QString(\"123\"))");
       
  2957         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, uint(124))");
       
  2958         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 123.0)");
       
  2959         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 0x43211234)");
       
  2960         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 0x10000)");
       
  2961         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, 0x10001)");
       
  2962         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, qInf())");
       
  2963         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, \"Infinity\")");
       
  2964         equals.insert("QScriptValue(int(122)) <=> QScriptValue(engine, QString(\"123\"))");
       
  2965         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0x43211234)");
       
  2966         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0x10000)");
       
  2967         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0x10001)");
       
  2968         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(qInf())");
       
  2969         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(\"Infinity\")");
       
  2970         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, 0x43211234)");
       
  2971         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, 0x10000)");
       
  2972         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, 0x10001)");
       
  2973         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, qInf())");
       
  2974         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(0, \"Infinity\")");
       
  2975         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, 0x43211234)");
       
  2976         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, 0x10000)");
       
  2977         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, 0x10001)");
       
  2978         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, qInf())");
       
  2979         equals.insert("QScriptValue(uint(124)) <=> QScriptValue(engine, \"Infinity\")");
       
  2980         equals.insert("QScriptValue(0) <=> QScriptValue(true)");
       
  2981         equals.insert("QScriptValue(0) <=> QScriptValue(int(122))");
       
  2982         equals.insert("QScriptValue(0) <=> QScriptValue(uint(124))");
       
  2983         equals.insert("QScriptValue(0) <=> QScriptValue(123.0)");
       
  2984         equals.insert("QScriptValue(0) <=> QScriptValue(6.37e-8)");
       
  2985         equals.insert("QScriptValue(0) <=> QScriptValue(0x43211234)");
       
  2986         equals.insert("QScriptValue(0) <=> QScriptValue(0x10000)");
       
  2987         equals.insert("QScriptValue(0) <=> QScriptValue(0x10001)");
       
  2988         equals.insert("QScriptValue(0) <=> QScriptValue(qInf())");
       
  2989         equals.insert("QScriptValue(0) <=> QScriptValue(\"Infinity\")");
       
  2990         equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"123\"))");
       
  2991         equals.insert("QScriptValue(0) <=> QScriptValue(QString(\"12.4\"))");
       
  2992         equals.insert("QScriptValue(0) <=> QScriptValue(0, true)");
       
  2993         equals.insert("QScriptValue(0) <=> QScriptValue(0, int(122))");
       
  2994         equals.insert("QScriptValue(0) <=> QScriptValue(0, uint(124))");
       
  2995         equals.insert("QScriptValue(0) <=> QScriptValue(0, 123.0)");
       
  2996         equals.insert("QScriptValue(0) <=> QScriptValue(0, 6.37e-8)");
       
  2997         equals.insert("QScriptValue(0) <=> QScriptValue(0, 0x43211234)");
       
  2998         equals.insert("QScriptValue(0) <=> QScriptValue(0, 0x10000)");
       
  2999         equals.insert("QScriptValue(0) <=> QScriptValue(0, 0x10001)");
       
  3000         equals.insert("QScriptValue(0) <=> QScriptValue(0, qInf())");
       
  3001         equals.insert("QScriptValue(0) <=> QScriptValue(0, \"Infinity\")");
       
  3002         equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"123\"))");
       
  3003         equals.insert("QScriptValue(0) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3004         equals.insert("QScriptValue(0) <=> QScriptValue(engine, true)");
       
  3005         equals.insert("QScriptValue(0) <=> QScriptValue(engine, int(122))");
       
  3006         equals.insert("QScriptValue(0) <=> QScriptValue(engine, uint(124))");
       
  3007         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 123.0)");
       
  3008         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 6.37e-8)");
       
  3009         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0x43211234)");
       
  3010         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0x10000)");
       
  3011         equals.insert("QScriptValue(0) <=> QScriptValue(engine, 0x10001)");
       
  3012         equals.insert("QScriptValue(0) <=> QScriptValue(engine, qInf())");
       
  3013         equals.insert("QScriptValue(0) <=> QScriptValue(engine, \"Infinity\")");
       
  3014         equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"123\"))");
       
  3015         equals.insert("QScriptValue(0) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3016         equals.insert("QScriptValue(0.0) <=> QScriptValue(true)");
       
  3017         equals.insert("QScriptValue(0.0) <=> QScriptValue(int(122))");
       
  3018         equals.insert("QScriptValue(0.0) <=> QScriptValue(uint(124))");
       
  3019         equals.insert("QScriptValue(0.0) <=> QScriptValue(123.0)");
       
  3020         equals.insert("QScriptValue(0.0) <=> QScriptValue(6.37e-8)");
       
  3021         equals.insert("QScriptValue(0.0) <=> QScriptValue(0x43211234)");
       
  3022         equals.insert("QScriptValue(0.0) <=> QScriptValue(0x10000)");
       
  3023         equals.insert("QScriptValue(0.0) <=> QScriptValue(0x10001)");
       
  3024         equals.insert("QScriptValue(0.0) <=> QScriptValue(qInf())");
       
  3025         equals.insert("QScriptValue(0.0) <=> QScriptValue(\"Infinity\")");
       
  3026         equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"123\"))");
       
  3027         equals.insert("QScriptValue(0.0) <=> QScriptValue(QString(\"12.4\"))");
       
  3028         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, true)");
       
  3029         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, int(122))");
       
  3030         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, uint(124))");
       
  3031         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 123.0)");
       
  3032         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 6.37e-8)");
       
  3033         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0x43211234)");
       
  3034         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0x10000)");
       
  3035         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, 0x10001)");
       
  3036         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, qInf())");
       
  3037         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, \"Infinity\")");
       
  3038         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"123\"))");
       
  3039         equals.insert("QScriptValue(0.0) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3040         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, true)");
       
  3041         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, int(122))");
       
  3042         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, uint(124))");
       
  3043         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 123.0)");
       
  3044         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 6.37e-8)");
       
  3045         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0x43211234)");
       
  3046         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0x10000)");
       
  3047         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, 0x10001)");
       
  3048         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, qInf())");
       
  3049         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, \"Infinity\")");
       
  3050         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"123\"))");
       
  3051         equals.insert("QScriptValue(0.0) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3052         equals.insert("QScriptValue(123.0) <=> QScriptValue(uint(124))");
       
  3053         equals.insert("QScriptValue(123.0) <=> QScriptValue(0x43211234)");
       
  3054         equals.insert("QScriptValue(123.0) <=> QScriptValue(0x10000)");
       
  3055         equals.insert("QScriptValue(123.0) <=> QScriptValue(0x10001)");
       
  3056         equals.insert("QScriptValue(123.0) <=> QScriptValue(qInf())");
       
  3057         equals.insert("QScriptValue(123.0) <=> QScriptValue(\"Infinity\")");
       
  3058         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, uint(124))");
       
  3059         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 0x43211234)");
       
  3060         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 0x10000)");
       
  3061         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, 0x10001)");
       
  3062         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, qInf())");
       
  3063         equals.insert("QScriptValue(123.0) <=> QScriptValue(0, \"Infinity\")");
       
  3064         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, uint(124))");
       
  3065         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 0x43211234)");
       
  3066         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 0x10000)");
       
  3067         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, 0x10001)");
       
  3068         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, qInf())");
       
  3069         equals.insert("QScriptValue(123.0) <=> QScriptValue(engine, \"Infinity\")");
       
  3070         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(true)");
       
  3071         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(int(122))");
       
  3072         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(uint(124))");
       
  3073         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(123.0)");
       
  3074         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0x43211234)");
       
  3075         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0x10000)");
       
  3076         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0x10001)");
       
  3077         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(qInf())");
       
  3078         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(\"Infinity\")");
       
  3079         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(QString(\"123\"))");
       
  3080         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(QString(\"12.4\"))");
       
  3081         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, true)");
       
  3082         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, int(122))");
       
  3083         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, uint(124))");
       
  3084         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 123.0)");
       
  3085         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 0x43211234)");
       
  3086         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 0x10000)");
       
  3087         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, 0x10001)");
       
  3088         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, qInf())");
       
  3089         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, \"Infinity\")");
       
  3090         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, QString(\"123\"))");
       
  3091         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3092         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, true)");
       
  3093         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, int(122))");
       
  3094         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, uint(124))");
       
  3095         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 123.0)");
       
  3096         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 0x43211234)");
       
  3097         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 0x10000)");
       
  3098         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, 0x10001)");
       
  3099         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, qInf())");
       
  3100         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, \"Infinity\")");
       
  3101         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, QString(\"123\"))");
       
  3102         equals.insert("QScriptValue(6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3103         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QScriptValue::NullValue)");
       
  3104         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(true)");
       
  3105         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(false)");
       
  3106         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(int(122))");
       
  3107         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(uint(124))");
       
  3108         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0)");
       
  3109         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0.0)");
       
  3110         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(123.0)");
       
  3111         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(6.37e-8)");
       
  3112         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0x43211234)");
       
  3113         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0x10000)");
       
  3114         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0x10001)");
       
  3115         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(qInf())");
       
  3116         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(\"Infinity\")");
       
  3117         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"\"))");
       
  3118         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString())");
       
  3119         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"0\"))");
       
  3120         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"123\"))");
       
  3121         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(QString(\"12.4\"))");
       
  3122         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  3123         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, true)");
       
  3124         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, false)");
       
  3125         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, int(122))");
       
  3126         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, uint(124))");
       
  3127         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0)");
       
  3128         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0.0)");
       
  3129         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 123.0)");
       
  3130         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  3131         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0x43211234)");
       
  3132         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0x10000)");
       
  3133         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, 0x10001)");
       
  3134         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, qInf())");
       
  3135         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, \"Infinity\")");
       
  3136         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"\"))");
       
  3137         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString())");
       
  3138         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"0\"))");
       
  3139         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"123\"))");
       
  3140         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3141         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  3142         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, true)");
       
  3143         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, false)");
       
  3144         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, int(122))");
       
  3145         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, uint(124))");
       
  3146         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0)");
       
  3147         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0.0)");
       
  3148         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 123.0)");
       
  3149         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  3150         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0x43211234)");
       
  3151         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0x10000)");
       
  3152         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, 0x10001)");
       
  3153         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, qInf())");
       
  3154         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, \"Infinity\")");
       
  3155         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"\"))");
       
  3156         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString())");
       
  3157         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"0\"))");
       
  3158         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"123\"))");
       
  3159         equals.insert("QScriptValue(-6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3160         equals.insert("QScriptValue(-6.37e-8) <=> engine->evaluate(\"[]\")");
       
  3161         equals.insert("QScriptValue(-6.37e-8) <=> engine->evaluate(\"Array.prototype\")");
       
  3162         equals.insert("QScriptValue(-6.37e-8) <=> engine->evaluate(\"new Array()\")");
       
  3163         equals.insert("QScriptValue(-6.37e-8) <=> engine->nullValue()");
       
  3164         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(qInf())");
       
  3165         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(\"Infinity\")");
       
  3166         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, qInf())");
       
  3167         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(0, \"Infinity\")");
       
  3168         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, qInf())");
       
  3169         equals.insert("QScriptValue(0x43211234) <=> QScriptValue(engine, \"Infinity\")");
       
  3170         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x43211234)");
       
  3171         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0x10001)");
       
  3172         equals.insert("QScriptValue(0x10000) <=> QScriptValue(qInf())");
       
  3173         equals.insert("QScriptValue(0x10000) <=> QScriptValue(\"Infinity\")");
       
  3174         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x43211234)");
       
  3175         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, 0x10001)");
       
  3176         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, qInf())");
       
  3177         equals.insert("QScriptValue(0x10000) <=> QScriptValue(0, \"Infinity\")");
       
  3178         equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x43211234)");
       
  3179         equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, 0x10001)");
       
  3180         equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, qInf())");
       
  3181         equals.insert("QScriptValue(0x10000) <=> QScriptValue(engine, \"Infinity\")");
       
  3182         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0x43211234)");
       
  3183         equals.insert("QScriptValue(0x10001) <=> QScriptValue(qInf())");
       
  3184         equals.insert("QScriptValue(0x10001) <=> QScriptValue(\"Infinity\")");
       
  3185         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, 0x43211234)");
       
  3186         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, qInf())");
       
  3187         equals.insert("QScriptValue(0x10001) <=> QScriptValue(0, \"Infinity\")");
       
  3188         equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, 0x43211234)");
       
  3189         equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, qInf())");
       
  3190         equals.insert("QScriptValue(0x10001) <=> QScriptValue(engine, \"Infinity\")");
       
  3191         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QScriptValue::NullValue)");
       
  3192         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(true)");
       
  3193         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(false)");
       
  3194         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(int(122))");
       
  3195         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(uint(124))");
       
  3196         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0)");
       
  3197         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0.0)");
       
  3198         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(123.0)");
       
  3199         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(6.37e-8)");
       
  3200         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(-6.37e-8)");
       
  3201         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0x43211234)");
       
  3202         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0x10000)");
       
  3203         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0x10001)");
       
  3204         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(qInf())");
       
  3205         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(\"Infinity\")");
       
  3206         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"\"))");
       
  3207         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString())");
       
  3208         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"0\"))");
       
  3209         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"123\"))");
       
  3210         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(QString(\"12.4\"))");
       
  3211         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  3212         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, true)");
       
  3213         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, false)");
       
  3214         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, int(122))");
       
  3215         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, uint(124))");
       
  3216         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0)");
       
  3217         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0.0)");
       
  3218         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 123.0)");
       
  3219         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 6.37e-8)");
       
  3220         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, -6.37e-8)");
       
  3221         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0x43211234)");
       
  3222         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0x10000)");
       
  3223         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, 0x10001)");
       
  3224         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, qInf())");
       
  3225         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, \"Infinity\")");
       
  3226         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"\"))");
       
  3227         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString())");
       
  3228         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"0\"))");
       
  3229         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"123\"))");
       
  3230         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3231         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  3232         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, true)");
       
  3233         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, false)");
       
  3234         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, int(122))");
       
  3235         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, uint(124))");
       
  3236         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0)");
       
  3237         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0.0)");
       
  3238         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 123.0)");
       
  3239         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 6.37e-8)");
       
  3240         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, -6.37e-8)");
       
  3241         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0x43211234)");
       
  3242         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0x10000)");
       
  3243         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, 0x10001)");
       
  3244         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, qInf())");
       
  3245         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, \"Infinity\")");
       
  3246         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"\"))");
       
  3247         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString())");
       
  3248         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"0\"))");
       
  3249         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"123\"))");
       
  3250         equals.insert("QScriptValue(-qInf()) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3251         equals.insert("QScriptValue(-qInf()) <=> engine->evaluate(\"[]\")");
       
  3252         equals.insert("QScriptValue(-qInf()) <=> engine->evaluate(\"Array.prototype\")");
       
  3253         equals.insert("QScriptValue(-qInf()) <=> engine->evaluate(\"new Array()\")");
       
  3254         equals.insert("QScriptValue(-qInf()) <=> engine->nullValue()");
       
  3255         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(\"ciao\")");
       
  3256         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3257         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, \"ciao\")");
       
  3258         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3259         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, \"ciao\")");
       
  3260         equals.insert("QScriptValue(\"NaN\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3261         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Object.prototype\")");
       
  3262         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Function.prototype\")");
       
  3263         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Object\")");
       
  3264         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Array\")");
       
  3265         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Number\")");
       
  3266         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"Function\")");
       
  3267         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3268         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3269         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3270         equals.insert("QScriptValue(\"NaN\") <=> engine->evaluate(\"new Object()\")");
       
  3271         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"NaN\")");
       
  3272         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(\"ciao\")");
       
  3273         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3274         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"NaN\")");
       
  3275         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, \"ciao\")");
       
  3276         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3277         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"NaN\")");
       
  3278         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, \"ciao\")");
       
  3279         equals.insert("QScriptValue(\"Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3280         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Object.prototype\")");
       
  3281         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Function.prototype\")");
       
  3282         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Object\")");
       
  3283         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Array\")");
       
  3284         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Number\")");
       
  3285         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"Function\")");
       
  3286         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3287         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3288         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3289         equals.insert("QScriptValue(\"Infinity\") <=> engine->evaluate(\"new Object()\")");
       
  3290         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QScriptValue::NullValue)");
       
  3291         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(true)");
       
  3292         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(false)");
       
  3293         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(int(122))");
       
  3294         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(uint(124))");
       
  3295         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0)");
       
  3296         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0.0)");
       
  3297         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(123.0)");
       
  3298         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(6.37e-8)");
       
  3299         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(-6.37e-8)");
       
  3300         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0x43211234)");
       
  3301         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0x10000)");
       
  3302         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0x10001)");
       
  3303         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(qInf())");
       
  3304         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"NaN\")");
       
  3305         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"Infinity\")");
       
  3306         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(\"ciao\")");
       
  3307         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3308         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString(\"0\"))");
       
  3309         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString(\"123\"))");
       
  3310         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(QString(\"12.4\"))");
       
  3311         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QScriptValue::NullValue)");
       
  3312         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, true)");
       
  3313         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, false)");
       
  3314         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, int(122))");
       
  3315         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, uint(124))");
       
  3316         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0)");
       
  3317         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0.0)");
       
  3318         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 123.0)");
       
  3319         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 6.37e-8)");
       
  3320         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, -6.37e-8)");
       
  3321         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0x43211234)");
       
  3322         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0x10000)");
       
  3323         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, 0x10001)");
       
  3324         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, qInf())");
       
  3325         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"NaN\")");
       
  3326         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  3327         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, \"ciao\")");
       
  3328         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3329         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString(\"0\"))");
       
  3330         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString(\"123\"))");
       
  3331         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(0, QString(\"12.3\"))");
       
  3332         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  3333         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, true)");
       
  3334         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, false)");
       
  3335         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, int(122))");
       
  3336         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, uint(124))");
       
  3337         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0)");
       
  3338         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0.0)");
       
  3339         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 123.0)");
       
  3340         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 6.37e-8)");
       
  3341         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, -6.37e-8)");
       
  3342         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0x43211234)");
       
  3343         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0x10000)");
       
  3344         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, 0x10001)");
       
  3345         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, qInf())");
       
  3346         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"NaN\")");
       
  3347         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  3348         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, \"ciao\")");
       
  3349         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3350         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString(\"0\"))");
       
  3351         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString(\"123\"))");
       
  3352         equals.insert("QScriptValue(\"-Infinity\") <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3353         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Object.prototype\")");
       
  3354         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Function.prototype\")");
       
  3355         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Error.prototype\")");
       
  3356         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Object\")");
       
  3357         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Array\")");
       
  3358         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Number\")");
       
  3359         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"Function\")");
       
  3360         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3361         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3362         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3363         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"/foo/\")");
       
  3364         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"new Object()\")");
       
  3365         equals.insert("QScriptValue(\"-Infinity\") <=> engine->evaluate(\"new Error()\")");
       
  3366         equals.insert("QScriptValue(\"-Infinity\") <=> engine->nullValue()");
       
  3367         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Function.prototype\")");
       
  3368         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Object\")");
       
  3369         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Array\")");
       
  3370         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Number\")");
       
  3371         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"Function\")");
       
  3372         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3373         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3374         equals.insert("QScriptValue(\"ciao\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3375         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function.prototype\")");
       
  3376         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Object\")");
       
  3377         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Array\")");
       
  3378         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Number\")");
       
  3379         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function\")");
       
  3380         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3381         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3382         equals.insert("QScriptValue(QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3383         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(true)");
       
  3384         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(int(122))");
       
  3385         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(uint(124))");
       
  3386         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(123.0)");
       
  3387         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(6.37e-8)");
       
  3388         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0x43211234)");
       
  3389         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0x10000)");
       
  3390         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0x10001)");
       
  3391         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(qInf())");
       
  3392         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"NaN\")");
       
  3393         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"Infinity\")");
       
  3394         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"-Infinity\")");
       
  3395         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(\"ciao\")");
       
  3396         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3397         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"0\"))");
       
  3398         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"123\"))");
       
  3399         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(QString(\"12.4\"))");
       
  3400         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, true)");
       
  3401         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, int(122))");
       
  3402         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, uint(124))");
       
  3403         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 123.0)");
       
  3404         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 6.37e-8)");
       
  3405         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0x43211234)");
       
  3406         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0x10000)");
       
  3407         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, 0x10001)");
       
  3408         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, qInf())");
       
  3409         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"NaN\")");
       
  3410         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"Infinity\")");
       
  3411         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"-Infinity\")");
       
  3412         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, \"ciao\")");
       
  3413         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3414         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"0\"))");
       
  3415         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"123\"))");
       
  3416         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3417         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, true)");
       
  3418         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, int(122))");
       
  3419         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, uint(124))");
       
  3420         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 123.0)");
       
  3421         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 6.37e-8)");
       
  3422         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0x43211234)");
       
  3423         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0x10000)");
       
  3424         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, 0x10001)");
       
  3425         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, qInf())");
       
  3426         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"NaN\")");
       
  3427         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"Infinity\")");
       
  3428         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"-Infinity\")");
       
  3429         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, \"ciao\")");
       
  3430         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3431         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  3432         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  3433         equals.insert("QScriptValue(QString(\"\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3434         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Object.prototype\")");
       
  3435         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Function.prototype\")");
       
  3436         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Error.prototype\")");
       
  3437         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Object\")");
       
  3438         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Array\")");
       
  3439         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Number\")");
       
  3440         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"Function\")");
       
  3441         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3442         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3443         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3444         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"/foo/\")");
       
  3445         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"new Object()\")");
       
  3446         equals.insert("QScriptValue(QString(\"\")) <=> engine->evaluate(\"new Error()\")");
       
  3447         equals.insert("QScriptValue(QString()) <=> QScriptValue(true)");
       
  3448         equals.insert("QScriptValue(QString()) <=> QScriptValue(int(122))");
       
  3449         equals.insert("QScriptValue(QString()) <=> QScriptValue(uint(124))");
       
  3450         equals.insert("QScriptValue(QString()) <=> QScriptValue(123.0)");
       
  3451         equals.insert("QScriptValue(QString()) <=> QScriptValue(6.37e-8)");
       
  3452         equals.insert("QScriptValue(QString()) <=> QScriptValue(0x43211234)");
       
  3453         equals.insert("QScriptValue(QString()) <=> QScriptValue(0x10000)");
       
  3454         equals.insert("QScriptValue(QString()) <=> QScriptValue(0x10001)");
       
  3455         equals.insert("QScriptValue(QString()) <=> QScriptValue(qInf())");
       
  3456         equals.insert("QScriptValue(QString()) <=> QScriptValue(\"NaN\")");
       
  3457         equals.insert("QScriptValue(QString()) <=> QScriptValue(\"Infinity\")");
       
  3458         equals.insert("QScriptValue(QString()) <=> QScriptValue(\"-Infinity\")");
       
  3459         equals.insert("QScriptValue(QString()) <=> QScriptValue(\"ciao\")");
       
  3460         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3461         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"0\"))");
       
  3462         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"123\"))");
       
  3463         equals.insert("QScriptValue(QString()) <=> QScriptValue(QString(\"12.4\"))");
       
  3464         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, true)");
       
  3465         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, int(122))");
       
  3466         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, uint(124))");
       
  3467         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 123.0)");
       
  3468         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 6.37e-8)");
       
  3469         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0x43211234)");
       
  3470         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0x10000)");
       
  3471         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, 0x10001)");
       
  3472         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, qInf())");
       
  3473         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"NaN\")");
       
  3474         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"Infinity\")");
       
  3475         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"-Infinity\")");
       
  3476         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, \"ciao\")");
       
  3477         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3478         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"0\"))");
       
  3479         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"123\"))");
       
  3480         equals.insert("QScriptValue(QString()) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3481         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, true)");
       
  3482         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, int(122))");
       
  3483         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, uint(124))");
       
  3484         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 123.0)");
       
  3485         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 6.37e-8)");
       
  3486         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0x43211234)");
       
  3487         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0x10000)");
       
  3488         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, 0x10001)");
       
  3489         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, qInf())");
       
  3490         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"NaN\")");
       
  3491         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"Infinity\")");
       
  3492         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"-Infinity\")");
       
  3493         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, \"ciao\")");
       
  3494         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3495         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"0\"))");
       
  3496         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"123\"))");
       
  3497         equals.insert("QScriptValue(QString()) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3498         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Object.prototype\")");
       
  3499         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Function.prototype\")");
       
  3500         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Error.prototype\")");
       
  3501         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Object\")");
       
  3502         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Array\")");
       
  3503         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Number\")");
       
  3504         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"Function\")");
       
  3505         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3506         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3507         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3508         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"/foo/\")");
       
  3509         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"new Object()\")");
       
  3510         equals.insert("QScriptValue(QString()) <=> engine->evaluate(\"new Error()\")");
       
  3511         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(true)");
       
  3512         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(int(122))");
       
  3513         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(uint(124))");
       
  3514         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(123.0)");
       
  3515         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(6.37e-8)");
       
  3516         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0x43211234)");
       
  3517         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0x10000)");
       
  3518         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0x10001)");
       
  3519         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(qInf())");
       
  3520         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(\"NaN\")");
       
  3521         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(\"Infinity\")");
       
  3522         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(\"ciao\")");
       
  3523         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3524         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"123\"))");
       
  3525         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(QString(\"12.4\"))");
       
  3526         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, true)");
       
  3527         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, int(122))");
       
  3528         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, uint(124))");
       
  3529         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 123.0)");
       
  3530         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 6.37e-8)");
       
  3531         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0x43211234)");
       
  3532         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0x10000)");
       
  3533         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, 0x10001)");
       
  3534         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, qInf())");
       
  3535         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, \"NaN\")");
       
  3536         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, \"Infinity\")");
       
  3537         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, \"ciao\")");
       
  3538         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3539         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"123\"))");
       
  3540         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3541         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, true)");
       
  3542         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, int(122))");
       
  3543         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, uint(124))");
       
  3544         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 123.0)");
       
  3545         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 6.37e-8)");
       
  3546         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0x43211234)");
       
  3547         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0x10000)");
       
  3548         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, 0x10001)");
       
  3549         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, qInf())");
       
  3550         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, \"NaN\")");
       
  3551         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, \"Infinity\")");
       
  3552         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, \"ciao\")");
       
  3553         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3554         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  3555         equals.insert("QScriptValue(QString(\"0\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3556         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Object.prototype\")");
       
  3557         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Function.prototype\")");
       
  3558         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Error.prototype\")");
       
  3559         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Object\")");
       
  3560         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Array\")");
       
  3561         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Number\")");
       
  3562         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"Function\")");
       
  3563         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3564         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3565         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3566         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"new Object()\")");
       
  3567         equals.insert("QScriptValue(QString(\"0\")) <=> engine->evaluate(\"new Error()\")");
       
  3568         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(uint(124))");
       
  3569         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0x43211234)");
       
  3570         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0x10000)");
       
  3571         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0x10001)");
       
  3572         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(qInf())");
       
  3573         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(\"NaN\")");
       
  3574         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(\"Infinity\")");
       
  3575         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(\"ciao\")");
       
  3576         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3577         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, uint(124))");
       
  3578         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 0x43211234)");
       
  3579         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 0x10000)");
       
  3580         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, 0x10001)");
       
  3581         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, qInf())");
       
  3582         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, \"NaN\")");
       
  3583         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, \"Infinity\")");
       
  3584         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, \"ciao\")");
       
  3585         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3586         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, uint(124))");
       
  3587         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 0x43211234)");
       
  3588         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 0x10000)");
       
  3589         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, 0x10001)");
       
  3590         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, qInf())");
       
  3591         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, \"NaN\")");
       
  3592         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, \"Infinity\")");
       
  3593         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, \"ciao\")");
       
  3594         equals.insert("QScriptValue(QString(\"123\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3595         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Object.prototype\")");
       
  3596         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Function.prototype\")");
       
  3597         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Error.prototype\")");
       
  3598         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Object\")");
       
  3599         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Array\")");
       
  3600         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Number\")");
       
  3601         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"Function\")");
       
  3602         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3603         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3604         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3605         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"new Object()\")");
       
  3606         equals.insert("QScriptValue(QString(\"123\")) <=> engine->evaluate(\"new Error()\")");
       
  3607         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(int(122))");
       
  3608         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(uint(124))");
       
  3609         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(123.0)");
       
  3610         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0x43211234)");
       
  3611         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0x10000)");
       
  3612         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0x10001)");
       
  3613         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(qInf())");
       
  3614         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(\"NaN\")");
       
  3615         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(\"Infinity\")");
       
  3616         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(\"ciao\")");
       
  3617         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  3618         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(QString(\"123\"))");
       
  3619         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, int(122))");
       
  3620         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, uint(124))");
       
  3621         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 123.0)");
       
  3622         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 0x43211234)");
       
  3623         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 0x10000)");
       
  3624         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, 0x10001)");
       
  3625         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, qInf())");
       
  3626         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, \"NaN\")");
       
  3627         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, \"Infinity\")");
       
  3628         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, \"ciao\")");
       
  3629         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  3630         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(0, QString(\"123\"))");
       
  3631         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, int(122))");
       
  3632         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, uint(124))");
       
  3633         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 123.0)");
       
  3634         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 0x43211234)");
       
  3635         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 0x10000)");
       
  3636         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, 0x10001)");
       
  3637         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, qInf())");
       
  3638         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, \"NaN\")");
       
  3639         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, \"Infinity\")");
       
  3640         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, \"ciao\")");
       
  3641         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  3642         equals.insert("QScriptValue(QString(\"12.4\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  3643         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Object.prototype\")");
       
  3644         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Function.prototype\")");
       
  3645         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Error.prototype\")");
       
  3646         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Object\")");
       
  3647         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Array\")");
       
  3648         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Number\")");
       
  3649         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"Function\")");
       
  3650         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  3651         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  3652         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  3653         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"new Object()\")");
       
  3654         equals.insert("QScriptValue(QString(\"12.4\")) <=> engine->evaluate(\"new Error()\")");
       
  3655         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(true)");
       
  3656         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(int(122))");
       
  3657         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(uint(124))");
       
  3658         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(123.0)");
       
  3659         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(6.37e-8)");
       
  3660         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0x43211234)");
       
  3661         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0x10000)");
       
  3662         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0x10001)");
       
  3663         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(qInf())");
       
  3664         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(\"Infinity\")");
       
  3665         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QString(\"123\"))");
       
  3666         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(QString(\"12.4\"))");
       
  3667         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, true)");
       
  3668         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, int(122))");
       
  3669         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, uint(124))");
       
  3670         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 123.0)");
       
  3671         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 6.37e-8)");
       
  3672         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 0x43211234)");
       
  3673         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 0x10000)");
       
  3674         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, 0x10001)");
       
  3675         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, qInf())");
       
  3676         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, \"Infinity\")");
       
  3677         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"123\"))");
       
  3678         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3679         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, true)");
       
  3680         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, int(122))");
       
  3681         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, uint(124))");
       
  3682         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 123.0)");
       
  3683         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 6.37e-8)");
       
  3684         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 0x43211234)");
       
  3685         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10000)");
       
  3686         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10001)");
       
  3687         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, qInf())");
       
  3688         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, \"Infinity\")");
       
  3689         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"123\"))");
       
  3690         equals.insert("QScriptValue(0, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3691         equals.insert("QScriptValue(0, true) <=> QScriptValue(int(122))");
       
  3692         equals.insert("QScriptValue(0, true) <=> QScriptValue(uint(124))");
       
  3693         equals.insert("QScriptValue(0, true) <=> QScriptValue(123.0)");
       
  3694         equals.insert("QScriptValue(0, true) <=> QScriptValue(0x43211234)");
       
  3695         equals.insert("QScriptValue(0, true) <=> QScriptValue(0x10000)");
       
  3696         equals.insert("QScriptValue(0, true) <=> QScriptValue(0x10001)");
       
  3697         equals.insert("QScriptValue(0, true) <=> QScriptValue(qInf())");
       
  3698         equals.insert("QScriptValue(0, true) <=> QScriptValue(\"Infinity\")");
       
  3699         equals.insert("QScriptValue(0, true) <=> QScriptValue(QString(\"123\"))");
       
  3700         equals.insert("QScriptValue(0, true) <=> QScriptValue(QString(\"12.4\"))");
       
  3701         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, int(122))");
       
  3702         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, uint(124))");
       
  3703         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 123.0)");
       
  3704         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 0x43211234)");
       
  3705         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 0x10000)");
       
  3706         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, 0x10001)");
       
  3707         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, qInf())");
       
  3708         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, \"Infinity\")");
       
  3709         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, QString(\"123\"))");
       
  3710         equals.insert("QScriptValue(0, true) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3711         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, int(122))");
       
  3712         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, uint(124))");
       
  3713         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 123.0)");
       
  3714         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 0x43211234)");
       
  3715         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 0x10000)");
       
  3716         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, 0x10001)");
       
  3717         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, qInf())");
       
  3718         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, \"Infinity\")");
       
  3719         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, QString(\"123\"))");
       
  3720         equals.insert("QScriptValue(0, true) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3721         equals.insert("QScriptValue(0, false) <=> QScriptValue(true)");
       
  3722         equals.insert("QScriptValue(0, false) <=> QScriptValue(int(122))");
       
  3723         equals.insert("QScriptValue(0, false) <=> QScriptValue(uint(124))");
       
  3724         equals.insert("QScriptValue(0, false) <=> QScriptValue(123.0)");
       
  3725         equals.insert("QScriptValue(0, false) <=> QScriptValue(6.37e-8)");
       
  3726         equals.insert("QScriptValue(0, false) <=> QScriptValue(0x43211234)");
       
  3727         equals.insert("QScriptValue(0, false) <=> QScriptValue(0x10000)");
       
  3728         equals.insert("QScriptValue(0, false) <=> QScriptValue(0x10001)");
       
  3729         equals.insert("QScriptValue(0, false) <=> QScriptValue(qInf())");
       
  3730         equals.insert("QScriptValue(0, false) <=> QScriptValue(\"Infinity\")");
       
  3731         equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"123\"))");
       
  3732         equals.insert("QScriptValue(0, false) <=> QScriptValue(QString(\"12.4\"))");
       
  3733         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, true)");
       
  3734         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, int(122))");
       
  3735         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, uint(124))");
       
  3736         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 123.0)");
       
  3737         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 6.37e-8)");
       
  3738         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0x43211234)");
       
  3739         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0x10000)");
       
  3740         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, 0x10001)");
       
  3741         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, qInf())");
       
  3742         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, \"Infinity\")");
       
  3743         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"123\"))");
       
  3744         equals.insert("QScriptValue(0, false) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3745         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, true)");
       
  3746         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, int(122))");
       
  3747         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, uint(124))");
       
  3748         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 123.0)");
       
  3749         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 6.37e-8)");
       
  3750         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0x43211234)");
       
  3751         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0x10000)");
       
  3752         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, 0x10001)");
       
  3753         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, qInf())");
       
  3754         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, \"Infinity\")");
       
  3755         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"123\"))");
       
  3756         equals.insert("QScriptValue(0, false) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3757         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(uint(124))");
       
  3758         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(123.0)");
       
  3759         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0x43211234)");
       
  3760         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0x10000)");
       
  3761         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0x10001)");
       
  3762         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(qInf())");
       
  3763         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(\"Infinity\")");
       
  3764         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(QString(\"123\"))");
       
  3765         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, uint(124))");
       
  3766         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 123.0)");
       
  3767         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 0x43211234)");
       
  3768         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 0x10000)");
       
  3769         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, 0x10001)");
       
  3770         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, qInf())");
       
  3771         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, \"Infinity\")");
       
  3772         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(0, QString(\"123\"))");
       
  3773         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, uint(124))");
       
  3774         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 123.0)");
       
  3775         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 0x43211234)");
       
  3776         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 0x10000)");
       
  3777         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, 0x10001)");
       
  3778         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, qInf())");
       
  3779         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, \"Infinity\")");
       
  3780         equals.insert("QScriptValue(0, int(122)) <=> QScriptValue(engine, QString(\"123\"))");
       
  3781         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0x43211234)");
       
  3782         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0x10000)");
       
  3783         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0x10001)");
       
  3784         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(qInf())");
       
  3785         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(\"Infinity\")");
       
  3786         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, 0x43211234)");
       
  3787         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, 0x10000)");
       
  3788         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, 0x10001)");
       
  3789         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, qInf())");
       
  3790         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(0, \"Infinity\")");
       
  3791         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, 0x43211234)");
       
  3792         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, 0x10000)");
       
  3793         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, 0x10001)");
       
  3794         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, qInf())");
       
  3795         equals.insert("QScriptValue(0, uint(124)) <=> QScriptValue(engine, \"Infinity\")");
       
  3796         equals.insert("QScriptValue(0, 0) <=> QScriptValue(true)");
       
  3797         equals.insert("QScriptValue(0, 0) <=> QScriptValue(int(122))");
       
  3798         equals.insert("QScriptValue(0, 0) <=> QScriptValue(uint(124))");
       
  3799         equals.insert("QScriptValue(0, 0) <=> QScriptValue(123.0)");
       
  3800         equals.insert("QScriptValue(0, 0) <=> QScriptValue(6.37e-8)");
       
  3801         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0x43211234)");
       
  3802         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0x10000)");
       
  3803         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0x10001)");
       
  3804         equals.insert("QScriptValue(0, 0) <=> QScriptValue(qInf())");
       
  3805         equals.insert("QScriptValue(0, 0) <=> QScriptValue(\"Infinity\")");
       
  3806         equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"123\"))");
       
  3807         equals.insert("QScriptValue(0, 0) <=> QScriptValue(QString(\"12.4\"))");
       
  3808         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, true)");
       
  3809         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, int(122))");
       
  3810         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, uint(124))");
       
  3811         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 123.0)");
       
  3812         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 6.37e-8)");
       
  3813         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0x43211234)");
       
  3814         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0x10000)");
       
  3815         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, 0x10001)");
       
  3816         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, qInf())");
       
  3817         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, \"Infinity\")");
       
  3818         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"123\"))");
       
  3819         equals.insert("QScriptValue(0, 0) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3820         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, true)");
       
  3821         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, int(122))");
       
  3822         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, uint(124))");
       
  3823         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 123.0)");
       
  3824         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 6.37e-8)");
       
  3825         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0x43211234)");
       
  3826         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0x10000)");
       
  3827         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, 0x10001)");
       
  3828         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, qInf())");
       
  3829         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, \"Infinity\")");
       
  3830         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"123\"))");
       
  3831         equals.insert("QScriptValue(0, 0) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3832         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(true)");
       
  3833         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(int(122))");
       
  3834         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(uint(124))");
       
  3835         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(123.0)");
       
  3836         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(6.37e-8)");
       
  3837         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0x43211234)");
       
  3838         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0x10000)");
       
  3839         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0x10001)");
       
  3840         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(qInf())");
       
  3841         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(\"Infinity\")");
       
  3842         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"123\"))");
       
  3843         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(QString(\"12.4\"))");
       
  3844         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, true)");
       
  3845         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, int(122))");
       
  3846         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, uint(124))");
       
  3847         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 123.0)");
       
  3848         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 6.37e-8)");
       
  3849         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0x43211234)");
       
  3850         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0x10000)");
       
  3851         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, 0x10001)");
       
  3852         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, qInf())");
       
  3853         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, \"Infinity\")");
       
  3854         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"123\"))");
       
  3855         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3856         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, true)");
       
  3857         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, int(122))");
       
  3858         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, uint(124))");
       
  3859         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 123.0)");
       
  3860         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 6.37e-8)");
       
  3861         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0x43211234)");
       
  3862         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0x10000)");
       
  3863         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, 0x10001)");
       
  3864         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, qInf())");
       
  3865         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, \"Infinity\")");
       
  3866         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"123\"))");
       
  3867         equals.insert("QScriptValue(0, 0.0) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3868         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(uint(124))");
       
  3869         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0x43211234)");
       
  3870         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0x10000)");
       
  3871         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0x10001)");
       
  3872         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(qInf())");
       
  3873         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(\"Infinity\")");
       
  3874         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, uint(124))");
       
  3875         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 0x43211234)");
       
  3876         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 0x10000)");
       
  3877         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, 0x10001)");
       
  3878         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, qInf())");
       
  3879         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(0, \"Infinity\")");
       
  3880         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, uint(124))");
       
  3881         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 0x43211234)");
       
  3882         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 0x10000)");
       
  3883         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, 0x10001)");
       
  3884         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, qInf())");
       
  3885         equals.insert("QScriptValue(0, 123.0) <=> QScriptValue(engine, \"Infinity\")");
       
  3886         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(true)");
       
  3887         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(int(122))");
       
  3888         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(uint(124))");
       
  3889         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(123.0)");
       
  3890         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0x43211234)");
       
  3891         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0x10000)");
       
  3892         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0x10001)");
       
  3893         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(qInf())");
       
  3894         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(\"Infinity\")");
       
  3895         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(QString(\"123\"))");
       
  3896         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(QString(\"12.4\"))");
       
  3897         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, true)");
       
  3898         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, int(122))");
       
  3899         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, uint(124))");
       
  3900         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 123.0)");
       
  3901         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 0x43211234)");
       
  3902         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 0x10000)");
       
  3903         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, 0x10001)");
       
  3904         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, qInf())");
       
  3905         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, \"Infinity\")");
       
  3906         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, QString(\"123\"))");
       
  3907         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3908         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, true)");
       
  3909         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, int(122))");
       
  3910         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, uint(124))");
       
  3911         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 123.0)");
       
  3912         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 0x43211234)");
       
  3913         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 0x10000)");
       
  3914         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, 0x10001)");
       
  3915         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, qInf())");
       
  3916         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, \"Infinity\")");
       
  3917         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, QString(\"123\"))");
       
  3918         equals.insert("QScriptValue(0, 6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3919         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QScriptValue::NullValue)");
       
  3920         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(true)");
       
  3921         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(false)");
       
  3922         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(int(122))");
       
  3923         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(uint(124))");
       
  3924         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0)");
       
  3925         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0.0)");
       
  3926         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(123.0)");
       
  3927         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(6.37e-8)");
       
  3928         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0x43211234)");
       
  3929         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0x10000)");
       
  3930         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0x10001)");
       
  3931         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(qInf())");
       
  3932         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(\"Infinity\")");
       
  3933         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"\"))");
       
  3934         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString())");
       
  3935         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"0\"))");
       
  3936         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"123\"))");
       
  3937         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(QString(\"12.4\"))");
       
  3938         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  3939         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, true)");
       
  3940         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, false)");
       
  3941         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, int(122))");
       
  3942         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, uint(124))");
       
  3943         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0)");
       
  3944         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0.0)");
       
  3945         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 123.0)");
       
  3946         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  3947         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0x43211234)");
       
  3948         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0x10000)");
       
  3949         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, 0x10001)");
       
  3950         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, qInf())");
       
  3951         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, \"Infinity\")");
       
  3952         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"\"))");
       
  3953         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString())");
       
  3954         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"0\"))");
       
  3955         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"123\"))");
       
  3956         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))");
       
  3957         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  3958         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, true)");
       
  3959         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, false)");
       
  3960         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, int(122))");
       
  3961         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, uint(124))");
       
  3962         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0)");
       
  3963         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0.0)");
       
  3964         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 123.0)");
       
  3965         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  3966         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0x43211234)");
       
  3967         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0x10000)");
       
  3968         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, 0x10001)");
       
  3969         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, qInf())");
       
  3970         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, \"Infinity\")");
       
  3971         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"\"))");
       
  3972         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString())");
       
  3973         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"0\"))");
       
  3974         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"123\"))");
       
  3975         equals.insert("QScriptValue(0, -6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  3976         equals.insert("QScriptValue(0, -6.37e-8) <=> engine->evaluate(\"[]\")");
       
  3977         equals.insert("QScriptValue(0, -6.37e-8) <=> engine->evaluate(\"Array.prototype\")");
       
  3978         equals.insert("QScriptValue(0, -6.37e-8) <=> engine->evaluate(\"new Array()\")");
       
  3979         equals.insert("QScriptValue(0, -6.37e-8) <=> engine->nullValue()");
       
  3980         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(qInf())");
       
  3981         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(\"Infinity\")");
       
  3982         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, qInf())");
       
  3983         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(0, \"Infinity\")");
       
  3984         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, qInf())");
       
  3985         equals.insert("QScriptValue(0, 0x43211234) <=> QScriptValue(engine, \"Infinity\")");
       
  3986         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x43211234)");
       
  3987         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0x10001)");
       
  3988         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(qInf())");
       
  3989         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(\"Infinity\")");
       
  3990         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x43211234)");
       
  3991         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, 0x10001)");
       
  3992         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, qInf())");
       
  3993         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(0, \"Infinity\")");
       
  3994         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x43211234)");
       
  3995         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, 0x10001)");
       
  3996         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, qInf())");
       
  3997         equals.insert("QScriptValue(0, 0x10000) <=> QScriptValue(engine, \"Infinity\")");
       
  3998         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0x43211234)");
       
  3999         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(qInf())");
       
  4000         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(\"Infinity\")");
       
  4001         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, 0x43211234)");
       
  4002         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, qInf())");
       
  4003         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(0, \"Infinity\")");
       
  4004         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, 0x43211234)");
       
  4005         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, qInf())");
       
  4006         equals.insert("QScriptValue(0, 0x10001) <=> QScriptValue(engine, \"Infinity\")");
       
  4007         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QScriptValue::NullValue)");
       
  4008         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(true)");
       
  4009         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(false)");
       
  4010         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(int(122))");
       
  4011         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(uint(124))");
       
  4012         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0)");
       
  4013         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0.0)");
       
  4014         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(123.0)");
       
  4015         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(6.37e-8)");
       
  4016         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(-6.37e-8)");
       
  4017         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0x43211234)");
       
  4018         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0x10000)");
       
  4019         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0x10001)");
       
  4020         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(qInf())");
       
  4021         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(\"Infinity\")");
       
  4022         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"\"))");
       
  4023         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString())");
       
  4024         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"0\"))");
       
  4025         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"123\"))");
       
  4026         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(QString(\"12.4\"))");
       
  4027         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  4028         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, true)");
       
  4029         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, false)");
       
  4030         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, int(122))");
       
  4031         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, uint(124))");
       
  4032         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0)");
       
  4033         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0.0)");
       
  4034         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 123.0)");
       
  4035         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 6.37e-8)");
       
  4036         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, -6.37e-8)");
       
  4037         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0x43211234)");
       
  4038         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0x10000)");
       
  4039         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, 0x10001)");
       
  4040         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, qInf())");
       
  4041         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, \"Infinity\")");
       
  4042         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"\"))");
       
  4043         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString())");
       
  4044         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"0\"))");
       
  4045         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"123\"))");
       
  4046         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4047         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  4048         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, true)");
       
  4049         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, false)");
       
  4050         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, int(122))");
       
  4051         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, uint(124))");
       
  4052         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0)");
       
  4053         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0.0)");
       
  4054         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 123.0)");
       
  4055         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 6.37e-8)");
       
  4056         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, -6.37e-8)");
       
  4057         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0x43211234)");
       
  4058         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0x10000)");
       
  4059         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, 0x10001)");
       
  4060         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, qInf())");
       
  4061         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, \"Infinity\")");
       
  4062         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"\"))");
       
  4063         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString())");
       
  4064         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"0\"))");
       
  4065         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"123\"))");
       
  4066         equals.insert("QScriptValue(0, -qInf()) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4067         equals.insert("QScriptValue(0, -qInf()) <=> engine->evaluate(\"[]\")");
       
  4068         equals.insert("QScriptValue(0, -qInf()) <=> engine->evaluate(\"Array.prototype\")");
       
  4069         equals.insert("QScriptValue(0, -qInf()) <=> engine->evaluate(\"new Array()\")");
       
  4070         equals.insert("QScriptValue(0, -qInf()) <=> engine->nullValue()");
       
  4071         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(\"ciao\")");
       
  4072         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4073         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, \"ciao\")");
       
  4074         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4075         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, \"ciao\")");
       
  4076         equals.insert("QScriptValue(0, \"NaN\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4077         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Object.prototype\")");
       
  4078         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Function.prototype\")");
       
  4079         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Object\")");
       
  4080         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Array\")");
       
  4081         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Number\")");
       
  4082         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"Function\")");
       
  4083         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4084         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4085         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4086         equals.insert("QScriptValue(0, \"NaN\") <=> engine->evaluate(\"new Object()\")");
       
  4087         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"NaN\")");
       
  4088         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(\"ciao\")");
       
  4089         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4090         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"NaN\")");
       
  4091         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, \"ciao\")");
       
  4092         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4093         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"NaN\")");
       
  4094         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, \"ciao\")");
       
  4095         equals.insert("QScriptValue(0, \"Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4096         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Object.prototype\")");
       
  4097         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Function.prototype\")");
       
  4098         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Object\")");
       
  4099         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Array\")");
       
  4100         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Number\")");
       
  4101         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"Function\")");
       
  4102         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4103         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4104         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4105         equals.insert("QScriptValue(0, \"Infinity\") <=> engine->evaluate(\"new Object()\")");
       
  4106         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QScriptValue::NullValue)");
       
  4107         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(true)");
       
  4108         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(false)");
       
  4109         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(int(122))");
       
  4110         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(uint(124))");
       
  4111         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0)");
       
  4112         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0.0)");
       
  4113         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(123.0)");
       
  4114         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(6.37e-8)");
       
  4115         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(-6.37e-8)");
       
  4116         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0x43211234)");
       
  4117         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0x10000)");
       
  4118         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0x10001)");
       
  4119         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(qInf())");
       
  4120         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"NaN\")");
       
  4121         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"Infinity\")");
       
  4122         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(\"ciao\")");
       
  4123         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4124         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString(\"0\"))");
       
  4125         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString(\"123\"))");
       
  4126         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(QString(\"12.4\"))");
       
  4127         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QScriptValue::NullValue)");
       
  4128         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, true)");
       
  4129         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, false)");
       
  4130         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, int(122))");
       
  4131         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, uint(124))");
       
  4132         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0)");
       
  4133         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0.0)");
       
  4134         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 123.0)");
       
  4135         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 6.37e-8)");
       
  4136         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, -6.37e-8)");
       
  4137         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0x43211234)");
       
  4138         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0x10000)");
       
  4139         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, 0x10001)");
       
  4140         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, qInf())");
       
  4141         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"NaN\")");
       
  4142         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  4143         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, \"ciao\")");
       
  4144         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4145         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString(\"0\"))");
       
  4146         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString(\"123\"))");
       
  4147         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(0, QString(\"12.3\"))");
       
  4148         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  4149         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, true)");
       
  4150         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, false)");
       
  4151         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, int(122))");
       
  4152         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, uint(124))");
       
  4153         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0)");
       
  4154         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0.0)");
       
  4155         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 123.0)");
       
  4156         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 6.37e-8)");
       
  4157         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, -6.37e-8)");
       
  4158         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0x43211234)");
       
  4159         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0x10000)");
       
  4160         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, 0x10001)");
       
  4161         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, qInf())");
       
  4162         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"NaN\")");
       
  4163         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  4164         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, \"ciao\")");
       
  4165         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4166         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString(\"0\"))");
       
  4167         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString(\"123\"))");
       
  4168         equals.insert("QScriptValue(0, \"-Infinity\") <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4169         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Object.prototype\")");
       
  4170         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Function.prototype\")");
       
  4171         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Error.prototype\")");
       
  4172         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Object\")");
       
  4173         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Array\")");
       
  4174         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Number\")");
       
  4175         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"Function\")");
       
  4176         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4177         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4178         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4179         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"/foo/\")");
       
  4180         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"new Object()\")");
       
  4181         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->evaluate(\"new Error()\")");
       
  4182         equals.insert("QScriptValue(0, \"-Infinity\") <=> engine->nullValue()");
       
  4183         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Function.prototype\")");
       
  4184         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Object\")");
       
  4185         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Array\")");
       
  4186         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Number\")");
       
  4187         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"Function\")");
       
  4188         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4189         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4190         equals.insert("QScriptValue(0, \"ciao\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4191         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function.prototype\")");
       
  4192         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Object\")");
       
  4193         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Array\")");
       
  4194         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Number\")");
       
  4195         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function\")");
       
  4196         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4197         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4198         equals.insert("QScriptValue(0, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4199         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(true)");
       
  4200         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(int(122))");
       
  4201         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(uint(124))");
       
  4202         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(123.0)");
       
  4203         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(6.37e-8)");
       
  4204         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0x43211234)");
       
  4205         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0x10000)");
       
  4206         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0x10001)");
       
  4207         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(qInf())");
       
  4208         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"NaN\")");
       
  4209         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"Infinity\")");
       
  4210         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"-Infinity\")");
       
  4211         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(\"ciao\")");
       
  4212         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4213         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"0\"))");
       
  4214         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"123\"))");
       
  4215         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(QString(\"12.4\"))");
       
  4216         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, true)");
       
  4217         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, int(122))");
       
  4218         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, uint(124))");
       
  4219         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 123.0)");
       
  4220         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 6.37e-8)");
       
  4221         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0x43211234)");
       
  4222         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0x10000)");
       
  4223         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, 0x10001)");
       
  4224         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, qInf())");
       
  4225         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"NaN\")");
       
  4226         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"Infinity\")");
       
  4227         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"-Infinity\")");
       
  4228         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, \"ciao\")");
       
  4229         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4230         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"0\"))");
       
  4231         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"123\"))");
       
  4232         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4233         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, true)");
       
  4234         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, int(122))");
       
  4235         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, uint(124))");
       
  4236         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 123.0)");
       
  4237         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 6.37e-8)");
       
  4238         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0x43211234)");
       
  4239         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0x10000)");
       
  4240         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, 0x10001)");
       
  4241         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, qInf())");
       
  4242         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"NaN\")");
       
  4243         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"Infinity\")");
       
  4244         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"-Infinity\")");
       
  4245         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, \"ciao\")");
       
  4246         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4247         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  4248         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  4249         equals.insert("QScriptValue(0, QString(\"\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4250         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Object.prototype\")");
       
  4251         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Function.prototype\")");
       
  4252         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Error.prototype\")");
       
  4253         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Object\")");
       
  4254         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Array\")");
       
  4255         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Number\")");
       
  4256         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"Function\")");
       
  4257         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4258         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4259         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4260         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"/foo/\")");
       
  4261         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"new Object()\")");
       
  4262         equals.insert("QScriptValue(0, QString(\"\")) <=> engine->evaluate(\"new Error()\")");
       
  4263         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(true)");
       
  4264         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(int(122))");
       
  4265         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(uint(124))");
       
  4266         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(123.0)");
       
  4267         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(6.37e-8)");
       
  4268         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0x43211234)");
       
  4269         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0x10000)");
       
  4270         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0x10001)");
       
  4271         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(qInf())");
       
  4272         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"NaN\")");
       
  4273         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"Infinity\")");
       
  4274         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"-Infinity\")");
       
  4275         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(\"ciao\")");
       
  4276         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4277         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"0\"))");
       
  4278         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"123\"))");
       
  4279         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(QString(\"12.4\"))");
       
  4280         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, true)");
       
  4281         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, int(122))");
       
  4282         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, uint(124))");
       
  4283         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 123.0)");
       
  4284         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 6.37e-8)");
       
  4285         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0x43211234)");
       
  4286         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0x10000)");
       
  4287         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, 0x10001)");
       
  4288         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, qInf())");
       
  4289         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"NaN\")");
       
  4290         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"Infinity\")");
       
  4291         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"-Infinity\")");
       
  4292         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, \"ciao\")");
       
  4293         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4294         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"0\"))");
       
  4295         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"123\"))");
       
  4296         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4297         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, true)");
       
  4298         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, int(122))");
       
  4299         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, uint(124))");
       
  4300         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 123.0)");
       
  4301         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 6.37e-8)");
       
  4302         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0x43211234)");
       
  4303         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0x10000)");
       
  4304         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, 0x10001)");
       
  4305         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, qInf())");
       
  4306         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"NaN\")");
       
  4307         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"Infinity\")");
       
  4308         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"-Infinity\")");
       
  4309         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, \"ciao\")");
       
  4310         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4311         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"0\"))");
       
  4312         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"123\"))");
       
  4313         equals.insert("QScriptValue(0, QString()) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4314         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Object.prototype\")");
       
  4315         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Function.prototype\")");
       
  4316         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Error.prototype\")");
       
  4317         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Object\")");
       
  4318         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Array\")");
       
  4319         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Number\")");
       
  4320         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"Function\")");
       
  4321         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4322         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4323         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4324         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"/foo/\")");
       
  4325         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"new Object()\")");
       
  4326         equals.insert("QScriptValue(0, QString()) <=> engine->evaluate(\"new Error()\")");
       
  4327         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(true)");
       
  4328         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(int(122))");
       
  4329         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(uint(124))");
       
  4330         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(123.0)");
       
  4331         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(6.37e-8)");
       
  4332         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0x43211234)");
       
  4333         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0x10000)");
       
  4334         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0x10001)");
       
  4335         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(qInf())");
       
  4336         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(\"NaN\")");
       
  4337         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(\"Infinity\")");
       
  4338         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(\"ciao\")");
       
  4339         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4340         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"123\"))");
       
  4341         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(QString(\"12.4\"))");
       
  4342         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, true)");
       
  4343         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, int(122))");
       
  4344         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, uint(124))");
       
  4345         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 123.0)");
       
  4346         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 6.37e-8)");
       
  4347         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0x43211234)");
       
  4348         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0x10000)");
       
  4349         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, 0x10001)");
       
  4350         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, qInf())");
       
  4351         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, \"NaN\")");
       
  4352         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, \"Infinity\")");
       
  4353         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, \"ciao\")");
       
  4354         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4355         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"123\"))");
       
  4356         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4357         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, true)");
       
  4358         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, int(122))");
       
  4359         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, uint(124))");
       
  4360         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 123.0)");
       
  4361         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 6.37e-8)");
       
  4362         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0x43211234)");
       
  4363         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0x10000)");
       
  4364         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, 0x10001)");
       
  4365         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, qInf())");
       
  4366         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, \"NaN\")");
       
  4367         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, \"Infinity\")");
       
  4368         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, \"ciao\")");
       
  4369         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4370         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  4371         equals.insert("QScriptValue(0, QString(\"0\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4372         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Object.prototype\")");
       
  4373         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Function.prototype\")");
       
  4374         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Error.prototype\")");
       
  4375         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Object\")");
       
  4376         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Array\")");
       
  4377         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Number\")");
       
  4378         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"Function\")");
       
  4379         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4380         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4381         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4382         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"new Object()\")");
       
  4383         equals.insert("QScriptValue(0, QString(\"0\")) <=> engine->evaluate(\"new Error()\")");
       
  4384         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(uint(124))");
       
  4385         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0x43211234)");
       
  4386         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0x10000)");
       
  4387         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0x10001)");
       
  4388         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(qInf())");
       
  4389         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(\"NaN\")");
       
  4390         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(\"Infinity\")");
       
  4391         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(\"ciao\")");
       
  4392         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4393         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, uint(124))");
       
  4394         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 0x43211234)");
       
  4395         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 0x10000)");
       
  4396         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, 0x10001)");
       
  4397         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, qInf())");
       
  4398         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, \"NaN\")");
       
  4399         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, \"Infinity\")");
       
  4400         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, \"ciao\")");
       
  4401         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4402         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, uint(124))");
       
  4403         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 0x43211234)");
       
  4404         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 0x10000)");
       
  4405         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, 0x10001)");
       
  4406         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, qInf())");
       
  4407         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, \"NaN\")");
       
  4408         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, \"Infinity\")");
       
  4409         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, \"ciao\")");
       
  4410         equals.insert("QScriptValue(0, QString(\"123\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4411         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Object.prototype\")");
       
  4412         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Function.prototype\")");
       
  4413         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Error.prototype\")");
       
  4414         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Object\")");
       
  4415         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Array\")");
       
  4416         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Number\")");
       
  4417         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"Function\")");
       
  4418         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4419         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4420         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4421         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"new Object()\")");
       
  4422         equals.insert("QScriptValue(0, QString(\"123\")) <=> engine->evaluate(\"new Error()\")");
       
  4423         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(int(122))");
       
  4424         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(uint(124))");
       
  4425         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(123.0)");
       
  4426         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0x43211234)");
       
  4427         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0x10000)");
       
  4428         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0x10001)");
       
  4429         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(qInf())");
       
  4430         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(\"NaN\")");
       
  4431         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(\"Infinity\")");
       
  4432         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(\"ciao\")");
       
  4433         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4434         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(QString(\"123\"))");
       
  4435         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(QString(\"12.4\"))");
       
  4436         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, int(122))");
       
  4437         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, uint(124))");
       
  4438         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 123.0)");
       
  4439         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 0x43211234)");
       
  4440         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 0x10000)");
       
  4441         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, 0x10001)");
       
  4442         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, qInf())");
       
  4443         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, \"NaN\")");
       
  4444         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, \"Infinity\")");
       
  4445         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, \"ciao\")");
       
  4446         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4447         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(0, QString(\"123\"))");
       
  4448         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, int(122))");
       
  4449         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, uint(124))");
       
  4450         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 123.0)");
       
  4451         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 0x43211234)");
       
  4452         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 0x10000)");
       
  4453         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, 0x10001)");
       
  4454         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, qInf())");
       
  4455         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, \"NaN\")");
       
  4456         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, \"Infinity\")");
       
  4457         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, \"ciao\")");
       
  4458         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4459         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  4460         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Object.prototype\")");
       
  4461         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Function.prototype\")");
       
  4462         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Error.prototype\")");
       
  4463         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Object\")");
       
  4464         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Array\")");
       
  4465         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Number\")");
       
  4466         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"Function\")");
       
  4467         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4468         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4469         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4470         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"new Object()\")");
       
  4471         equals.insert("QScriptValue(0, QString(\"12.3\")) <=> engine->evaluate(\"new Error()\")");
       
  4472         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(true)");
       
  4473         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(int(122))");
       
  4474         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(uint(124))");
       
  4475         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(123.0)");
       
  4476         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(6.37e-8)");
       
  4477         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0x43211234)");
       
  4478         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0x10000)");
       
  4479         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0x10001)");
       
  4480         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(qInf())");
       
  4481         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(\"Infinity\")");
       
  4482         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QString(\"123\"))");
       
  4483         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(QString(\"12.4\"))");
       
  4484         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, true)");
       
  4485         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, int(122))");
       
  4486         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, uint(124))");
       
  4487         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 123.0)");
       
  4488         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 6.37e-8)");
       
  4489         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 0x43211234)");
       
  4490         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 0x10000)");
       
  4491         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, 0x10001)");
       
  4492         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, qInf())");
       
  4493         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, \"Infinity\")");
       
  4494         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"123\"))");
       
  4495         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4496         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, true)");
       
  4497         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, int(122))");
       
  4498         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, uint(124))");
       
  4499         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 123.0)");
       
  4500         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 6.37e-8)");
       
  4501         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 0x43211234)");
       
  4502         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10000)");
       
  4503         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, 0x10001)");
       
  4504         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, qInf())");
       
  4505         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, \"Infinity\")");
       
  4506         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"123\"))");
       
  4507         equals.insert("QScriptValue(engine, QScriptValue::NullValue) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4508         equals.insert("QScriptValue(engine, true) <=> QScriptValue(int(122))");
       
  4509         equals.insert("QScriptValue(engine, true) <=> QScriptValue(uint(124))");
       
  4510         equals.insert("QScriptValue(engine, true) <=> QScriptValue(123.0)");
       
  4511         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0x43211234)");
       
  4512         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0x10000)");
       
  4513         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0x10001)");
       
  4514         equals.insert("QScriptValue(engine, true) <=> QScriptValue(qInf())");
       
  4515         equals.insert("QScriptValue(engine, true) <=> QScriptValue(\"Infinity\")");
       
  4516         equals.insert("QScriptValue(engine, true) <=> QScriptValue(QString(\"123\"))");
       
  4517         equals.insert("QScriptValue(engine, true) <=> QScriptValue(QString(\"12.4\"))");
       
  4518         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, int(122))");
       
  4519         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, uint(124))");
       
  4520         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 123.0)");
       
  4521         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 0x43211234)");
       
  4522         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 0x10000)");
       
  4523         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, 0x10001)");
       
  4524         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, qInf())");
       
  4525         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, \"Infinity\")");
       
  4526         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, QString(\"123\"))");
       
  4527         equals.insert("QScriptValue(engine, true) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4528         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, int(122))");
       
  4529         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, uint(124))");
       
  4530         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 123.0)");
       
  4531         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 0x43211234)");
       
  4532         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 0x10000)");
       
  4533         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, 0x10001)");
       
  4534         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, qInf())");
       
  4535         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, \"Infinity\")");
       
  4536         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, QString(\"123\"))");
       
  4537         equals.insert("QScriptValue(engine, true) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4538         equals.insert("QScriptValue(engine, false) <=> QScriptValue(true)");
       
  4539         equals.insert("QScriptValue(engine, false) <=> QScriptValue(int(122))");
       
  4540         equals.insert("QScriptValue(engine, false) <=> QScriptValue(uint(124))");
       
  4541         equals.insert("QScriptValue(engine, false) <=> QScriptValue(123.0)");
       
  4542         equals.insert("QScriptValue(engine, false) <=> QScriptValue(6.37e-8)");
       
  4543         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0x43211234)");
       
  4544         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0x10000)");
       
  4545         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0x10001)");
       
  4546         equals.insert("QScriptValue(engine, false) <=> QScriptValue(qInf())");
       
  4547         equals.insert("QScriptValue(engine, false) <=> QScriptValue(\"Infinity\")");
       
  4548         equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"123\"))");
       
  4549         equals.insert("QScriptValue(engine, false) <=> QScriptValue(QString(\"12.4\"))");
       
  4550         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, true)");
       
  4551         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, int(122))");
       
  4552         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, uint(124))");
       
  4553         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 123.0)");
       
  4554         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 6.37e-8)");
       
  4555         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0x43211234)");
       
  4556         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0x10000)");
       
  4557         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, 0x10001)");
       
  4558         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, qInf())");
       
  4559         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, \"Infinity\")");
       
  4560         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"123\"))");
       
  4561         equals.insert("QScriptValue(engine, false) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4562         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, true)");
       
  4563         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, int(122))");
       
  4564         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, uint(124))");
       
  4565         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 123.0)");
       
  4566         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 6.37e-8)");
       
  4567         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0x43211234)");
       
  4568         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0x10000)");
       
  4569         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, 0x10001)");
       
  4570         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, qInf())");
       
  4571         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, \"Infinity\")");
       
  4572         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"123\"))");
       
  4573         equals.insert("QScriptValue(engine, false) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4574         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(uint(124))");
       
  4575         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(123.0)");
       
  4576         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0x43211234)");
       
  4577         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0x10000)");
       
  4578         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0x10001)");
       
  4579         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(qInf())");
       
  4580         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(\"Infinity\")");
       
  4581         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(QString(\"123\"))");
       
  4582         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, uint(124))");
       
  4583         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 123.0)");
       
  4584         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 0x43211234)");
       
  4585         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 0x10000)");
       
  4586         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, 0x10001)");
       
  4587         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, qInf())");
       
  4588         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, \"Infinity\")");
       
  4589         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(0, QString(\"123\"))");
       
  4590         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, uint(124))");
       
  4591         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 123.0)");
       
  4592         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 0x43211234)");
       
  4593         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 0x10000)");
       
  4594         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, 0x10001)");
       
  4595         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, qInf())");
       
  4596         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, \"Infinity\")");
       
  4597         equals.insert("QScriptValue(engine, int(122)) <=> QScriptValue(engine, QString(\"123\"))");
       
  4598         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0x43211234)");
       
  4599         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0x10000)");
       
  4600         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0x10001)");
       
  4601         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(qInf())");
       
  4602         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(\"Infinity\")");
       
  4603         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, 0x43211234)");
       
  4604         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, 0x10000)");
       
  4605         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, 0x10001)");
       
  4606         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, qInf())");
       
  4607         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(0, \"Infinity\")");
       
  4608         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, 0x43211234)");
       
  4609         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, 0x10000)");
       
  4610         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, 0x10001)");
       
  4611         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, qInf())");
       
  4612         equals.insert("QScriptValue(engine, uint(124)) <=> QScriptValue(engine, \"Infinity\")");
       
  4613         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(true)");
       
  4614         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(int(122))");
       
  4615         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(uint(124))");
       
  4616         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(123.0)");
       
  4617         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(6.37e-8)");
       
  4618         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0x43211234)");
       
  4619         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0x10000)");
       
  4620         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0x10001)");
       
  4621         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(qInf())");
       
  4622         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(\"Infinity\")");
       
  4623         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"123\"))");
       
  4624         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(QString(\"12.4\"))");
       
  4625         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, true)");
       
  4626         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, int(122))");
       
  4627         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, uint(124))");
       
  4628         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 123.0)");
       
  4629         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 6.37e-8)");
       
  4630         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0x43211234)");
       
  4631         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0x10000)");
       
  4632         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, 0x10001)");
       
  4633         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, qInf())");
       
  4634         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, \"Infinity\")");
       
  4635         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"123\"))");
       
  4636         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4637         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, true)");
       
  4638         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, int(122))");
       
  4639         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, uint(124))");
       
  4640         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 123.0)");
       
  4641         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 6.37e-8)");
       
  4642         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0x43211234)");
       
  4643         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0x10000)");
       
  4644         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, 0x10001)");
       
  4645         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, qInf())");
       
  4646         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, \"Infinity\")");
       
  4647         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"123\"))");
       
  4648         equals.insert("QScriptValue(engine, 0) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4649         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(true)");
       
  4650         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(int(122))");
       
  4651         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(uint(124))");
       
  4652         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(123.0)");
       
  4653         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(6.37e-8)");
       
  4654         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0x43211234)");
       
  4655         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0x10000)");
       
  4656         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0x10001)");
       
  4657         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(qInf())");
       
  4658         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(\"Infinity\")");
       
  4659         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"123\"))");
       
  4660         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(QString(\"12.4\"))");
       
  4661         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, true)");
       
  4662         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, int(122))");
       
  4663         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, uint(124))");
       
  4664         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 123.0)");
       
  4665         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 6.37e-8)");
       
  4666         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0x43211234)");
       
  4667         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0x10000)");
       
  4668         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, 0x10001)");
       
  4669         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, qInf())");
       
  4670         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, \"Infinity\")");
       
  4671         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"123\"))");
       
  4672         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4673         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, true)");
       
  4674         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, int(122))");
       
  4675         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, uint(124))");
       
  4676         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 123.0)");
       
  4677         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 6.37e-8)");
       
  4678         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0x43211234)");
       
  4679         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0x10000)");
       
  4680         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, 0x10001)");
       
  4681         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, qInf())");
       
  4682         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, \"Infinity\")");
       
  4683         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"123\"))");
       
  4684         equals.insert("QScriptValue(engine, 0.0) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4685         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(uint(124))");
       
  4686         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0x43211234)");
       
  4687         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0x10000)");
       
  4688         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0x10001)");
       
  4689         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(qInf())");
       
  4690         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(\"Infinity\")");
       
  4691         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, uint(124))");
       
  4692         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 0x43211234)");
       
  4693         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 0x10000)");
       
  4694         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, 0x10001)");
       
  4695         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, qInf())");
       
  4696         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(0, \"Infinity\")");
       
  4697         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, uint(124))");
       
  4698         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 0x43211234)");
       
  4699         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 0x10000)");
       
  4700         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, 0x10001)");
       
  4701         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, qInf())");
       
  4702         equals.insert("QScriptValue(engine, 123.0) <=> QScriptValue(engine, \"Infinity\")");
       
  4703         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(true)");
       
  4704         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(int(122))");
       
  4705         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(uint(124))");
       
  4706         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(123.0)");
       
  4707         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0x43211234)");
       
  4708         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0x10000)");
       
  4709         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0x10001)");
       
  4710         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(qInf())");
       
  4711         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(\"Infinity\")");
       
  4712         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(QString(\"123\"))");
       
  4713         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(QString(\"12.4\"))");
       
  4714         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, true)");
       
  4715         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, int(122))");
       
  4716         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, uint(124))");
       
  4717         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 123.0)");
       
  4718         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 0x43211234)");
       
  4719         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 0x10000)");
       
  4720         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, 0x10001)");
       
  4721         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, qInf())");
       
  4722         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, \"Infinity\")");
       
  4723         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, QString(\"123\"))");
       
  4724         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4725         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, true)");
       
  4726         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, int(122))");
       
  4727         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, uint(124))");
       
  4728         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 123.0)");
       
  4729         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 0x43211234)");
       
  4730         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 0x10000)");
       
  4731         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, 0x10001)");
       
  4732         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, qInf())");
       
  4733         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, \"Infinity\")");
       
  4734         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, QString(\"123\"))");
       
  4735         equals.insert("QScriptValue(engine, 6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4736         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QScriptValue::NullValue)");
       
  4737         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(true)");
       
  4738         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(false)");
       
  4739         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(int(122))");
       
  4740         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(uint(124))");
       
  4741         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0)");
       
  4742         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0.0)");
       
  4743         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(123.0)");
       
  4744         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(6.37e-8)");
       
  4745         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0x43211234)");
       
  4746         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0x10000)");
       
  4747         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0x10001)");
       
  4748         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(qInf())");
       
  4749         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(\"Infinity\")");
       
  4750         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"\"))");
       
  4751         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString())");
       
  4752         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"0\"))");
       
  4753         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"123\"))");
       
  4754         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(QString(\"12.4\"))");
       
  4755         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  4756         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, true)");
       
  4757         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, false)");
       
  4758         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, int(122))");
       
  4759         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, uint(124))");
       
  4760         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0)");
       
  4761         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0.0)");
       
  4762         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 123.0)");
       
  4763         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 6.37e-8)");
       
  4764         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0x43211234)");
       
  4765         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0x10000)");
       
  4766         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, 0x10001)");
       
  4767         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, qInf())");
       
  4768         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, \"Infinity\")");
       
  4769         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"\"))");
       
  4770         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString())");
       
  4771         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"0\"))");
       
  4772         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"123\"))");
       
  4773         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4774         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  4775         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, true)");
       
  4776         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, false)");
       
  4777         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, int(122))");
       
  4778         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, uint(124))");
       
  4779         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0)");
       
  4780         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0.0)");
       
  4781         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 123.0)");
       
  4782         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 6.37e-8)");
       
  4783         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0x43211234)");
       
  4784         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0x10000)");
       
  4785         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, 0x10001)");
       
  4786         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, qInf())");
       
  4787         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, \"Infinity\")");
       
  4788         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"\"))");
       
  4789         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString())");
       
  4790         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"0\"))");
       
  4791         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"123\"))");
       
  4792         equals.insert("QScriptValue(engine, -6.37e-8) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4793         equals.insert("QScriptValue(engine, -6.37e-8) <=> engine->evaluate(\"[]\")");
       
  4794         equals.insert("QScriptValue(engine, -6.37e-8) <=> engine->evaluate(\"Array.prototype\")");
       
  4795         equals.insert("QScriptValue(engine, -6.37e-8) <=> engine->evaluate(\"new Array()\")");
       
  4796         equals.insert("QScriptValue(engine, -6.37e-8) <=> engine->nullValue()");
       
  4797         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(qInf())");
       
  4798         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(\"Infinity\")");
       
  4799         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, qInf())");
       
  4800         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(0, \"Infinity\")");
       
  4801         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, qInf())");
       
  4802         equals.insert("QScriptValue(engine, 0x43211234) <=> QScriptValue(engine, \"Infinity\")");
       
  4803         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x43211234)");
       
  4804         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0x10001)");
       
  4805         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(qInf())");
       
  4806         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(\"Infinity\")");
       
  4807         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x43211234)");
       
  4808         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, 0x10001)");
       
  4809         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, qInf())");
       
  4810         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(0, \"Infinity\")");
       
  4811         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x43211234)");
       
  4812         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, 0x10001)");
       
  4813         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, qInf())");
       
  4814         equals.insert("QScriptValue(engine, 0x10000) <=> QScriptValue(engine, \"Infinity\")");
       
  4815         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0x43211234)");
       
  4816         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(qInf())");
       
  4817         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(\"Infinity\")");
       
  4818         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, 0x43211234)");
       
  4819         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, qInf())");
       
  4820         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(0, \"Infinity\")");
       
  4821         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, 0x43211234)");
       
  4822         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, qInf())");
       
  4823         equals.insert("QScriptValue(engine, 0x10001) <=> QScriptValue(engine, \"Infinity\")");
       
  4824         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QScriptValue::NullValue)");
       
  4825         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(true)");
       
  4826         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(false)");
       
  4827         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(int(122))");
       
  4828         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(uint(124))");
       
  4829         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0)");
       
  4830         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0.0)");
       
  4831         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(123.0)");
       
  4832         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(6.37e-8)");
       
  4833         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(-6.37e-8)");
       
  4834         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0x43211234)");
       
  4835         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0x10000)");
       
  4836         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0x10001)");
       
  4837         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(qInf())");
       
  4838         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(\"Infinity\")");
       
  4839         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"\"))");
       
  4840         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString())");
       
  4841         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"0\"))");
       
  4842         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"123\"))");
       
  4843         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(QString(\"12.4\"))");
       
  4844         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QScriptValue::NullValue)");
       
  4845         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, true)");
       
  4846         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, false)");
       
  4847         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, int(122))");
       
  4848         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, uint(124))");
       
  4849         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0)");
       
  4850         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0.0)");
       
  4851         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 123.0)");
       
  4852         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 6.37e-8)");
       
  4853         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, -6.37e-8)");
       
  4854         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0x43211234)");
       
  4855         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0x10000)");
       
  4856         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, 0x10001)");
       
  4857         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, qInf())");
       
  4858         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, \"Infinity\")");
       
  4859         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"\"))");
       
  4860         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString())");
       
  4861         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"0\"))");
       
  4862         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"123\"))");
       
  4863         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(0, QString(\"12.3\"))");
       
  4864         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  4865         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, true)");
       
  4866         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, false)");
       
  4867         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, int(122))");
       
  4868         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, uint(124))");
       
  4869         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0)");
       
  4870         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0.0)");
       
  4871         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 123.0)");
       
  4872         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 6.37e-8)");
       
  4873         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, -6.37e-8)");
       
  4874         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0x43211234)");
       
  4875         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0x10000)");
       
  4876         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, 0x10001)");
       
  4877         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, qInf())");
       
  4878         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, \"Infinity\")");
       
  4879         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"\"))");
       
  4880         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString())");
       
  4881         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"0\"))");
       
  4882         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"123\"))");
       
  4883         equals.insert("QScriptValue(engine, -qInf()) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4884         equals.insert("QScriptValue(engine, -qInf()) <=> engine->evaluate(\"[]\")");
       
  4885         equals.insert("QScriptValue(engine, -qInf()) <=> engine->evaluate(\"Array.prototype\")");
       
  4886         equals.insert("QScriptValue(engine, -qInf()) <=> engine->evaluate(\"new Array()\")");
       
  4887         equals.insert("QScriptValue(engine, -qInf()) <=> engine->nullValue()");
       
  4888         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(\"ciao\")");
       
  4889         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4890         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, \"ciao\")");
       
  4891         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4892         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, \"ciao\")");
       
  4893         equals.insert("QScriptValue(engine, \"NaN\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4894         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Object.prototype\")");
       
  4895         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Function.prototype\")");
       
  4896         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Object\")");
       
  4897         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Array\")");
       
  4898         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Number\")");
       
  4899         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"Function\")");
       
  4900         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4901         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4902         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4903         equals.insert("QScriptValue(engine, \"NaN\") <=> engine->evaluate(\"new Object()\")");
       
  4904         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"NaN\")");
       
  4905         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(\"ciao\")");
       
  4906         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4907         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"NaN\")");
       
  4908         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, \"ciao\")");
       
  4909         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4910         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"NaN\")");
       
  4911         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, \"ciao\")");
       
  4912         equals.insert("QScriptValue(engine, \"Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4913         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Object.prototype\")");
       
  4914         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Function.prototype\")");
       
  4915         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Object\")");
       
  4916         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Array\")");
       
  4917         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Number\")");
       
  4918         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"Function\")");
       
  4919         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4920         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4921         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4922         equals.insert("QScriptValue(engine, \"Infinity\") <=> engine->evaluate(\"new Object()\")");
       
  4923         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QScriptValue::NullValue)");
       
  4924         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(true)");
       
  4925         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(false)");
       
  4926         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(int(122))");
       
  4927         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(uint(124))");
       
  4928         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0)");
       
  4929         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0.0)");
       
  4930         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(123.0)");
       
  4931         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(6.37e-8)");
       
  4932         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(-6.37e-8)");
       
  4933         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0x43211234)");
       
  4934         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0x10000)");
       
  4935         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0x10001)");
       
  4936         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(qInf())");
       
  4937         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"NaN\")");
       
  4938         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"Infinity\")");
       
  4939         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(\"ciao\")");
       
  4940         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  4941         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString(\"0\"))");
       
  4942         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString(\"123\"))");
       
  4943         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(QString(\"12.4\"))");
       
  4944         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QScriptValue::NullValue)");
       
  4945         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, true)");
       
  4946         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, false)");
       
  4947         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, int(122))");
       
  4948         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, uint(124))");
       
  4949         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0)");
       
  4950         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0.0)");
       
  4951         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 123.0)");
       
  4952         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 6.37e-8)");
       
  4953         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, -6.37e-8)");
       
  4954         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0x43211234)");
       
  4955         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0x10000)");
       
  4956         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, 0x10001)");
       
  4957         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, qInf())");
       
  4958         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"NaN\")");
       
  4959         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"Infinity\")");
       
  4960         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, \"ciao\")");
       
  4961         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  4962         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString(\"0\"))");
       
  4963         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString(\"123\"))");
       
  4964         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(0, QString(\"12.3\"))");
       
  4965         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QScriptValue::NullValue)");
       
  4966         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, true)");
       
  4967         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, false)");
       
  4968         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, int(122))");
       
  4969         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, uint(124))");
       
  4970         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0)");
       
  4971         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0.0)");
       
  4972         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 123.0)");
       
  4973         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 6.37e-8)");
       
  4974         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, -6.37e-8)");
       
  4975         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0x43211234)");
       
  4976         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0x10000)");
       
  4977         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, 0x10001)");
       
  4978         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, qInf())");
       
  4979         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"NaN\")");
       
  4980         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"Infinity\")");
       
  4981         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, \"ciao\")");
       
  4982         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  4983         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString(\"0\"))");
       
  4984         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString(\"123\"))");
       
  4985         equals.insert("QScriptValue(engine, \"-Infinity\") <=> QScriptValue(engine, QString(\"1.23\"))");
       
  4986         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Object.prototype\")");
       
  4987         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Function.prototype\")");
       
  4988         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Error.prototype\")");
       
  4989         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Object\")");
       
  4990         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Array\")");
       
  4991         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Number\")");
       
  4992         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"Function\")");
       
  4993         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  4994         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  4995         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  4996         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"/foo/\")");
       
  4997         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"new Object()\")");
       
  4998         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->evaluate(\"new Error()\")");
       
  4999         equals.insert("QScriptValue(engine, \"-Infinity\") <=> engine->nullValue()");
       
  5000         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Function.prototype\")");
       
  5001         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Object\")");
       
  5002         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Array\")");
       
  5003         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Number\")");
       
  5004         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"Function\")");
       
  5005         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5006         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5007         equals.insert("QScriptValue(engine, \"ciao\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5008         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function.prototype\")");
       
  5009         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Object\")");
       
  5010         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Array\")");
       
  5011         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Number\")");
       
  5012         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"Function\")");
       
  5013         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5014         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5015         equals.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5016         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(true)");
       
  5017         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(int(122))");
       
  5018         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(uint(124))");
       
  5019         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(123.0)");
       
  5020         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(6.37e-8)");
       
  5021         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0x43211234)");
       
  5022         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0x10000)");
       
  5023         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0x10001)");
       
  5024         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(qInf())");
       
  5025         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"NaN\")");
       
  5026         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"Infinity\")");
       
  5027         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"-Infinity\")");
       
  5028         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(\"ciao\")");
       
  5029         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5030         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"0\"))");
       
  5031         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"123\"))");
       
  5032         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(QString(\"12.4\"))");
       
  5033         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, true)");
       
  5034         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, int(122))");
       
  5035         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, uint(124))");
       
  5036         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 123.0)");
       
  5037         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 6.37e-8)");
       
  5038         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0x43211234)");
       
  5039         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0x10000)");
       
  5040         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, 0x10001)");
       
  5041         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, qInf())");
       
  5042         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"NaN\")");
       
  5043         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"Infinity\")");
       
  5044         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"-Infinity\")");
       
  5045         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, \"ciao\")");
       
  5046         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5047         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"0\"))");
       
  5048         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"123\"))");
       
  5049         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  5050         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, true)");
       
  5051         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, int(122))");
       
  5052         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, uint(124))");
       
  5053         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 123.0)");
       
  5054         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 6.37e-8)");
       
  5055         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0x43211234)");
       
  5056         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0x10000)");
       
  5057         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, 0x10001)");
       
  5058         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, qInf())");
       
  5059         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"NaN\")");
       
  5060         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"Infinity\")");
       
  5061         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"-Infinity\")");
       
  5062         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, \"ciao\")");
       
  5063         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5064         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"0\"))");
       
  5065         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  5066         equals.insert("QScriptValue(engine, QString(\"\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5067         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Object.prototype\")");
       
  5068         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Function.prototype\")");
       
  5069         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Error.prototype\")");
       
  5070         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Object\")");
       
  5071         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Array\")");
       
  5072         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Number\")");
       
  5073         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"Function\")");
       
  5074         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5075         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5076         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5077         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"/foo/\")");
       
  5078         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"new Object()\")");
       
  5079         equals.insert("QScriptValue(engine, QString(\"\")) <=> engine->evaluate(\"new Error()\")");
       
  5080         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(true)");
       
  5081         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(int(122))");
       
  5082         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(uint(124))");
       
  5083         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(123.0)");
       
  5084         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(6.37e-8)");
       
  5085         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0x43211234)");
       
  5086         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0x10000)");
       
  5087         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0x10001)");
       
  5088         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(qInf())");
       
  5089         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"NaN\")");
       
  5090         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"Infinity\")");
       
  5091         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"-Infinity\")");
       
  5092         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(\"ciao\")");
       
  5093         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5094         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"0\"))");
       
  5095         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"123\"))");
       
  5096         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(QString(\"12.4\"))");
       
  5097         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, true)");
       
  5098         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, int(122))");
       
  5099         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, uint(124))");
       
  5100         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 123.0)");
       
  5101         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 6.37e-8)");
       
  5102         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0x43211234)");
       
  5103         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0x10000)");
       
  5104         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, 0x10001)");
       
  5105         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, qInf())");
       
  5106         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"NaN\")");
       
  5107         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"Infinity\")");
       
  5108         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"-Infinity\")");
       
  5109         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, \"ciao\")");
       
  5110         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5111         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"0\"))");
       
  5112         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"123\"))");
       
  5113         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(0, QString(\"12.3\"))");
       
  5114         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, true)");
       
  5115         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, int(122))");
       
  5116         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, uint(124))");
       
  5117         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 123.0)");
       
  5118         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 6.37e-8)");
       
  5119         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0x43211234)");
       
  5120         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0x10000)");
       
  5121         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, 0x10001)");
       
  5122         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, qInf())");
       
  5123         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"NaN\")");
       
  5124         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"Infinity\")");
       
  5125         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"-Infinity\")");
       
  5126         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, \"ciao\")");
       
  5127         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5128         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"0\"))");
       
  5129         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"123\"))");
       
  5130         equals.insert("QScriptValue(engine, QString()) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5131         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Object.prototype\")");
       
  5132         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Function.prototype\")");
       
  5133         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Error.prototype\")");
       
  5134         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Object\")");
       
  5135         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Array\")");
       
  5136         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Number\")");
       
  5137         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"Function\")");
       
  5138         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5139         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5140         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5141         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"/foo/\")");
       
  5142         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"new Object()\")");
       
  5143         equals.insert("QScriptValue(engine, QString()) <=> engine->evaluate(\"new Error()\")");
       
  5144         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(true)");
       
  5145         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(int(122))");
       
  5146         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(uint(124))");
       
  5147         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(123.0)");
       
  5148         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(6.37e-8)");
       
  5149         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0x43211234)");
       
  5150         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0x10000)");
       
  5151         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0x10001)");
       
  5152         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(qInf())");
       
  5153         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(\"NaN\")");
       
  5154         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(\"Infinity\")");
       
  5155         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(\"ciao\")");
       
  5156         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5157         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"123\"))");
       
  5158         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(QString(\"12.4\"))");
       
  5159         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, true)");
       
  5160         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, int(122))");
       
  5161         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, uint(124))");
       
  5162         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 123.0)");
       
  5163         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 6.37e-8)");
       
  5164         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0x43211234)");
       
  5165         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0x10000)");
       
  5166         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, 0x10001)");
       
  5167         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, qInf())");
       
  5168         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, \"NaN\")");
       
  5169         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, \"Infinity\")");
       
  5170         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, \"ciao\")");
       
  5171         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5172         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"123\"))");
       
  5173         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  5174         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, true)");
       
  5175         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, int(122))");
       
  5176         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, uint(124))");
       
  5177         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 123.0)");
       
  5178         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 6.37e-8)");
       
  5179         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0x43211234)");
       
  5180         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0x10000)");
       
  5181         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, 0x10001)");
       
  5182         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, qInf())");
       
  5183         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, \"NaN\")");
       
  5184         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, \"Infinity\")");
       
  5185         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, \"ciao\")");
       
  5186         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5187         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  5188         equals.insert("QScriptValue(engine, QString(\"0\")) <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5189         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Object.prototype\")");
       
  5190         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Function.prototype\")");
       
  5191         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Error.prototype\")");
       
  5192         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Object\")");
       
  5193         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Array\")");
       
  5194         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Number\")");
       
  5195         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"Function\")");
       
  5196         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5197         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5198         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5199         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"new Object()\")");
       
  5200         equals.insert("QScriptValue(engine, QString(\"0\")) <=> engine->evaluate(\"new Error()\")");
       
  5201         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(uint(124))");
       
  5202         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0x43211234)");
       
  5203         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0x10000)");
       
  5204         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0x10001)");
       
  5205         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(qInf())");
       
  5206         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(\"NaN\")");
       
  5207         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(\"Infinity\")");
       
  5208         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(\"ciao\")");
       
  5209         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5210         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, uint(124))");
       
  5211         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 0x43211234)");
       
  5212         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 0x10000)");
       
  5213         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, 0x10001)");
       
  5214         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, qInf())");
       
  5215         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, \"NaN\")");
       
  5216         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, \"Infinity\")");
       
  5217         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, \"ciao\")");
       
  5218         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5219         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, uint(124))");
       
  5220         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 0x43211234)");
       
  5221         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 0x10000)");
       
  5222         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, 0x10001)");
       
  5223         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, qInf())");
       
  5224         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, \"NaN\")");
       
  5225         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, \"Infinity\")");
       
  5226         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, \"ciao\")");
       
  5227         equals.insert("QScriptValue(engine, QString(\"123\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5228         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Object.prototype\")");
       
  5229         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Function.prototype\")");
       
  5230         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Error.prototype\")");
       
  5231         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Object\")");
       
  5232         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Array\")");
       
  5233         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Number\")");
       
  5234         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"Function\")");
       
  5235         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5236         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5237         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5238         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"new Object()\")");
       
  5239         equals.insert("QScriptValue(engine, QString(\"123\")) <=> engine->evaluate(\"new Error()\")");
       
  5240         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(int(122))");
       
  5241         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(uint(124))");
       
  5242         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(123.0)");
       
  5243         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0x43211234)");
       
  5244         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0x10000)");
       
  5245         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0x10001)");
       
  5246         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(qInf())");
       
  5247         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(\"NaN\")");
       
  5248         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(\"Infinity\")");
       
  5249         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(\"ciao\")");
       
  5250         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5251         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(QString(\"123\"))");
       
  5252         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(QString(\"12.4\"))");
       
  5253         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, int(122))");
       
  5254         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, uint(124))");
       
  5255         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 123.0)");
       
  5256         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 0x43211234)");
       
  5257         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 0x10000)");
       
  5258         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, 0x10001)");
       
  5259         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, qInf())");
       
  5260         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, \"NaN\")");
       
  5261         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, \"Infinity\")");
       
  5262         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, \"ciao\")");
       
  5263         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5264         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, QString(\"123\"))");
       
  5265         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(0, QString(\"12.3\"))");
       
  5266         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, int(122))");
       
  5267         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, uint(124))");
       
  5268         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 123.0)");
       
  5269         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 0x43211234)");
       
  5270         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 0x10000)");
       
  5271         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, 0x10001)");
       
  5272         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, qInf())");
       
  5273         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, \"NaN\")");
       
  5274         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, \"Infinity\")");
       
  5275         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, \"ciao\")");
       
  5276         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5277         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> QScriptValue(engine, QString(\"123\"))");
       
  5278         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Object.prototype\")");
       
  5279         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Function.prototype\")");
       
  5280         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Error.prototype\")");
       
  5281         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Object\")");
       
  5282         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Array\")");
       
  5283         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Number\")");
       
  5284         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"Function\")");
       
  5285         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5286         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5287         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5288         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"new Object()\")");
       
  5289         equals.insert("QScriptValue(engine, QString(\"1.23\")) <=> engine->evaluate(\"new Error()\")");
       
  5290         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(true)");
       
  5291         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(int(122))");
       
  5292         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(uint(124))");
       
  5293         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(123.0)");
       
  5294         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(6.37e-8)");
       
  5295         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0x43211234)");
       
  5296         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0x10000)");
       
  5297         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0x10001)");
       
  5298         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(qInf())");
       
  5299         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"NaN\")");
       
  5300         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"Infinity\")");
       
  5301         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"-Infinity\")");
       
  5302         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(\"ciao\")");
       
  5303         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5304         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"0\"))");
       
  5305         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"123\"))");
       
  5306         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(QString(\"12.4\"))");
       
  5307         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, true)");
       
  5308         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, int(122))");
       
  5309         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, uint(124))");
       
  5310         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 123.0)");
       
  5311         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 6.37e-8)");
       
  5312         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0x43211234)");
       
  5313         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0x10000)");
       
  5314         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, 0x10001)");
       
  5315         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, qInf())");
       
  5316         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"NaN\")");
       
  5317         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"Infinity\")");
       
  5318         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"-Infinity\")");
       
  5319         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, \"ciao\")");
       
  5320         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5321         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"0\"))");
       
  5322         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"123\"))");
       
  5323         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(0, QString(\"12.3\"))");
       
  5324         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, true)");
       
  5325         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, int(122))");
       
  5326         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, uint(124))");
       
  5327         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 123.0)");
       
  5328         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 6.37e-8)");
       
  5329         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0x43211234)");
       
  5330         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0x10000)");
       
  5331         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, 0x10001)");
       
  5332         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, qInf())");
       
  5333         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"NaN\")");
       
  5334         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"Infinity\")");
       
  5335         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"-Infinity\")");
       
  5336         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, \"ciao\")");
       
  5337         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5338         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"0\"))");
       
  5339         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"123\"))");
       
  5340         equals.insert("engine->evaluate(\"[]\") <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5341         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Object.prototype\")");
       
  5342         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Function.prototype\")");
       
  5343         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Error.prototype\")");
       
  5344         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Object\")");
       
  5345         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Array\")");
       
  5346         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Number\")");
       
  5347         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Function\")");
       
  5348         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5349         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5350         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5351         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"/foo/\")");
       
  5352         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"new Object()\")");
       
  5353         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"new Error()\")");
       
  5354         equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(\"ciao\")");
       
  5355         equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5356         equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(0, \"ciao\")");
       
  5357         equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5358         equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(engine, \"ciao\")");
       
  5359         equals.insert("engine->evaluate(\"Object.prototype\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5360         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Function.prototype\")");
       
  5361         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Object\")");
       
  5362         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Array\")");
       
  5363         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Number\")");
       
  5364         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"Function\")");
       
  5365         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5366         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5367         equals.insert("engine->evaluate(\"Object.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5368         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(true)");
       
  5369         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(int(122))");
       
  5370         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(uint(124))");
       
  5371         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(123.0)");
       
  5372         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(6.37e-8)");
       
  5373         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0x43211234)");
       
  5374         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0x10000)");
       
  5375         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0x10001)");
       
  5376         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(qInf())");
       
  5377         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"NaN\")");
       
  5378         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"Infinity\")");
       
  5379         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"-Infinity\")");
       
  5380         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(\"ciao\")");
       
  5381         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5382         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"0\"))");
       
  5383         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"123\"))");
       
  5384         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(QString(\"12.4\"))");
       
  5385         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, true)");
       
  5386         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, int(122))");
       
  5387         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, uint(124))");
       
  5388         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 123.0)");
       
  5389         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 6.37e-8)");
       
  5390         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0x43211234)");
       
  5391         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0x10000)");
       
  5392         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, 0x10001)");
       
  5393         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, qInf())");
       
  5394         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"NaN\")");
       
  5395         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"Infinity\")");
       
  5396         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"-Infinity\")");
       
  5397         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, \"ciao\")");
       
  5398         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5399         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"0\"))");
       
  5400         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"123\"))");
       
  5401         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(0, QString(\"12.3\"))");
       
  5402         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, true)");
       
  5403         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, int(122))");
       
  5404         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, uint(124))");
       
  5405         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 123.0)");
       
  5406         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 6.37e-8)");
       
  5407         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0x43211234)");
       
  5408         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0x10000)");
       
  5409         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, 0x10001)");
       
  5410         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, qInf())");
       
  5411         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"NaN\")");
       
  5412         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"Infinity\")");
       
  5413         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"-Infinity\")");
       
  5414         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, \"ciao\")");
       
  5415         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5416         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"0\"))");
       
  5417         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"123\"))");
       
  5418         equals.insert("engine->evaluate(\"Array.prototype\") <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5419         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Object.prototype\")");
       
  5420         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Function.prototype\")");
       
  5421         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Error.prototype\")");
       
  5422         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Object\")");
       
  5423         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Array\")");
       
  5424         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Number\")");
       
  5425         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Function\")");
       
  5426         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5427         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5428         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5429         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"/foo/\")");
       
  5430         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"new Object()\")");
       
  5431         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"new Error()\")");
       
  5432         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Object\")");
       
  5433         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Array\")");
       
  5434         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Number\")");
       
  5435         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Function\")");
       
  5436         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5437         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5438         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5439         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(\"NaN\")");
       
  5440         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(\"Infinity\")");
       
  5441         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(\"ciao\")");
       
  5442         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5443         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, \"NaN\")");
       
  5444         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, \"Infinity\")");
       
  5445         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, \"ciao\")");
       
  5446         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5447         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, \"NaN\")");
       
  5448         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, \"Infinity\")");
       
  5449         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, \"ciao\")");
       
  5450         equals.insert("engine->evaluate(\"Error.prototype\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5451         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Object.prototype\")");
       
  5452         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Function.prototype\")");
       
  5453         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Object\")");
       
  5454         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Array\")");
       
  5455         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Number\")");
       
  5456         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Function\")");
       
  5457         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5458         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5459         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5460         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"new Object()\")");
       
  5461         equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Object\")");
       
  5462         equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Number\")");
       
  5463         equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Function\")");
       
  5464         equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Object\")");
       
  5465         equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Object\")");
       
  5466         equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Number\")");
       
  5467         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Object\")");
       
  5468         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Array\")");
       
  5469         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Number\")");
       
  5470         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Function\")");
       
  5471         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5472         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Object\")");
       
  5473         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Array\")");
       
  5474         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Number\")");
       
  5475         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Function\")");
       
  5476         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5477         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5478         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Object\")");
       
  5479         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Array\")");
       
  5480         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Number\")");
       
  5481         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Function\")");
       
  5482         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(\"NaN\")");
       
  5483         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(\"Infinity\")");
       
  5484         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(\"ciao\")");
       
  5485         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5486         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString(\"0\"))");
       
  5487         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString(\"123\"))");
       
  5488         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(QString(\"12.4\"))");
       
  5489         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, \"NaN\")");
       
  5490         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, \"Infinity\")");
       
  5491         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, \"ciao\")");
       
  5492         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5493         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString(\"0\"))");
       
  5494         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString(\"123\"))");
       
  5495         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(0, QString(\"12.3\"))");
       
  5496         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, \"NaN\")");
       
  5497         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, \"Infinity\")");
       
  5498         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, \"ciao\")");
       
  5499         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5500         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString(\"0\"))");
       
  5501         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString(\"123\"))");
       
  5502         equals.insert("engine->evaluate(\"/foo/\") <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5503         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Object.prototype\")");
       
  5504         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Function.prototype\")");
       
  5505         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Error.prototype\")");
       
  5506         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Object\")");
       
  5507         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Array\")");
       
  5508         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Number\")");
       
  5509         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Function\")");
       
  5510         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5511         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5512         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5513         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"new Object()\")");
       
  5514         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"new Error()\")");
       
  5515         equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(\"ciao\")");
       
  5516         equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5517         equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(0, \"ciao\")");
       
  5518         equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5519         equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(engine, \"ciao\")");
       
  5520         equals.insert("engine->evaluate(\"new Object()\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5521         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Function.prototype\")");
       
  5522         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Object\")");
       
  5523         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Array\")");
       
  5524         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Number\")");
       
  5525         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Function\")");
       
  5526         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5527         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5528         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5529         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(true)");
       
  5530         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(int(122))");
       
  5531         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(uint(124))");
       
  5532         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(123.0)");
       
  5533         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(6.37e-8)");
       
  5534         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0x43211234)");
       
  5535         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0x10000)");
       
  5536         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0x10001)");
       
  5537         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(qInf())");
       
  5538         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"NaN\")");
       
  5539         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"Infinity\")");
       
  5540         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"-Infinity\")");
       
  5541         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(\"ciao\")");
       
  5542         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5543         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"0\"))");
       
  5544         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"123\"))");
       
  5545         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(QString(\"12.4\"))");
       
  5546         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, true)");
       
  5547         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, int(122))");
       
  5548         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, uint(124))");
       
  5549         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 123.0)");
       
  5550         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 6.37e-8)");
       
  5551         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0x43211234)");
       
  5552         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0x10000)");
       
  5553         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, 0x10001)");
       
  5554         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, qInf())");
       
  5555         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"NaN\")");
       
  5556         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"Infinity\")");
       
  5557         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"-Infinity\")");
       
  5558         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, \"ciao\")");
       
  5559         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5560         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"0\"))");
       
  5561         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"123\"))");
       
  5562         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(0, QString(\"12.3\"))");
       
  5563         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, true)");
       
  5564         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, int(122))");
       
  5565         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, uint(124))");
       
  5566         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 123.0)");
       
  5567         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 6.37e-8)");
       
  5568         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0x43211234)");
       
  5569         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0x10000)");
       
  5570         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, 0x10001)");
       
  5571         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, qInf())");
       
  5572         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"NaN\")");
       
  5573         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"Infinity\")");
       
  5574         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"-Infinity\")");
       
  5575         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, \"ciao\")");
       
  5576         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5577         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"0\"))");
       
  5578         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"123\"))");
       
  5579         equals.insert("engine->evaluate(\"new Array()\") <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5580         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Object.prototype\")");
       
  5581         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Function.prototype\")");
       
  5582         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Error.prototype\")");
       
  5583         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Object\")");
       
  5584         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Array\")");
       
  5585         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Number\")");
       
  5586         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Function\")");
       
  5587         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5588         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5589         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5590         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"/foo/\")");
       
  5591         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Object()\")");
       
  5592         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"new Error()\")");
       
  5593         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(\"NaN\")");
       
  5594         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(\"Infinity\")");
       
  5595         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(\"ciao\")");
       
  5596         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(QString::fromLatin1(\"ciao\"))");
       
  5597         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, \"NaN\")");
       
  5598         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, \"Infinity\")");
       
  5599         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, \"ciao\")");
       
  5600         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(0, QString::fromLatin1(\"ciao\"))");
       
  5601         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, \"NaN\")");
       
  5602         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, \"Infinity\")");
       
  5603         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, \"ciao\")");
       
  5604         equals.insert("engine->evaluate(\"new Error()\") <=> QScriptValue(engine, QString::fromLatin1(\"ciao\"))");
       
  5605         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Object.prototype\")");
       
  5606         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Function.prototype\")");
       
  5607         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Object\")");
       
  5608         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Array\")");
       
  5609         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Number\")");
       
  5610         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Function\")");
       
  5611         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"(function() { return 1; })\")");
       
  5612         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"(function() { return 'ciao'; })\")");
       
  5613         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"(function() { throw new Error('foo'); })\")");
       
  5614         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"new Object()\")");
       
  5615         equals.insert("engine->nullValue() <=> QScriptValue(true)");
       
  5616         equals.insert("engine->nullValue() <=> QScriptValue(int(122))");
       
  5617         equals.insert("engine->nullValue() <=> QScriptValue(uint(124))");
       
  5618         equals.insert("engine->nullValue() <=> QScriptValue(123.0)");
       
  5619         equals.insert("engine->nullValue() <=> QScriptValue(6.37e-8)");
       
  5620         equals.insert("engine->nullValue() <=> QScriptValue(0x43211234)");
       
  5621         equals.insert("engine->nullValue() <=> QScriptValue(0x10000)");
       
  5622         equals.insert("engine->nullValue() <=> QScriptValue(0x10001)");
       
  5623         equals.insert("engine->nullValue() <=> QScriptValue(qInf())");
       
  5624         equals.insert("engine->nullValue() <=> QScriptValue(\"Infinity\")");
       
  5625         equals.insert("engine->nullValue() <=> QScriptValue(QString(\"123\"))");
       
  5626         equals.insert("engine->nullValue() <=> QScriptValue(QString(\"12.4\"))");
       
  5627         equals.insert("engine->nullValue() <=> QScriptValue(0, true)");
       
  5628         equals.insert("engine->nullValue() <=> QScriptValue(0, int(122))");
       
  5629         equals.insert("engine->nullValue() <=> QScriptValue(0, uint(124))");
       
  5630         equals.insert("engine->nullValue() <=> QScriptValue(0, 123.0)");
       
  5631         equals.insert("engine->nullValue() <=> QScriptValue(0, 6.37e-8)");
       
  5632         equals.insert("engine->nullValue() <=> QScriptValue(0, 0x43211234)");
       
  5633         equals.insert("engine->nullValue() <=> QScriptValue(0, 0x10000)");
       
  5634         equals.insert("engine->nullValue() <=> QScriptValue(0, 0x10001)");
       
  5635         equals.insert("engine->nullValue() <=> QScriptValue(0, qInf())");
       
  5636         equals.insert("engine->nullValue() <=> QScriptValue(0, \"Infinity\")");
       
  5637         equals.insert("engine->nullValue() <=> QScriptValue(0, QString(\"123\"))");
       
  5638         equals.insert("engine->nullValue() <=> QScriptValue(0, QString(\"12.3\"))");
       
  5639         equals.insert("engine->nullValue() <=> QScriptValue(engine, true)");
       
  5640         equals.insert("engine->nullValue() <=> QScriptValue(engine, int(122))");
       
  5641         equals.insert("engine->nullValue() <=> QScriptValue(engine, uint(124))");
       
  5642         equals.insert("engine->nullValue() <=> QScriptValue(engine, 123.0)");
       
  5643         equals.insert("engine->nullValue() <=> QScriptValue(engine, 6.37e-8)");
       
  5644         equals.insert("engine->nullValue() <=> QScriptValue(engine, 0x43211234)");
       
  5645         equals.insert("engine->nullValue() <=> QScriptValue(engine, 0x10000)");
       
  5646         equals.insert("engine->nullValue() <=> QScriptValue(engine, 0x10001)");
       
  5647         equals.insert("engine->nullValue() <=> QScriptValue(engine, qInf())");
       
  5648         equals.insert("engine->nullValue() <=> QScriptValue(engine, \"Infinity\")");
       
  5649         equals.insert("engine->nullValue() <=> QScriptValue(engine, QString(\"123\"))");
       
  5650         equals.insert("engine->nullValue() <=> QScriptValue(engine, QString(\"1.23\"))");
       
  5651     }
       
  5652     QHash<QString, QScriptValue>::const_iterator it;
       
  5653     for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) {
       
  5654         QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key());
       
  5655         newRow(tag.toLatin1()) << it.value() << equals.contains(tag);
       
  5656     }
       
  5657 }
       
  5658 
       
  5659 void tst_QScriptValue::lessThan_test(const char *, const QScriptValue& value)
       
  5660 {
       
  5661     QFETCH(QScriptValue, other);
       
  5662     QFETCH(bool, expected);
       
  5663     QCOMPARE(value.lessThan(other), expected);
       
  5664 }
       
  5665 
       
  5666 DEFINE_TEST_FUNCTION(lessThan)
       
  5667 
       
  5668 
       
  5669 void tst_QScriptValue::instanceOf_initData()
       
  5670 {
       
  5671     QTest::addColumn<QScriptValue>("other");
       
  5672     QTest::addColumn<bool>("expected");
       
  5673     initScriptValues();
       
  5674 }
       
  5675 
       
  5676 void tst_QScriptValue::instanceOf_makeData(const char *expr)
       
  5677 {
       
  5678     static QSet<QString> equals;
       
  5679     if (equals.isEmpty()) {
       
  5680         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Object\")");
       
  5681         equals.insert("engine->evaluate(\"[]\") <=> engine->evaluate(\"Array\")");
       
  5682         equals.insert("engine->evaluate(\"Date.prototype\") <=> engine->evaluate(\"Object\")");
       
  5683         equals.insert("engine->evaluate(\"Array.prototype\") <=> engine->evaluate(\"Object\")");
       
  5684         equals.insert("engine->evaluate(\"Function.prototype\") <=> engine->evaluate(\"Object\")");
       
  5685         equals.insert("engine->evaluate(\"Error.prototype\") <=> engine->evaluate(\"Object\")");
       
  5686         equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Object\")");
       
  5687         equals.insert("engine->evaluate(\"Object\") <=> engine->evaluate(\"Function\")");
       
  5688         equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Object\")");
       
  5689         equals.insert("engine->evaluate(\"Array\") <=> engine->evaluate(\"Function\")");
       
  5690         equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Object\")");
       
  5691         equals.insert("engine->evaluate(\"Number\") <=> engine->evaluate(\"Function\")");
       
  5692         equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Object\")");
       
  5693         equals.insert("engine->evaluate(\"Function\") <=> engine->evaluate(\"Function\")");
       
  5694         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Object\")");
       
  5695         equals.insert("engine->evaluate(\"(function() { return 1; })\") <=> engine->evaluate(\"Function\")");
       
  5696         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Object\")");
       
  5697         equals.insert("engine->evaluate(\"(function() { return 'ciao'; })\") <=> engine->evaluate(\"Function\")");
       
  5698         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Object\")");
       
  5699         equals.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\") <=> engine->evaluate(\"Function\")");
       
  5700         equals.insert("engine->evaluate(\"/foo/\") <=> engine->evaluate(\"Object\")");
       
  5701         equals.insert("engine->evaluate(\"new Object()\") <=> engine->evaluate(\"Object\")");
       
  5702         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Object\")");
       
  5703         equals.insert("engine->evaluate(\"new Array()\") <=> engine->evaluate(\"Array\")");
       
  5704         equals.insert("engine->evaluate(\"new Error()\") <=> engine->evaluate(\"Object\")");
       
  5705     }
       
  5706     QHash<QString, QScriptValue>::const_iterator it;
       
  5707     for (it = m_values.constBegin(); it != m_values.constEnd(); ++it) {
       
  5708         QString tag = QString::fromLatin1("%20 <=> %21").arg(expr).arg(it.key());
       
  5709         newRow(tag.toLatin1()) << it.value() << equals.contains(tag);
       
  5710     }
       
  5711 }
       
  5712 
       
  5713 void tst_QScriptValue::instanceOf_test(const char *, const QScriptValue& value)
       
  5714 {
       
  5715     QFETCH(QScriptValue, other);
       
  5716     QFETCH(bool, expected);
       
  5717     QCOMPARE(value.instanceOf(other), expected);
       
  5718 }
       
  5719 
       
  5720 DEFINE_TEST_FUNCTION(instanceOf)
       
  5721 
       
  5722 
       
  5723 void tst_QScriptValue::qscriptvalue_castQString_initData()
       
  5724 {
       
  5725     QTest::addColumn<QString>("expected");
       
  5726     initScriptValues();
       
  5727 }
       
  5728 
       
  5729 void tst_QScriptValue::qscriptvalue_castQString_makeData(const char* expr)
       
  5730 {
       
  5731     static QHash<QString, QString> value;
       
  5732     if (value.isEmpty()) {
       
  5733         value.insert("QScriptValue()", "");
       
  5734         value.insert("QScriptValue(QScriptValue::UndefinedValue)", "");
       
  5735         value.insert("QScriptValue(QScriptValue::NullValue)", "");
       
  5736         value.insert("QScriptValue(true)", "true");
       
  5737         value.insert("QScriptValue(false)", "false");
       
  5738         value.insert("QScriptValue(int(122))", "122");
       
  5739         value.insert("QScriptValue(uint(124))", "124");
       
  5740         value.insert("QScriptValue(0)", "0");
       
  5741         value.insert("QScriptValue(0.0)", "0");
       
  5742         value.insert("QScriptValue(123.0)", "123");
       
  5743         value.insert("QScriptValue(6.37e-8)", "6.37e-8");
       
  5744         value.insert("QScriptValue(-6.37e-8)", "-6.37e-8");
       
  5745         value.insert("QScriptValue(0x43211234)", "1126240820");
       
  5746         value.insert("QScriptValue(0x10000)", "65536");
       
  5747         value.insert("QScriptValue(0x10001)", "65537");
       
  5748         value.insert("QScriptValue(qSNaN())", "NaN");
       
  5749         value.insert("QScriptValue(qQNaN())", "NaN");
       
  5750         value.insert("QScriptValue(qInf())", "Infinity");
       
  5751         value.insert("QScriptValue(-qInf())", "-Infinity");
       
  5752         value.insert("QScriptValue(\"NaN\")", "NaN");
       
  5753         value.insert("QScriptValue(\"Infinity\")", "Infinity");
       
  5754         value.insert("QScriptValue(\"-Infinity\")", "-Infinity");
       
  5755         value.insert("QScriptValue(\"ciao\")", "ciao");
       
  5756         value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", "ciao");
       
  5757         value.insert("QScriptValue(QString(\"\"))", "");
       
  5758         value.insert("QScriptValue(QString())", "");
       
  5759         value.insert("QScriptValue(QString(\"0\"))", "0");
       
  5760         value.insert("QScriptValue(QString(\"123\"))", "123");
       
  5761         value.insert("QScriptValue(QString(\"12.4\"))", "12.4");
       
  5762         value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", "");
       
  5763         value.insert("QScriptValue(0, QScriptValue::NullValue)", "");
       
  5764         value.insert("QScriptValue(0, true)", "true");
       
  5765         value.insert("QScriptValue(0, false)", "false");
       
  5766         value.insert("QScriptValue(0, int(122))", "122");
       
  5767         value.insert("QScriptValue(0, uint(124))", "124");
       
  5768         value.insert("QScriptValue(0, 0)", "0");
       
  5769         value.insert("QScriptValue(0, 0.0)", "0");
       
  5770         value.insert("QScriptValue(0, 123.0)", "123");
       
  5771         value.insert("QScriptValue(0, 6.37e-8)", "6.37e-8");
       
  5772         value.insert("QScriptValue(0, -6.37e-8)", "-6.37e-8");
       
  5773         value.insert("QScriptValue(0, 0x43211234)", "1126240820");
       
  5774         value.insert("QScriptValue(0, 0x10000)", "65536");
       
  5775         value.insert("QScriptValue(0, 0x10001)", "65537");
       
  5776         value.insert("QScriptValue(0, qSNaN())", "NaN");
       
  5777         value.insert("QScriptValue(0, qQNaN())", "NaN");
       
  5778         value.insert("QScriptValue(0, qInf())", "Infinity");
       
  5779         value.insert("QScriptValue(0, -qInf())", "-Infinity");
       
  5780         value.insert("QScriptValue(0, \"NaN\")", "NaN");
       
  5781         value.insert("QScriptValue(0, \"Infinity\")", "Infinity");
       
  5782         value.insert("QScriptValue(0, \"-Infinity\")", "-Infinity");
       
  5783         value.insert("QScriptValue(0, \"ciao\")", "ciao");
       
  5784         value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", "ciao");
       
  5785         value.insert("QScriptValue(0, QString(\"\"))", "");
       
  5786         value.insert("QScriptValue(0, QString())", "");
       
  5787         value.insert("QScriptValue(0, QString(\"0\"))", "0");
       
  5788         value.insert("QScriptValue(0, QString(\"123\"))", "123");
       
  5789         value.insert("QScriptValue(0, QString(\"12.3\"))", "12.3");
       
  5790         value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", "");
       
  5791         value.insert("QScriptValue(engine, QScriptValue::NullValue)", "");
       
  5792         value.insert("QScriptValue(engine, true)", "true");
       
  5793         value.insert("QScriptValue(engine, false)", "false");
       
  5794         value.insert("QScriptValue(engine, int(122))", "122");
       
  5795         value.insert("QScriptValue(engine, uint(124))", "124");
       
  5796         value.insert("QScriptValue(engine, 0)", "0");
       
  5797         value.insert("QScriptValue(engine, 0.0)", "0");
       
  5798         value.insert("QScriptValue(engine, 123.0)", "123");
       
  5799         value.insert("QScriptValue(engine, 6.37e-8)", "6.37e-8");
       
  5800         value.insert("QScriptValue(engine, -6.37e-8)", "-6.37e-8");
       
  5801         value.insert("QScriptValue(engine, 0x43211234)", "1126240820");
       
  5802         value.insert("QScriptValue(engine, 0x10000)", "65536");
       
  5803         value.insert("QScriptValue(engine, 0x10001)", "65537");
       
  5804         value.insert("QScriptValue(engine, qSNaN())", "NaN");
       
  5805         value.insert("QScriptValue(engine, qQNaN())", "NaN");
       
  5806         value.insert("QScriptValue(engine, qInf())", "Infinity");
       
  5807         value.insert("QScriptValue(engine, -qInf())", "-Infinity");
       
  5808         value.insert("QScriptValue(engine, \"NaN\")", "NaN");
       
  5809         value.insert("QScriptValue(engine, \"Infinity\")", "Infinity");
       
  5810         value.insert("QScriptValue(engine, \"-Infinity\")", "-Infinity");
       
  5811         value.insert("QScriptValue(engine, \"ciao\")", "ciao");
       
  5812         value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", "ciao");
       
  5813         value.insert("QScriptValue(engine, QString(\"\"))", "");
       
  5814         value.insert("QScriptValue(engine, QString())", "");
       
  5815         value.insert("QScriptValue(engine, QString(\"0\"))", "0");
       
  5816         value.insert("QScriptValue(engine, QString(\"123\"))", "123");
       
  5817         value.insert("QScriptValue(engine, QString(\"1.23\"))", "1.23");
       
  5818         value.insert("engine->evaluate(\"[]\")", "");
       
  5819         value.insert("engine->evaluate(\"{}\")", "");
       
  5820         value.insert("engine->evaluate(\"Object.prototype\")", "[object Object]");
       
  5821         value.insert("engine->evaluate(\"Date.prototype\")", "Invalid Date");
       
  5822         value.insert("engine->evaluate(\"Array.prototype\")", "");
       
  5823         value.insert("engine->evaluate(\"Function.prototype\")", "function () {\n    [native code]\n}");
       
  5824         value.insert("engine->evaluate(\"Error.prototype\")", "Error: Unknown error");
       
  5825         value.insert("engine->evaluate(\"Object\")", "function Object() {\n    [native code]\n}");
       
  5826         value.insert("engine->evaluate(\"Array\")", "function Array() {\n    [native code]\n}");
       
  5827         value.insert("engine->evaluate(\"Number\")", "function Number() {\n    [native code]\n}");
       
  5828         value.insert("engine->evaluate(\"Function\")", "function Function() {\n    [native code]\n}");
       
  5829         value.insert("engine->evaluate(\"(function() { return 1; })\")", "function () { return 1; }");
       
  5830         value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", "function () { return 'ciao'; }");
       
  5831         value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", "function () { throw new Error('foo'); }");
       
  5832         value.insert("engine->evaluate(\"/foo/\")", "/foo/");
       
  5833         value.insert("engine->evaluate(\"new Object()\")", "[object Object]");
       
  5834         value.insert("engine->evaluate(\"new Array()\")", "");
       
  5835         value.insert("engine->evaluate(\"new Error()\")", "Error: Unknown error");
       
  5836         value.insert("engine->nullValue()", "");
       
  5837         value.insert("engine->undefinedValue()", "");
       
  5838     }
       
  5839     newRow(expr) << value.value(expr);
       
  5840 }
       
  5841 
       
  5842 void tst_QScriptValue::qscriptvalue_castQString_test(const char*, const QScriptValue& value)
       
  5843 {
       
  5844     QFETCH(QString, expected);
       
  5845     QCOMPARE(qscriptvalue_cast<QString>(value), expected);
       
  5846 }
       
  5847 
       
  5848 DEFINE_TEST_FUNCTION(qscriptvalue_castQString)
       
  5849 
       
  5850 
       
  5851 void tst_QScriptValue::qscriptvalue_castqsreal_initData()
       
  5852 {
       
  5853     QTest::addColumn<qsreal>("expected");
       
  5854     initScriptValues();
       
  5855 }
       
  5856 
       
  5857 void tst_QScriptValue::qscriptvalue_castqsreal_makeData(const char* expr)
       
  5858 {
       
  5859     static QHash<QString, qsreal> value;
       
  5860     if (value.isEmpty()) {
       
  5861         value.insert("QScriptValue()", 0);
       
  5862         value.insert("QScriptValue(QScriptValue::UndefinedValue)", qQNaN());
       
  5863         value.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  5864         value.insert("QScriptValue(true)", 1);
       
  5865         value.insert("QScriptValue(false)", 0);
       
  5866         value.insert("QScriptValue(int(122))", 122);
       
  5867         value.insert("QScriptValue(uint(124))", 124);
       
  5868         value.insert("QScriptValue(0)", 0);
       
  5869         value.insert("QScriptValue(0.0)", 0);
       
  5870         value.insert("QScriptValue(123.0)", 123);
       
  5871         value.insert("QScriptValue(6.37e-8)", 6.369999999999999e-08);
       
  5872         value.insert("QScriptValue(-6.37e-8)", -6.369999999999999e-08);
       
  5873         value.insert("QScriptValue(0x43211234)", 1126240820);
       
  5874         value.insert("QScriptValue(0x10000)", 65536);
       
  5875         value.insert("QScriptValue(0x10001)", 65537);
       
  5876         value.insert("QScriptValue(qSNaN())", qQNaN());
       
  5877         value.insert("QScriptValue(qQNaN())", qQNaN());
       
  5878         value.insert("QScriptValue(qInf())", qInf());
       
  5879         value.insert("QScriptValue(-qInf())", qInf());
       
  5880         value.insert("QScriptValue(\"NaN\")", qQNaN());
       
  5881         value.insert("QScriptValue(\"Infinity\")", qInf());
       
  5882         value.insert("QScriptValue(\"-Infinity\")", qInf());
       
  5883         value.insert("QScriptValue(\"ciao\")", qQNaN());
       
  5884         value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", qQNaN());
       
  5885         value.insert("QScriptValue(QString(\"\"))", 0);
       
  5886         value.insert("QScriptValue(QString())", 0);
       
  5887         value.insert("QScriptValue(QString(\"0\"))", 0);
       
  5888         value.insert("QScriptValue(QString(\"123\"))", 123);
       
  5889         value.insert("QScriptValue(QString(\"12.4\"))", 12.4);
       
  5890         value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", qQNaN());
       
  5891         value.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  5892         value.insert("QScriptValue(0, true)", 1);
       
  5893         value.insert("QScriptValue(0, false)", 0);
       
  5894         value.insert("QScriptValue(0, int(122))", 122);
       
  5895         value.insert("QScriptValue(0, uint(124))", 124);
       
  5896         value.insert("QScriptValue(0, 0)", 0);
       
  5897         value.insert("QScriptValue(0, 0.0)", 0);
       
  5898         value.insert("QScriptValue(0, 123.0)", 123);
       
  5899         value.insert("QScriptValue(0, 6.37e-8)", 6.369999999999999e-08);
       
  5900         value.insert("QScriptValue(0, -6.37e-8)", -6.369999999999999e-08);
       
  5901         value.insert("QScriptValue(0, 0x43211234)", 1126240820);
       
  5902         value.insert("QScriptValue(0, 0x10000)", 65536);
       
  5903         value.insert("QScriptValue(0, 0x10001)", 65537);
       
  5904         value.insert("QScriptValue(0, qSNaN())", qQNaN());
       
  5905         value.insert("QScriptValue(0, qQNaN())", qQNaN());
       
  5906         value.insert("QScriptValue(0, qInf())", qInf());
       
  5907         value.insert("QScriptValue(0, -qInf())", qInf());
       
  5908         value.insert("QScriptValue(0, \"NaN\")", qQNaN());
       
  5909         value.insert("QScriptValue(0, \"Infinity\")", qInf());
       
  5910         value.insert("QScriptValue(0, \"-Infinity\")", qInf());
       
  5911         value.insert("QScriptValue(0, \"ciao\")", qQNaN());
       
  5912         value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", qQNaN());
       
  5913         value.insert("QScriptValue(0, QString(\"\"))", 0);
       
  5914         value.insert("QScriptValue(0, QString())", 0);
       
  5915         value.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  5916         value.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  5917         value.insert("QScriptValue(0, QString(\"12.3\"))", 12.3);
       
  5918         value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", qQNaN());
       
  5919         value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  5920         value.insert("QScriptValue(engine, true)", 1);
       
  5921         value.insert("QScriptValue(engine, false)", 0);
       
  5922         value.insert("QScriptValue(engine, int(122))", 122);
       
  5923         value.insert("QScriptValue(engine, uint(124))", 124);
       
  5924         value.insert("QScriptValue(engine, 0)", 0);
       
  5925         value.insert("QScriptValue(engine, 0.0)", 0);
       
  5926         value.insert("QScriptValue(engine, 123.0)", 123);
       
  5927         value.insert("QScriptValue(engine, 6.37e-8)", 6.369999999999999e-08);
       
  5928         value.insert("QScriptValue(engine, -6.37e-8)", -6.369999999999999e-08);
       
  5929         value.insert("QScriptValue(engine, 0x43211234)", 1126240820);
       
  5930         value.insert("QScriptValue(engine, 0x10000)", 65536);
       
  5931         value.insert("QScriptValue(engine, 0x10001)", 65537);
       
  5932         value.insert("QScriptValue(engine, qSNaN())", qQNaN());
       
  5933         value.insert("QScriptValue(engine, qQNaN())", qQNaN());
       
  5934         value.insert("QScriptValue(engine, qInf())", qInf());
       
  5935         value.insert("QScriptValue(engine, -qInf())", qInf());
       
  5936         value.insert("QScriptValue(engine, \"NaN\")", qQNaN());
       
  5937         value.insert("QScriptValue(engine, \"Infinity\")", qInf());
       
  5938         value.insert("QScriptValue(engine, \"-Infinity\")", qInf());
       
  5939         value.insert("QScriptValue(engine, \"ciao\")", qQNaN());
       
  5940         value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", qQNaN());
       
  5941         value.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  5942         value.insert("QScriptValue(engine, QString())", 0);
       
  5943         value.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  5944         value.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  5945         value.insert("QScriptValue(engine, QString(\"1.23\"))", 1.23);
       
  5946         value.insert("engine->evaluate(\"[]\")", 0);
       
  5947         value.insert("engine->evaluate(\"{}\")", qQNaN());
       
  5948         value.insert("engine->evaluate(\"Object.prototype\")", qQNaN());
       
  5949         value.insert("engine->evaluate(\"Date.prototype\")", qQNaN());
       
  5950         value.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  5951         value.insert("engine->evaluate(\"Function.prototype\")", qQNaN());
       
  5952         value.insert("engine->evaluate(\"Error.prototype\")", qQNaN());
       
  5953         value.insert("engine->evaluate(\"Object\")", qQNaN());
       
  5954         value.insert("engine->evaluate(\"Array\")", qQNaN());
       
  5955         value.insert("engine->evaluate(\"Number\")", qQNaN());
       
  5956         value.insert("engine->evaluate(\"Function\")", qQNaN());
       
  5957         value.insert("engine->evaluate(\"(function() { return 1; })\")", qQNaN());
       
  5958         value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", qQNaN());
       
  5959         value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", qQNaN());
       
  5960         value.insert("engine->evaluate(\"/foo/\")", qQNaN());
       
  5961         value.insert("engine->evaluate(\"new Object()\")", qQNaN());
       
  5962         value.insert("engine->evaluate(\"new Array()\")", 0);
       
  5963         value.insert("engine->evaluate(\"new Error()\")", qQNaN());
       
  5964         value.insert("engine->nullValue()", 0);
       
  5965         value.insert("engine->undefinedValue()", qQNaN());
       
  5966     }
       
  5967     newRow(expr) << value.value(expr);
       
  5968 }
       
  5969 
       
  5970 void tst_QScriptValue::qscriptvalue_castqsreal_test(const char*, const QScriptValue& value)
       
  5971 {
       
  5972     QFETCH(qsreal, expected);
       
  5973     if (qIsNaN(expected)) {
       
  5974         QVERIFY(qIsNaN(qscriptvalue_cast<qsreal>(value)));
       
  5975         return;
       
  5976     }
       
  5977     if (qIsInf(expected)) {
       
  5978         QVERIFY(qIsInf(qscriptvalue_cast<qsreal>(value)));
       
  5979         return;
       
  5980     }
       
  5981     QCOMPARE(qscriptvalue_cast<qsreal>(value), expected);
       
  5982 }
       
  5983 
       
  5984 DEFINE_TEST_FUNCTION(qscriptvalue_castqsreal)
       
  5985 
       
  5986 
       
  5987 void tst_QScriptValue::qscriptvalue_castbool_initData()
       
  5988 {
       
  5989     QTest::addColumn<bool>("expected");
       
  5990     initScriptValues();
       
  5991 }
       
  5992 
       
  5993 void tst_QScriptValue::qscriptvalue_castbool_makeData(const char* expr)
       
  5994 {
       
  5995     static QHash<QString, bool> value;
       
  5996     if (value.isEmpty()) {
       
  5997         value.insert("QScriptValue()", false);
       
  5998         value.insert("QScriptValue(QScriptValue::UndefinedValue)", false);
       
  5999         value.insert("QScriptValue(QScriptValue::NullValue)", false);
       
  6000         value.insert("QScriptValue(true)", true);
       
  6001         value.insert("QScriptValue(false)", false);
       
  6002         value.insert("QScriptValue(int(122))", true);
       
  6003         value.insert("QScriptValue(uint(124))", true);
       
  6004         value.insert("QScriptValue(0)", false);
       
  6005         value.insert("QScriptValue(0.0)", false);
       
  6006         value.insert("QScriptValue(123.0)", true);
       
  6007         value.insert("QScriptValue(6.37e-8)", true);
       
  6008         value.insert("QScriptValue(-6.37e-8)", true);
       
  6009         value.insert("QScriptValue(0x43211234)", true);
       
  6010         value.insert("QScriptValue(0x10000)", true);
       
  6011         value.insert("QScriptValue(0x10001)", true);
       
  6012         value.insert("QScriptValue(qSNaN())", false);
       
  6013         value.insert("QScriptValue(qQNaN())", false);
       
  6014         value.insert("QScriptValue(qInf())", true);
       
  6015         value.insert("QScriptValue(-qInf())", true);
       
  6016         value.insert("QScriptValue(\"NaN\")", true);
       
  6017         value.insert("QScriptValue(\"Infinity\")", true);
       
  6018         value.insert("QScriptValue(\"-Infinity\")", true);
       
  6019         value.insert("QScriptValue(\"ciao\")", true);
       
  6020         value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", true);
       
  6021         value.insert("QScriptValue(QString(\"\"))", false);
       
  6022         value.insert("QScriptValue(QString())", false);
       
  6023         value.insert("QScriptValue(QString(\"0\"))", true);
       
  6024         value.insert("QScriptValue(QString(\"123\"))", true);
       
  6025         value.insert("QScriptValue(QString(\"12.4\"))", true);
       
  6026         value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", false);
       
  6027         value.insert("QScriptValue(0, QScriptValue::NullValue)", false);
       
  6028         value.insert("QScriptValue(0, true)", true);
       
  6029         value.insert("QScriptValue(0, false)", false);
       
  6030         value.insert("QScriptValue(0, int(122))", true);
       
  6031         value.insert("QScriptValue(0, uint(124))", true);
       
  6032         value.insert("QScriptValue(0, 0)", false);
       
  6033         value.insert("QScriptValue(0, 0.0)", false);
       
  6034         value.insert("QScriptValue(0, 123.0)", true);
       
  6035         value.insert("QScriptValue(0, 6.37e-8)", true);
       
  6036         value.insert("QScriptValue(0, -6.37e-8)", true);
       
  6037         value.insert("QScriptValue(0, 0x43211234)", true);
       
  6038         value.insert("QScriptValue(0, 0x10000)", true);
       
  6039         value.insert("QScriptValue(0, 0x10001)", true);
       
  6040         value.insert("QScriptValue(0, qSNaN())", false);
       
  6041         value.insert("QScriptValue(0, qQNaN())", false);
       
  6042         value.insert("QScriptValue(0, qInf())", true);
       
  6043         value.insert("QScriptValue(0, -qInf())", true);
       
  6044         value.insert("QScriptValue(0, \"NaN\")", true);
       
  6045         value.insert("QScriptValue(0, \"Infinity\")", true);
       
  6046         value.insert("QScriptValue(0, \"-Infinity\")", true);
       
  6047         value.insert("QScriptValue(0, \"ciao\")", true);
       
  6048         value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", true);
       
  6049         value.insert("QScriptValue(0, QString(\"\"))", false);
       
  6050         value.insert("QScriptValue(0, QString())", false);
       
  6051         value.insert("QScriptValue(0, QString(\"0\"))", true);
       
  6052         value.insert("QScriptValue(0, QString(\"123\"))", true);
       
  6053         value.insert("QScriptValue(0, QString(\"12.3\"))", true);
       
  6054         value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", false);
       
  6055         value.insert("QScriptValue(engine, QScriptValue::NullValue)", false);
       
  6056         value.insert("QScriptValue(engine, true)", true);
       
  6057         value.insert("QScriptValue(engine, false)", false);
       
  6058         value.insert("QScriptValue(engine, int(122))", true);
       
  6059         value.insert("QScriptValue(engine, uint(124))", true);
       
  6060         value.insert("QScriptValue(engine, 0)", false);
       
  6061         value.insert("QScriptValue(engine, 0.0)", false);
       
  6062         value.insert("QScriptValue(engine, 123.0)", true);
       
  6063         value.insert("QScriptValue(engine, 6.37e-8)", true);
       
  6064         value.insert("QScriptValue(engine, -6.37e-8)", true);
       
  6065         value.insert("QScriptValue(engine, 0x43211234)", true);
       
  6066         value.insert("QScriptValue(engine, 0x10000)", true);
       
  6067         value.insert("QScriptValue(engine, 0x10001)", true);
       
  6068         value.insert("QScriptValue(engine, qSNaN())", false);
       
  6069         value.insert("QScriptValue(engine, qQNaN())", false);
       
  6070         value.insert("QScriptValue(engine, qInf())", true);
       
  6071         value.insert("QScriptValue(engine, -qInf())", true);
       
  6072         value.insert("QScriptValue(engine, \"NaN\")", true);
       
  6073         value.insert("QScriptValue(engine, \"Infinity\")", true);
       
  6074         value.insert("QScriptValue(engine, \"-Infinity\")", true);
       
  6075         value.insert("QScriptValue(engine, \"ciao\")", true);
       
  6076         value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", true);
       
  6077         value.insert("QScriptValue(engine, QString(\"\"))", false);
       
  6078         value.insert("QScriptValue(engine, QString())", false);
       
  6079         value.insert("QScriptValue(engine, QString(\"0\"))", true);
       
  6080         value.insert("QScriptValue(engine, QString(\"123\"))", true);
       
  6081         value.insert("QScriptValue(engine, QString(\"1.23\"))", true);
       
  6082         value.insert("engine->evaluate(\"[]\")", true);
       
  6083         value.insert("engine->evaluate(\"{}\")", false);
       
  6084         value.insert("engine->evaluate(\"Object.prototype\")", true);
       
  6085         value.insert("engine->evaluate(\"Date.prototype\")", true);
       
  6086         value.insert("engine->evaluate(\"Array.prototype\")", true);
       
  6087         value.insert("engine->evaluate(\"Function.prototype\")", true);
       
  6088         value.insert("engine->evaluate(\"Error.prototype\")", true);
       
  6089         value.insert("engine->evaluate(\"Object\")", true);
       
  6090         value.insert("engine->evaluate(\"Array\")", true);
       
  6091         value.insert("engine->evaluate(\"Number\")", true);
       
  6092         value.insert("engine->evaluate(\"Function\")", true);
       
  6093         value.insert("engine->evaluate(\"(function() { return 1; })\")", true);
       
  6094         value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", true);
       
  6095         value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", true);
       
  6096         value.insert("engine->evaluate(\"/foo/\")", true);
       
  6097         value.insert("engine->evaluate(\"new Object()\")", true);
       
  6098         value.insert("engine->evaluate(\"new Array()\")", true);
       
  6099         value.insert("engine->evaluate(\"new Error()\")", true);
       
  6100         value.insert("engine->nullValue()", false);
       
  6101         value.insert("engine->undefinedValue()", false);
       
  6102     }
       
  6103     newRow(expr) << value.value(expr);
       
  6104 }
       
  6105 
       
  6106 void tst_QScriptValue::qscriptvalue_castbool_test(const char*, const QScriptValue& value)
       
  6107 {
       
  6108     QFETCH(bool, expected);
       
  6109     QCOMPARE(qscriptvalue_cast<bool>(value), expected);
       
  6110 }
       
  6111 
       
  6112 DEFINE_TEST_FUNCTION(qscriptvalue_castbool)
       
  6113 
       
  6114 
       
  6115 void tst_QScriptValue::qscriptvalue_castqint32_initData()
       
  6116 {
       
  6117     QTest::addColumn<qint32>("expected");
       
  6118     initScriptValues();
       
  6119 }
       
  6120 
       
  6121 void tst_QScriptValue::qscriptvalue_castqint32_makeData(const char* expr)
       
  6122 {
       
  6123     static QHash<QString, qint32> value;
       
  6124     if (value.isEmpty()) {
       
  6125         value.insert("QScriptValue()", 0);
       
  6126         value.insert("QScriptValue(QScriptValue::UndefinedValue)", 0);
       
  6127         value.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  6128         value.insert("QScriptValue(true)", 1);
       
  6129         value.insert("QScriptValue(false)", 0);
       
  6130         value.insert("QScriptValue(int(122))", 122);
       
  6131         value.insert("QScriptValue(uint(124))", 124);
       
  6132         value.insert("QScriptValue(0)", 0);
       
  6133         value.insert("QScriptValue(0.0)", 0);
       
  6134         value.insert("QScriptValue(123.0)", 123);
       
  6135         value.insert("QScriptValue(6.37e-8)", 0);
       
  6136         value.insert("QScriptValue(-6.37e-8)", 0);
       
  6137         value.insert("QScriptValue(0x43211234)", 1126240820);
       
  6138         value.insert("QScriptValue(0x10000)", 65536);
       
  6139         value.insert("QScriptValue(0x10001)", 65537);
       
  6140         value.insert("QScriptValue(qSNaN())", 0);
       
  6141         value.insert("QScriptValue(qQNaN())", 0);
       
  6142         value.insert("QScriptValue(qInf())", 0);
       
  6143         value.insert("QScriptValue(-qInf())", 0);
       
  6144         value.insert("QScriptValue(\"NaN\")", 0);
       
  6145         value.insert("QScriptValue(\"Infinity\")", 0);
       
  6146         value.insert("QScriptValue(\"-Infinity\")", 0);
       
  6147         value.insert("QScriptValue(\"ciao\")", 0);
       
  6148         value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0);
       
  6149         value.insert("QScriptValue(QString(\"\"))", 0);
       
  6150         value.insert("QScriptValue(QString())", 0);
       
  6151         value.insert("QScriptValue(QString(\"0\"))", 0);
       
  6152         value.insert("QScriptValue(QString(\"123\"))", 123);
       
  6153         value.insert("QScriptValue(QString(\"12.4\"))", 12);
       
  6154         value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0);
       
  6155         value.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  6156         value.insert("QScriptValue(0, true)", 1);
       
  6157         value.insert("QScriptValue(0, false)", 0);
       
  6158         value.insert("QScriptValue(0, int(122))", 122);
       
  6159         value.insert("QScriptValue(0, uint(124))", 124);
       
  6160         value.insert("QScriptValue(0, 0)", 0);
       
  6161         value.insert("QScriptValue(0, 0.0)", 0);
       
  6162         value.insert("QScriptValue(0, 123.0)", 123);
       
  6163         value.insert("QScriptValue(0, 6.37e-8)", 0);
       
  6164         value.insert("QScriptValue(0, -6.37e-8)", 0);
       
  6165         value.insert("QScriptValue(0, 0x43211234)", 1126240820);
       
  6166         value.insert("QScriptValue(0, 0x10000)", 65536);
       
  6167         value.insert("QScriptValue(0, 0x10001)", 65537);
       
  6168         value.insert("QScriptValue(0, qSNaN())", 0);
       
  6169         value.insert("QScriptValue(0, qQNaN())", 0);
       
  6170         value.insert("QScriptValue(0, qInf())", 0);
       
  6171         value.insert("QScriptValue(0, -qInf())", 0);
       
  6172         value.insert("QScriptValue(0, \"NaN\")", 0);
       
  6173         value.insert("QScriptValue(0, \"Infinity\")", 0);
       
  6174         value.insert("QScriptValue(0, \"-Infinity\")", 0);
       
  6175         value.insert("QScriptValue(0, \"ciao\")", 0);
       
  6176         value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0);
       
  6177         value.insert("QScriptValue(0, QString(\"\"))", 0);
       
  6178         value.insert("QScriptValue(0, QString())", 0);
       
  6179         value.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  6180         value.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  6181         value.insert("QScriptValue(0, QString(\"12.3\"))", 12);
       
  6182         value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0);
       
  6183         value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  6184         value.insert("QScriptValue(engine, true)", 1);
       
  6185         value.insert("QScriptValue(engine, false)", 0);
       
  6186         value.insert("QScriptValue(engine, int(122))", 122);
       
  6187         value.insert("QScriptValue(engine, uint(124))", 124);
       
  6188         value.insert("QScriptValue(engine, 0)", 0);
       
  6189         value.insert("QScriptValue(engine, 0.0)", 0);
       
  6190         value.insert("QScriptValue(engine, 123.0)", 123);
       
  6191         value.insert("QScriptValue(engine, 6.37e-8)", 0);
       
  6192         value.insert("QScriptValue(engine, -6.37e-8)", 0);
       
  6193         value.insert("QScriptValue(engine, 0x43211234)", 1126240820);
       
  6194         value.insert("QScriptValue(engine, 0x10000)", 65536);
       
  6195         value.insert("QScriptValue(engine, 0x10001)", 65537);
       
  6196         value.insert("QScriptValue(engine, qSNaN())", 0);
       
  6197         value.insert("QScriptValue(engine, qQNaN())", 0);
       
  6198         value.insert("QScriptValue(engine, qInf())", 0);
       
  6199         value.insert("QScriptValue(engine, -qInf())", 0);
       
  6200         value.insert("QScriptValue(engine, \"NaN\")", 0);
       
  6201         value.insert("QScriptValue(engine, \"Infinity\")", 0);
       
  6202         value.insert("QScriptValue(engine, \"-Infinity\")", 0);
       
  6203         value.insert("QScriptValue(engine, \"ciao\")", 0);
       
  6204         value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0);
       
  6205         value.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  6206         value.insert("QScriptValue(engine, QString())", 0);
       
  6207         value.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  6208         value.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  6209         value.insert("QScriptValue(engine, QString(\"1.23\"))", 1);
       
  6210         value.insert("engine->evaluate(\"[]\")", 0);
       
  6211         value.insert("engine->evaluate(\"{}\")", 0);
       
  6212         value.insert("engine->evaluate(\"Object.prototype\")", 0);
       
  6213         value.insert("engine->evaluate(\"Date.prototype\")", 0);
       
  6214         value.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  6215         value.insert("engine->evaluate(\"Function.prototype\")", 0);
       
  6216         value.insert("engine->evaluate(\"Error.prototype\")", 0);
       
  6217         value.insert("engine->evaluate(\"Object\")", 0);
       
  6218         value.insert("engine->evaluate(\"Array\")", 0);
       
  6219         value.insert("engine->evaluate(\"Number\")", 0);
       
  6220         value.insert("engine->evaluate(\"Function\")", 0);
       
  6221         value.insert("engine->evaluate(\"(function() { return 1; })\")", 0);
       
  6222         value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0);
       
  6223         value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0);
       
  6224         value.insert("engine->evaluate(\"/foo/\")", 0);
       
  6225         value.insert("engine->evaluate(\"new Object()\")", 0);
       
  6226         value.insert("engine->evaluate(\"new Array()\")", 0);
       
  6227         value.insert("engine->evaluate(\"new Error()\")", 0);
       
  6228         value.insert("engine->nullValue()", 0);
       
  6229         value.insert("engine->undefinedValue()", 0);
       
  6230     }
       
  6231     newRow(expr) << value.value(expr);
       
  6232 }
       
  6233 
       
  6234 void tst_QScriptValue::qscriptvalue_castqint32_test(const char*, const QScriptValue& value)
       
  6235 {
       
  6236     QFETCH(qint32, expected);
       
  6237     QCOMPARE(qscriptvalue_cast<qint32>(value), expected);
       
  6238 }
       
  6239 
       
  6240 DEFINE_TEST_FUNCTION(qscriptvalue_castqint32)
       
  6241 
       
  6242 
       
  6243 void tst_QScriptValue::qscriptvalue_castquint32_initData()
       
  6244 {
       
  6245     QTest::addColumn<quint32>("expected");
       
  6246     initScriptValues();
       
  6247 }
       
  6248 
       
  6249 void tst_QScriptValue::qscriptvalue_castquint32_makeData(const char* expr)
       
  6250 {
       
  6251     static QHash<QString, quint32> value;
       
  6252     if (value.isEmpty()) {
       
  6253         value.insert("QScriptValue()", 0);
       
  6254         value.insert("QScriptValue(QScriptValue::UndefinedValue)", 0);
       
  6255         value.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  6256         value.insert("QScriptValue(true)", 1);
       
  6257         value.insert("QScriptValue(false)", 0);
       
  6258         value.insert("QScriptValue(int(122))", 122);
       
  6259         value.insert("QScriptValue(uint(124))", 124);
       
  6260         value.insert("QScriptValue(0)", 0);
       
  6261         value.insert("QScriptValue(0.0)", 0);
       
  6262         value.insert("QScriptValue(123.0)", 123);
       
  6263         value.insert("QScriptValue(6.37e-8)", 0);
       
  6264         value.insert("QScriptValue(-6.37e-8)", 0);
       
  6265         value.insert("QScriptValue(0x43211234)", 1126240820);
       
  6266         value.insert("QScriptValue(0x10000)", 65536);
       
  6267         value.insert("QScriptValue(0x10001)", 65537);
       
  6268         value.insert("QScriptValue(qSNaN())", 0);
       
  6269         value.insert("QScriptValue(qQNaN())", 0);
       
  6270         value.insert("QScriptValue(qInf())", 0);
       
  6271         value.insert("QScriptValue(-qInf())", 0);
       
  6272         value.insert("QScriptValue(\"NaN\")", 0);
       
  6273         value.insert("QScriptValue(\"Infinity\")", 0);
       
  6274         value.insert("QScriptValue(\"-Infinity\")", 0);
       
  6275         value.insert("QScriptValue(\"ciao\")", 0);
       
  6276         value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0);
       
  6277         value.insert("QScriptValue(QString(\"\"))", 0);
       
  6278         value.insert("QScriptValue(QString())", 0);
       
  6279         value.insert("QScriptValue(QString(\"0\"))", 0);
       
  6280         value.insert("QScriptValue(QString(\"123\"))", 123);
       
  6281         value.insert("QScriptValue(QString(\"12.4\"))", 12);
       
  6282         value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0);
       
  6283         value.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  6284         value.insert("QScriptValue(0, true)", 1);
       
  6285         value.insert("QScriptValue(0, false)", 0);
       
  6286         value.insert("QScriptValue(0, int(122))", 122);
       
  6287         value.insert("QScriptValue(0, uint(124))", 124);
       
  6288         value.insert("QScriptValue(0, 0)", 0);
       
  6289         value.insert("QScriptValue(0, 0.0)", 0);
       
  6290         value.insert("QScriptValue(0, 123.0)", 123);
       
  6291         value.insert("QScriptValue(0, 6.37e-8)", 0);
       
  6292         value.insert("QScriptValue(0, -6.37e-8)", 0);
       
  6293         value.insert("QScriptValue(0, 0x43211234)", 1126240820);
       
  6294         value.insert("QScriptValue(0, 0x10000)", 65536);
       
  6295         value.insert("QScriptValue(0, 0x10001)", 65537);
       
  6296         value.insert("QScriptValue(0, qSNaN())", 0);
       
  6297         value.insert("QScriptValue(0, qQNaN())", 0);
       
  6298         value.insert("QScriptValue(0, qInf())", 0);
       
  6299         value.insert("QScriptValue(0, -qInf())", 0);
       
  6300         value.insert("QScriptValue(0, \"NaN\")", 0);
       
  6301         value.insert("QScriptValue(0, \"Infinity\")", 0);
       
  6302         value.insert("QScriptValue(0, \"-Infinity\")", 0);
       
  6303         value.insert("QScriptValue(0, \"ciao\")", 0);
       
  6304         value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0);
       
  6305         value.insert("QScriptValue(0, QString(\"\"))", 0);
       
  6306         value.insert("QScriptValue(0, QString())", 0);
       
  6307         value.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  6308         value.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  6309         value.insert("QScriptValue(0, QString(\"12.3\"))", 12);
       
  6310         value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0);
       
  6311         value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  6312         value.insert("QScriptValue(engine, true)", 1);
       
  6313         value.insert("QScriptValue(engine, false)", 0);
       
  6314         value.insert("QScriptValue(engine, int(122))", 122);
       
  6315         value.insert("QScriptValue(engine, uint(124))", 124);
       
  6316         value.insert("QScriptValue(engine, 0)", 0);
       
  6317         value.insert("QScriptValue(engine, 0.0)", 0);
       
  6318         value.insert("QScriptValue(engine, 123.0)", 123);
       
  6319         value.insert("QScriptValue(engine, 6.37e-8)", 0);
       
  6320         value.insert("QScriptValue(engine, -6.37e-8)", 0);
       
  6321         value.insert("QScriptValue(engine, 0x43211234)", 1126240820);
       
  6322         value.insert("QScriptValue(engine, 0x10000)", 65536);
       
  6323         value.insert("QScriptValue(engine, 0x10001)", 65537);
       
  6324         value.insert("QScriptValue(engine, qSNaN())", 0);
       
  6325         value.insert("QScriptValue(engine, qQNaN())", 0);
       
  6326         value.insert("QScriptValue(engine, qInf())", 0);
       
  6327         value.insert("QScriptValue(engine, -qInf())", 0);
       
  6328         value.insert("QScriptValue(engine, \"NaN\")", 0);
       
  6329         value.insert("QScriptValue(engine, \"Infinity\")", 0);
       
  6330         value.insert("QScriptValue(engine, \"-Infinity\")", 0);
       
  6331         value.insert("QScriptValue(engine, \"ciao\")", 0);
       
  6332         value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0);
       
  6333         value.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  6334         value.insert("QScriptValue(engine, QString())", 0);
       
  6335         value.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  6336         value.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  6337         value.insert("QScriptValue(engine, QString(\"1.23\"))", 1);
       
  6338         value.insert("engine->evaluate(\"[]\")", 0);
       
  6339         value.insert("engine->evaluate(\"{}\")", 0);
       
  6340         value.insert("engine->evaluate(\"Object.prototype\")", 0);
       
  6341         value.insert("engine->evaluate(\"Date.prototype\")", 0);
       
  6342         value.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  6343         value.insert("engine->evaluate(\"Function.prototype\")", 0);
       
  6344         value.insert("engine->evaluate(\"Error.prototype\")", 0);
       
  6345         value.insert("engine->evaluate(\"Object\")", 0);
       
  6346         value.insert("engine->evaluate(\"Array\")", 0);
       
  6347         value.insert("engine->evaluate(\"Number\")", 0);
       
  6348         value.insert("engine->evaluate(\"Function\")", 0);
       
  6349         value.insert("engine->evaluate(\"(function() { return 1; })\")", 0);
       
  6350         value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0);
       
  6351         value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0);
       
  6352         value.insert("engine->evaluate(\"/foo/\")", 0);
       
  6353         value.insert("engine->evaluate(\"new Object()\")", 0);
       
  6354         value.insert("engine->evaluate(\"new Array()\")", 0);
       
  6355         value.insert("engine->evaluate(\"new Error()\")", 0);
       
  6356         value.insert("engine->nullValue()", 0);
       
  6357         value.insert("engine->undefinedValue()", 0);
       
  6358     }
       
  6359     newRow(expr) << value.value(expr);
       
  6360 }
       
  6361 
       
  6362 void tst_QScriptValue::qscriptvalue_castquint32_test(const char*, const QScriptValue& value)
       
  6363 {
       
  6364     QFETCH(quint32, expected);
       
  6365     QCOMPARE(qscriptvalue_cast<quint32>(value), expected);
       
  6366 }
       
  6367 
       
  6368 DEFINE_TEST_FUNCTION(qscriptvalue_castquint32)
       
  6369 
       
  6370 
       
  6371 void tst_QScriptValue::qscriptvalue_castquint16_initData()
       
  6372 {
       
  6373     QTest::addColumn<quint16>("expected");
       
  6374     initScriptValues();
       
  6375 }
       
  6376 
       
  6377 void tst_QScriptValue::qscriptvalue_castquint16_makeData(const char* expr)
       
  6378 {
       
  6379     static QHash<QString, quint16> value;
       
  6380     if (value.isEmpty()) {
       
  6381         value.insert("QScriptValue()", 0);
       
  6382         value.insert("QScriptValue(QScriptValue::UndefinedValue)", 0);
       
  6383         value.insert("QScriptValue(QScriptValue::NullValue)", 0);
       
  6384         value.insert("QScriptValue(true)", 1);
       
  6385         value.insert("QScriptValue(false)", 0);
       
  6386         value.insert("QScriptValue(int(122))", 122);
       
  6387         value.insert("QScriptValue(uint(124))", 124);
       
  6388         value.insert("QScriptValue(0)", 0);
       
  6389         value.insert("QScriptValue(0.0)", 0);
       
  6390         value.insert("QScriptValue(123.0)", 123);
       
  6391         value.insert("QScriptValue(6.37e-8)", 0);
       
  6392         value.insert("QScriptValue(-6.37e-8)", 0);
       
  6393         value.insert("QScriptValue(0x43211234)", 4660);
       
  6394         value.insert("QScriptValue(0x10000)", 0);
       
  6395         value.insert("QScriptValue(0x10001)", 1);
       
  6396         value.insert("QScriptValue(qSNaN())", 0);
       
  6397         value.insert("QScriptValue(qQNaN())", 0);
       
  6398         value.insert("QScriptValue(qInf())", 0);
       
  6399         value.insert("QScriptValue(-qInf())", 0);
       
  6400         value.insert("QScriptValue(\"NaN\")", 0);
       
  6401         value.insert("QScriptValue(\"Infinity\")", 0);
       
  6402         value.insert("QScriptValue(\"-Infinity\")", 0);
       
  6403         value.insert("QScriptValue(\"ciao\")", 0);
       
  6404         value.insert("QScriptValue(QString::fromLatin1(\"ciao\"))", 0);
       
  6405         value.insert("QScriptValue(QString(\"\"))", 0);
       
  6406         value.insert("QScriptValue(QString())", 0);
       
  6407         value.insert("QScriptValue(QString(\"0\"))", 0);
       
  6408         value.insert("QScriptValue(QString(\"123\"))", 123);
       
  6409         value.insert("QScriptValue(QString(\"12.4\"))", 12);
       
  6410         value.insert("QScriptValue(0, QScriptValue::UndefinedValue)", 0);
       
  6411         value.insert("QScriptValue(0, QScriptValue::NullValue)", 0);
       
  6412         value.insert("QScriptValue(0, true)", 1);
       
  6413         value.insert("QScriptValue(0, false)", 0);
       
  6414         value.insert("QScriptValue(0, int(122))", 122);
       
  6415         value.insert("QScriptValue(0, uint(124))", 124);
       
  6416         value.insert("QScriptValue(0, 0)", 0);
       
  6417         value.insert("QScriptValue(0, 0.0)", 0);
       
  6418         value.insert("QScriptValue(0, 123.0)", 123);
       
  6419         value.insert("QScriptValue(0, 6.37e-8)", 0);
       
  6420         value.insert("QScriptValue(0, -6.37e-8)", 0);
       
  6421         value.insert("QScriptValue(0, 0x43211234)", 4660);
       
  6422         value.insert("QScriptValue(0, 0x10000)", 0);
       
  6423         value.insert("QScriptValue(0, 0x10001)", 1);
       
  6424         value.insert("QScriptValue(0, qSNaN())", 0);
       
  6425         value.insert("QScriptValue(0, qQNaN())", 0);
       
  6426         value.insert("QScriptValue(0, qInf())", 0);
       
  6427         value.insert("QScriptValue(0, -qInf())", 0);
       
  6428         value.insert("QScriptValue(0, \"NaN\")", 0);
       
  6429         value.insert("QScriptValue(0, \"Infinity\")", 0);
       
  6430         value.insert("QScriptValue(0, \"-Infinity\")", 0);
       
  6431         value.insert("QScriptValue(0, \"ciao\")", 0);
       
  6432         value.insert("QScriptValue(0, QString::fromLatin1(\"ciao\"))", 0);
       
  6433         value.insert("QScriptValue(0, QString(\"\"))", 0);
       
  6434         value.insert("QScriptValue(0, QString())", 0);
       
  6435         value.insert("QScriptValue(0, QString(\"0\"))", 0);
       
  6436         value.insert("QScriptValue(0, QString(\"123\"))", 123);
       
  6437         value.insert("QScriptValue(0, QString(\"12.3\"))", 12);
       
  6438         value.insert("QScriptValue(engine, QScriptValue::UndefinedValue)", 0);
       
  6439         value.insert("QScriptValue(engine, QScriptValue::NullValue)", 0);
       
  6440         value.insert("QScriptValue(engine, true)", 1);
       
  6441         value.insert("QScriptValue(engine, false)", 0);
       
  6442         value.insert("QScriptValue(engine, int(122))", 122);
       
  6443         value.insert("QScriptValue(engine, uint(124))", 124);
       
  6444         value.insert("QScriptValue(engine, 0)", 0);
       
  6445         value.insert("QScriptValue(engine, 0.0)", 0);
       
  6446         value.insert("QScriptValue(engine, 123.0)", 123);
       
  6447         value.insert("QScriptValue(engine, 6.37e-8)", 0);
       
  6448         value.insert("QScriptValue(engine, -6.37e-8)", 0);
       
  6449         value.insert("QScriptValue(engine, 0x43211234)", 4660);
       
  6450         value.insert("QScriptValue(engine, 0x10000)", 0);
       
  6451         value.insert("QScriptValue(engine, 0x10001)", 1);
       
  6452         value.insert("QScriptValue(engine, qSNaN())", 0);
       
  6453         value.insert("QScriptValue(engine, qQNaN())", 0);
       
  6454         value.insert("QScriptValue(engine, qInf())", 0);
       
  6455         value.insert("QScriptValue(engine, -qInf())", 0);
       
  6456         value.insert("QScriptValue(engine, \"NaN\")", 0);
       
  6457         value.insert("QScriptValue(engine, \"Infinity\")", 0);
       
  6458         value.insert("QScriptValue(engine, \"-Infinity\")", 0);
       
  6459         value.insert("QScriptValue(engine, \"ciao\")", 0);
       
  6460         value.insert("QScriptValue(engine, QString::fromLatin1(\"ciao\"))", 0);
       
  6461         value.insert("QScriptValue(engine, QString(\"\"))", 0);
       
  6462         value.insert("QScriptValue(engine, QString())", 0);
       
  6463         value.insert("QScriptValue(engine, QString(\"0\"))", 0);
       
  6464         value.insert("QScriptValue(engine, QString(\"123\"))", 123);
       
  6465         value.insert("QScriptValue(engine, QString(\"1.23\"))", 1);
       
  6466         value.insert("engine->evaluate(\"[]\")", 0);
       
  6467         value.insert("engine->evaluate(\"{}\")", 0);
       
  6468         value.insert("engine->evaluate(\"Object.prototype\")", 0);
       
  6469         value.insert("engine->evaluate(\"Date.prototype\")", 0);
       
  6470         value.insert("engine->evaluate(\"Array.prototype\")", 0);
       
  6471         value.insert("engine->evaluate(\"Function.prototype\")", 0);
       
  6472         value.insert("engine->evaluate(\"Error.prototype\")", 0);
       
  6473         value.insert("engine->evaluate(\"Object\")", 0);
       
  6474         value.insert("engine->evaluate(\"Array\")", 0);
       
  6475         value.insert("engine->evaluate(\"Number\")", 0);
       
  6476         value.insert("engine->evaluate(\"Function\")", 0);
       
  6477         value.insert("engine->evaluate(\"(function() { return 1; })\")", 0);
       
  6478         value.insert("engine->evaluate(\"(function() { return 'ciao'; })\")", 0);
       
  6479         value.insert("engine->evaluate(\"(function() { throw new Error('foo'); })\")", 0);
       
  6480         value.insert("engine->evaluate(\"/foo/\")", 0);
       
  6481         value.insert("engine->evaluate(\"new Object()\")", 0);
       
  6482         value.insert("engine->evaluate(\"new Array()\")", 0);
       
  6483         value.insert("engine->evaluate(\"new Error()\")", 0);
       
  6484         value.insert("engine->nullValue()", 0);
       
  6485         value.insert("engine->undefinedValue()", 0);
       
  6486     }
       
  6487     newRow(expr) << value.value(expr);
       
  6488 }
       
  6489 
       
  6490 void tst_QScriptValue::qscriptvalue_castquint16_test(const char*, const QScriptValue& value)
       
  6491 {
       
  6492     QFETCH(quint16, expected);
       
  6493     QCOMPARE(qscriptvalue_cast<quint16>(value), expected);
       
  6494 }
       
  6495 
       
  6496 DEFINE_TEST_FUNCTION(qscriptvalue_castquint16)