diff options
Diffstat (limited to 'tests/auto/declarative/qdeclarativeecmascript/data/sequenceConversion.copy.qml')
-rw-r--r-- | tests/auto/declarative/qdeclarativeecmascript/data/sequenceConversion.copy.qml | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/sequenceConversion.copy.qml b/tests/auto/declarative/qdeclarativeecmascript/data/sequenceConversion.copy.qml deleted file mode 100644 index f6614dad0c..0000000000 --- a/tests/auto/declarative/qdeclarativeecmascript/data/sequenceConversion.copy.qml +++ /dev/null @@ -1,160 +0,0 @@ -import QtQuick 2.0 -import Qt.test 1.0 - -Item { - id: root - objectName: "root" - - MySequenceConversionObject { - id: msco - objectName: "msco" - } - - property bool success: true - - property variant intList - property variant qrealList - property variant boolList - property variant stringList - property variant urlList - property variant qstringList - - // this test ensures that the "copy resource" codepaths work - function testCopySequences() { - success = true; - - // create "copy resource" sequences - var jsIntList = msco.generateIntSequence(); - var jsQrealList = msco.generateQrealSequence(); - var jsBoolList = msco.generateBoolSequence(); - var jsStringList = msco.generateStringSequence(); - var jsUrlList = msco.generateUrlSequence(); - var jsQStringList = msco.generateQStringSequence(); - - if (jsIntList.toString() != [1, 2, 3].toString()) - success = false; - if (jsQrealList.toString() != [1.1, 2.2, 3.3].toString()) - success = false; - if (jsBoolList.toString() != [true, false, true].toString()) - success = false; - if (jsStringList.toString() != ["one", "two", "three"].toString()) - success = false; - if (jsUrlList.toString() != ["http://www.example1.com", "http://www.example2.com", "http://www.example3.com"].toString()) - success = false; - if (jsQStringList.toString() != ["one", "two", "three"].toString()) - success = false; - - // copy the sequence; should result in a new copy - intList = jsIntList; - qrealList = jsQrealList; - boolList = jsBoolList; - stringList = jsStringList; - urlList = jsUrlList; - qstringList = jsQStringList; - - // these operations shouldn't modify either variables - because - // we don't handle writing to the intermediate variant at list[index] - // for variant properties. - intList[1] = 8; - qrealList[1] = 8.8; - boolList[1] = true; - stringList[1] = "eight"; - urlList[1] = "http://www.example8.com"; - qstringList[1] = "eight"; - - if (jsIntList[1] == 8) - success = false; - if (jsQrealList[1] == 8.8) - success = false; - if (jsBoolList[1] == true) - success = false; - if (jsStringList[1] == "eight") - success = false; - if (jsUrlList[1] == "http://www.example8.com") - success = false; - if (jsQStringList[1] == "eight") - success = false; - - // assign a "copy resource" sequence to a QObject Q_PROPERTY - msco.intListProperty = intList; - msco.qrealListProperty = qrealList; - msco.boolListProperty = boolList; - msco.stringListProperty = stringList; - msco.urlListProperty = urlList; - msco.qstringListProperty = qstringList; - - if (msco.intListProperty.toString() != [1, 2, 3].toString()) - success = false; - if (msco.qrealListProperty.toString() != [1.1, 2.2, 3.3].toString()) - success = false; - if (msco.boolListProperty.toString() != [true, false, true].toString()) - success = false; - if (msco.stringListProperty.toString() != ["one", "two", "three"].toString()) - success = false; - if (msco.urlListProperty.toString() != ["http://www.example1.com", "http://www.example2.com", "http://www.example3.com"].toString()) - success = false; - if (msco.qstringListProperty.toString() != ["one", "two", "three"].toString()) - success = false; - - // now modify the QObject Q_PROPERTY (reference resource) sequences - shouldn't modify the copy resource sequences. - msco.intListProperty[2] = 9; - msco.qrealListProperty[2] = 9.9; - msco.boolListProperty[2] = false; - msco.stringListProperty[2] = "nine"; - msco.urlListProperty[2] = "http://www.example9.com"; - msco.qstringListProperty[2] = "nine"; - - if (intList[2] == 9) - success = false; - if (qrealList[2] == 9.9) - success = false; - if (boolList[2] == false) - success = false; - if (stringList[2] == "nine") - success = false; - if (urlList[2] == "http://www.example9.com") - success = false; - if (qstringList[2] == "nine") - success = false; - } - - property int intVal - property real qrealVal - property bool boolVal - property string stringVal - - // this test ensures that indexed access works for copy resource sequences. - function readSequenceCopyElements() { - success = true; - - var jsIntList = msco.generateIntSequence(); - var jsQrealList = msco.generateQrealSequence(); - var jsBoolList = msco.generateBoolSequence(); - var jsStringList = msco.generateStringSequence(); - - intVal = jsIntList[1]; - qrealVal = jsQrealList[1]; - boolVal = jsBoolList[1]; - stringVal = jsStringList[1]; - - if (intVal != 2) - success = false; - if (qrealVal != 2.2) - success = false; - if (boolVal != false) - success = false; - if (stringVal != "two") - success = false; - } - - // this test ensures that equality works for copy resource sequences. - function testEqualitySemantics() { - success = true; - - var jsIntList = msco.generateIntSequence(); - var jsIntList2 = msco.generateIntSequence(); - - if (jsIntList == jsIntList2) success = false; - if (jsIntList != jsIntList) success = false; - } -} |