diff options
author | Kurt Pattyn <pattyn.kurt@gmail.com> | 2013-10-06 13:20:24 +0200 |
---|---|---|
committer | Kurt Pattyn <pattyn.kurt@gmail.com> | 2013-10-10 14:05:17 +0200 |
commit | df7d55861412c9ea322d96022e6e4c5716ad9c5d (patch) | |
tree | 35c4020a5f87f3bcb9f1129ce1b0166772c08e68 /tests | |
parent | a10c5d912b342348837bf9f9d45dd27d53089d5a (diff) | |
download | qtwebsockets-df7d55861412c9ea322d96022e6e4c5716ad9c5d.tar.gz |
Changed expected failure with expected success
Due to an issue that has been solved in Qt, all tests for non-character codes should now succeed
This change also contains some minor bug fixes for incorrect signatures in signal-slot connections
Change-Id: I6d8de9c40026465ffde58c9cbe848ce8871008f6
Reviewed-by: Steven Ceuppens <steven.ceuppens@icloud.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/dataprocessor/tst_dataprocessor.cpp | 61 |
1 files changed, 33 insertions, 28 deletions
diff --git a/tests/auto/dataprocessor/tst_dataprocessor.cpp b/tests/auto/dataprocessor/tst_dataprocessor.cpp index 58acfda..fac155d 100644 --- a/tests/auto/dataprocessor/tst_dataprocessor.cpp +++ b/tests/auto/dataprocessor/tst_dataprocessor.cpp @@ -365,8 +365,8 @@ void tst_DataProcessor::goodTextFrame() QSignalSpy spyFrameReceived(&dataProcessor, SIGNAL(textFrameReceived(QString,bool))); QSignalSpy spyMessageReceived(&dataProcessor, SIGNAL(textMessageReceived(QString))); - QSignalSpy spyBinaryFrameReceived(&dataProcessor, SIGNAL(binaryFrameReceived(QString,bool))); - QSignalSpy spyBinaryMessageReceived(&dataProcessor, SIGNAL(binaryMessageReceived(QString))); + QSignalSpy spyBinaryFrameReceived(&dataProcessor, SIGNAL(binaryFrameReceived(QByteArray,bool))); + QSignalSpy spyBinaryMessageReceived(&dataProcessor, SIGNAL(binaryMessageReceived(QByteArray))); dataProcessor.process(&buffer); QCOMPARE(spyFrameReceived.count(), 1); QCOMPARE(spyMessageReceived.count(), 1); @@ -399,6 +399,7 @@ void tst_DataProcessor::goodCloseFrame() } else { + data.append(QChar::fromLatin1(0)); //payload length 0; //dataprocessor emits a CC_NORMAL close code when none is present closeCode = QWebSocketProtocol::CC_NORMAL; } @@ -430,35 +431,39 @@ void tst_DataProcessor::nonCharacterCodes() QFETCH(quint8, firstByte); QFETCH(quint8, secondByte); QFETCH(QByteArray, payload); + QFETCH(bool, isContinuationFrame); - QByteArray data; - QBuffer buffer; - QWebSocketDataProcessor dataProcessor; - QSignalSpy frameSpy(&dataProcessor, SIGNAL(textFrameReceived(QString,bool))); - QSignalSpy messageSpy(&dataProcessor, SIGNAL(textMessageReceived(QString))); - QSignalSpy binaryFrameSpy(&dataProcessor, SIGNAL(binaryFrameReceived(QByteArray,bool))); - QSignalSpy binaryMessageSpy(&dataProcessor, SIGNAL(textMessageReceived(QByteArray))); - - data.append(firstByte).append(secondByte); - data.append(payload); - buffer.setData(data); - buffer.open(QIODevice::ReadOnly); - dataProcessor.process(&buffer); - QEXPECT_FAIL(QTest::currentDataTag(), "Due to QTextCode interpeting non-characters unicode points as invalid (QTBUG-33229).", Abort); + if (!isContinuationFrame) + { + QByteArray data; + QBuffer buffer; + QWebSocketDataProcessor dataProcessor; + QSignalSpy frameSpy(&dataProcessor, SIGNAL(textFrameReceived(QString,bool))); + QSignalSpy messageSpy(&dataProcessor, SIGNAL(textMessageReceived(QString))); + QSignalSpy binaryFrameSpy(&dataProcessor, SIGNAL(binaryFrameReceived(QByteArray,bool))); + QSignalSpy binaryMessageSpy(&dataProcessor, SIGNAL(binaryMessageReceived(QByteArray))); + + data.append(firstByte).append(secondByte); + data.append(payload); + buffer.setData(data); + buffer.open(QIODevice::ReadOnly); + dataProcessor.process(&buffer); + //QEXPECT_FAIL(QTest::currentDataTag(), "Due to QTextCode interpeting non-characters unicode points as invalid (QTBUG-33229).", Abort); - QCOMPARE(frameSpy.count(), 1); - QCOMPARE(messageSpy.count(), 1); - QCOMPARE(binaryFrameSpy.count(), 0); - QCOMPARE(binaryMessageSpy.count(), 0); + QCOMPARE(frameSpy.count(), 1); + QCOMPARE(messageSpy.count(), 1); + QCOMPARE(binaryFrameSpy.count(), 0); + QCOMPARE(binaryMessageSpy.count(), 0); - QVariantList arguments = frameSpy.takeFirst(); - QCOMPARE(arguments.at(0).value<QString>().toUtf8(), payload); - arguments = messageSpy.takeFirst(); - QCOMPARE(arguments.at(0).value<QString>().toUtf8(), payload); - buffer.close(); - frameSpy.clear(); - messageSpy.clear(); - data.clear(); + QVariantList arguments = frameSpy.takeFirst(); + QCOMPARE(arguments.at(0).value<QString>().toUtf8(), payload); + arguments = messageSpy.takeFirst(); + QCOMPARE(arguments.at(0).value<QString>().toUtf8(), payload); + buffer.close(); + frameSpy.clear(); + messageSpy.clear(); + data.clear(); + } } void tst_DataProcessor::frameTooSmall() |