Home | History | Annotate | Download | only in qscriptvalue
      1 /*
      2     Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
      3 
      4     This library is free software; you can redistribute it and/or
      5     modify it under the terms of the GNU Library General Public
      6     License as published by the Free Software Foundation; either
      7     version 2 of the License, or (at your option) any later version.
      8 
      9     This library is distributed in the hope that it will be useful,
     10     but WITHOUT ANY WARRANTY; without even the implied warranty of
     11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     12     Library General Public License for more details.
     13 
     14     You should have received a copy of the GNU Library General Public License
     15     along with this library; see the file COPYING.LIB.  If not, write to
     16     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
     17     Boston, MA 02110-1301, USA.
     18 */
     19 
     20 #ifndef tst_qscriptvalue_h
     21 #define tst_qscriptvalue_h
     22 
     23 #include "qscriptengine.h"
     24 #include "qscriptvalue.h"
     25 #include <QtCore/qnumeric.h>
     26 #include <QtTest/qtest.h>
     27 
     28 #define DEFINE_TEST_VALUE(expr) m_values.insert(QString::fromLatin1(#expr), expr)
     29 
     30 Q_DECLARE_METATYPE(QScriptValue*);
     31 Q_DECLARE_METATYPE(QScriptValue);
     32 typedef QPair<QString, QScriptValue> QPairQStringAndQScriptValue;
     33 Q_DECLARE_METATYPE(QPairQStringAndQScriptValue);
     34 
     35 class tst_QScriptValue : public QObject {
     36     Q_OBJECT
     37 
     38 public:
     39     tst_QScriptValue();
     40     virtual ~tst_QScriptValue();
     41 
     42 private slots:
     43     void toStringSimple_data();
     44     void toStringSimple();
     45     void copyConstructor_data();
     46     void copyConstructor();
     47     void assignOperator_data();
     48     void assignOperator();
     49     void dataSharing();
     50     void constructors_data();
     51     void constructors();
     52     void getSetPrototype();
     53     void call();
     54     void ctor();
     55     void toObjectSimple();
     56     void getPropertySimple_data();
     57     void getPropertySimple();
     58     void setPropertySimple();
     59     void setProperty_data();
     60     void setProperty();
     61     void getSetProperty();
     62     void getPropertyResolveFlag();
     63     void propertyFlag_data();
     64     void propertyFlag();
     65     void globalObjectChanges();
     66     void assignAndCopyConstruct_data();
     67     void assignAndCopyConstruct();
     68 
     69     // Generated test functions.
     70     void isArray_data();
     71     void isArray();
     72 
     73     void isBool_data();
     74     void isBool();
     75 
     76     void isBoolean_data();
     77     void isBoolean();
     78 
     79     void isError_data();
     80     void isError();
     81 
     82     void isNumber_data();
     83     void isNumber();
     84 
     85     void isFunction_data();
     86     void isFunction();
     87 
     88     void isNull_data();
     89     void isNull();
     90 
     91     void isObject_data();
     92     void isObject();
     93 
     94     void isString_data();
     95     void isString();
     96 
     97     void isUndefined_data();
     98     void isUndefined();
     99 
    100     void isValid_data();
    101     void isValid();
    102 
    103     void toString_data();
    104     void toString();
    105 
    106     void toNumber_data();
    107     void toNumber();
    108 
    109     void toBool_data();
    110     void toBool();
    111 
    112     void toBoolean_data();
    113     void toBoolean();
    114 
    115     void toInteger_data();
    116     void toInteger();
    117 
    118     void toInt32_data();
    119     void toInt32();
    120 
    121     void toUInt32_data();
    122     void toUInt32();
    123 
    124     void toUInt16_data();
    125     void toUInt16();
    126 
    127     void equals_data();
    128     void equals();
    129 
    130     void strictlyEquals_data();
    131     void strictlyEquals();
    132 
    133     void instanceOf_data();
    134     void instanceOf();
    135 
    136 private:
    137     // Generated function
    138     QPair<QString, QScriptValue> initScriptValues(uint idx);
    139 
    140     QScriptEngine* m_engine;
    141 };
    142 
    143 #endif // tst_qscriptvalue_h
    144