diff options
author | Liang Qi <liang.qi@qt.io> | 2016-11-16 08:26:29 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-11-16 08:27:51 +0100 |
commit | 498b1424ce273beed02c5e1c93ed0ffd610624b8 (patch) | |
tree | 7be9bf206d6153296fd09680e8bcbf5997dc0a26 /tests | |
parent | dc210f2f4904eb244250d94c37a38e2b57700044 (diff) | |
parent | 20adfdf12e29149c589310a065b0259130ac51f0 (diff) |
Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts:
tests/auto/qmodbuspdu/tst_qmodbuspdu.cpp
Change-Id: Id97e8ef6a6c176add1eda3738888c69c33f5378c
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/qmodbuspdu/tst_qmodbuspdu.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/auto/qmodbuspdu/tst_qmodbuspdu.cpp b/tests/auto/qmodbuspdu/tst_qmodbuspdu.cpp index 592a14e..f442344 100644 --- a/tests/auto/qmodbuspdu/tst_qmodbuspdu.cpp +++ b/tests/auto/qmodbuspdu/tst_qmodbuspdu.cpp @@ -844,6 +844,25 @@ private slots: }); QCOMPARE(QModbusRequest::calculateDataSize(request), 27); } + + void testCalculateLongDataSize() + { + QByteArray longData = QByteArray(128, ' '); + longData[0] = longData.size(); + const QModbusResponse response(QModbusResponse::ReadCoils, longData); + QCOMPARE(QModbusResponse::calculateDataSize(response), 1 + longData.size()); + + const QModbusRequest wfrRequest(QModbusPdu::WriteFileRecord, longData); + QCOMPARE(QModbusRequest::calculateDataSize(wfrRequest), 1 + longData.size()); + + longData = QByteArray(4 + 128, ' '); + longData[4] = 128; + const QModbusRequest wmcRequest(QModbusPdu::WriteMultipleCoils, longData); + QCOMPARE(QModbusRequest::calculateDataSize(wmcRequest), 1 + longData.size()); + + const QModbusRequest wmrRequest(QModbusPdu::WriteMultipleRegisters, longData); + QCOMPARE(QModbusRequest::calculateDataSize(wmrRequest), 1 + longData.size()); + } }; QTEST_MAIN(tst_QModbusPdu) |