summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorKarsten Heimrich <karsten.heimrich@theqtcompany.com>2016-01-04 13:21:04 +0100
committerKarsten Heimrich <karsten.heimrich@theqtcompany.com>2016-01-04 13:53:38 +0000
commit28babbb26897a6bb1c01261160cf7bc72890ed8a (patch)
tree43c423cebfc87e5eece9ecc4f75b8f52ff2a2373 /tests
parentce002ea7024ee2dbc6938a6d81a7dcf75ab746ab (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.cpp40
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,