diff options
author | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2015-11-11 21:45:17 +0100 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2015-11-12 18:17:48 +0000 |
commit | 55e86c457ee4b5ae52c5e283fd40fe1ae6aa29ca (patch) | |
tree | d8f479cd83faedaa680f43cf6945d1455b9c9ff8 /tests | |
parent | fd10c4eacc7679ae44ea3f5b96dd44beb963b06a (diff) |
Implement handling of missing server registers, update docs.
Change-Id: I6de28ac751303b05305f3a335e9ee9c2de20c2a3
Reviewed-by: Ralf Nolden <nolden@kde.org>
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/qmodbusserver/tst_qmodbusserver.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/auto/qmodbusserver/tst_qmodbusserver.cpp b/tests/auto/qmodbusserver/tst_qmodbusserver.cpp index 8f56128..99e948b 100644 --- a/tests/auto/qmodbusserver/tst_qmodbusserver.cpp +++ b/tests/auto/qmodbusserver/tst_qmodbusserver.cpp @@ -1082,6 +1082,22 @@ private slots: } QCOMPARE(s_msg, QString("QModbusServer::setData() call did end in the expected OVERRIDE.")); } + + void testReadWriteDataMissingOrInvalidRegister() + { + TestServer local; + local.setMap({ { QModbusDataUnit::Invalid, QModbusDataUnit() }, + { QModbusDataUnit::Coils, QModbusDataUnit(QModbusDataUnit::Coils) }, + { QModbusDataUnit::DiscreteInputs, QModbusDataUnit(QModbusDataUnit::DiscreteInputs) }}); + + QModbusDataUnit invalid; + QCOMPARE(local.data(&invalid), false); + QCOMPARE(local.setData(invalid), false); + + QModbusDataUnit missing(QModbusDataUnit::HoldingRegisters); + QCOMPARE(local.data(&missing), false); + QCOMPARE(local.setData(missing), false); + } }; QTEST_MAIN(tst_QModbusServer) |