diff options
author | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2016-01-04 13:21:04 +0100 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2016-01-04 13:53:38 +0000 |
commit | 28babbb26897a6bb1c01261160cf7bc72890ed8a (patch) | |
tree | 43c423cebfc87e5eece9ecc4f75b8f52ff2a2373 /tests | |
parent | ce002ea7024ee2dbc6938a6d81a7dcf75ab746ab (diff) |
Enable DiagnosticsRequest-RestartCommunicationsOption auto-test.
Change-Id: I7ebadb8bee9eee171b174af81a3eb0411c8c8f40
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/qmodbusserver/tst_qmodbusserver.cpp | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/tests/auto/qmodbusserver/tst_qmodbusserver.cpp b/tests/auto/qmodbusserver/tst_qmodbusserver.cpp index 7b1d774..09abdd3 100644 --- a/tests/auto/qmodbusserver/tst_qmodbusserver.cpp +++ b/tests/auto/qmodbusserver/tst_qmodbusserver.cpp @@ -46,10 +46,14 @@ class TestServer : public QModbusServer public: TestServer() Q_DECL_EQ_DEFAULT; - virtual bool open() Q_DECL_OVERRIDE { return true; } - virtual void close() Q_DECL_OVERRIDE {} - - QModbusResponse processRequest(const QModbusPdu &request) + bool open() Q_DECL_OVERRIDE { + setState(QModbusDevice::ConnectedState); + return true; + } + void close() Q_DECL_OVERRIDE { + setState(QModbusDevice::UnconnectedState); + } + QModbusResponse processRequest(const QModbusPdu &request) Q_DECL_OVERRIDE { return QModbusServer::processRequest(request); } @@ -344,21 +348,19 @@ private slots: QCOMPARE(response.data(), QByteArray::fromHex("000000ffabcd")); //subfunction 01 - //TODO: impossible due to connectDevice() asking open() which is pure virtual - //validate this in qmodbustcpserver and qmodbusrtuslave -// request = QModbusRequest(QModbusRequest::Diagnostics, -// QByteArray::fromHex("00010000")); -// response = server.processRequest(request); -// QCOMPARE(response.isException(), false); -// // response, equals request -// QCOMPARE(response.data(), QByteArray::fromHex("00010000")); - -// request = QModbusRequest(QModbusRequest::Diagnostics, -// QByteArray::fromHex("0001ff00")); -// response = server.processRequest(request); -// QCOMPARE(response.isException(), false); -// // response, equals request -// QCOMPARE(response.data(), QByteArray::fromHex("0001ff00")); + request = QModbusRequest(QModbusRequest::Diagnostics, + QByteArray::fromHex("00010000")); + response = server.processRequest(request); + QCOMPARE(response.isException(), false); + // response, equals request + QCOMPARE(response.data(), QByteArray::fromHex("00010000")); + + request = QModbusRequest(QModbusRequest::Diagnostics, + QByteArray::fromHex("0001ff00")); + response = server.processRequest(request); + QCOMPARE(response.isException(), false); + // response, equals request + QCOMPARE(response.data(), QByteArray::fromHex("0001ff00")); // invalidate request = QModbusRequest(QModbusRequest::Diagnostics, |