diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/plugins/genericcanbus/dummybackend.cpp | 27 | ||||
-rw-r--r-- | tests/auto/plugins/genericcanbus/dummybackend.h | 5 | ||||
-rw-r--r-- | tests/auto/plugins/genericcanbus/main.cpp | 1 | ||||
-rw-r--r-- | tests/auto/plugins/genericcanbusv1/dummybackendv1.cpp | 6 | ||||
-rw-r--r-- | tests/auto/plugins/genericcanbusv1/dummybackendv1.h | 2 | ||||
-rw-r--r-- | tests/auto/qcanbusframe/tst_qcanbusframe.cpp | 44 |
6 files changed, 58 insertions, 27 deletions
diff --git a/tests/auto/plugins/genericcanbus/dummybackend.cpp b/tests/auto/plugins/genericcanbus/dummybackend.cpp index 4c3173a..83d2480 100644 --- a/tests/auto/plugins/genericcanbus/dummybackend.cpp +++ b/tests/auto/plugins/genericcanbus/dummybackend.cpp @@ -43,12 +43,16 @@ QT_BEGIN_NAMESPACE DummyBackend::DummyBackend() : - sendTimer(new QTimer(this)) + simulateReceivingTimer(new QTimer(this)) { - sendTimer->setInterval(1000); - sendTimer->setSingleShot(false); - connect(sendTimer, &QTimer::timeout, this, &DummyBackend::sendMessage); - sendTimer->start(); + connect(simulateReceivingTimer, &QTimer::timeout, [this]() { + const quint64 timeStamp = QDateTime::currentDateTime().toMSecsSinceEpoch(); + QCanBusFrame dummyFrame(12, "def"); + dummyFrame.setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(timeStamp * 1000)); + + enqueueReceivedFrames({dummyFrame}); + }); + simulateReceivingTimer->start(1000); } bool DummyBackend::open() @@ -62,20 +66,9 @@ void DummyBackend::close() setState(QCanBusDevice::UnconnectedState); } -void DummyBackend::sendMessage() -{ - quint64 timeStamp = QDateTime::currentDateTime().toMSecsSinceEpoch(); - QCanBusFrame dummyFrame; - dummyFrame.setFrameId(12); - dummyFrame.setPayload(QByteArray("def")); - dummyFrame.setTimeStamp(QCanBusFrame::TimeStamp(timeStamp / 1000, (timeStamp % 1000) * 1000)); - - enqueueReceivedFrames(QVector<QCanBusFrame>() << dummyFrame); -} - bool DummyBackend::writeFrame(const QCanBusFrame &data) { - qDebug() << "DummyBackend::writeFrame: " << data.toString(); + qDebug("DummyBackend::writeFrame: %ls", qUtf16Printable(data.toString())); return true; } diff --git a/tests/auto/plugins/genericcanbus/dummybackend.h b/tests/auto/plugins/genericcanbus/dummybackend.h index 22bbc80..d9727be 100644 --- a/tests/auto/plugins/genericcanbus/dummybackend.h +++ b/tests/auto/plugins/genericcanbus/dummybackend.h @@ -58,11 +58,8 @@ public: static QList<QCanBusDeviceInfo> interfaces(); -public Q_SLOTS: - void sendMessage(); - private: - QTimer *sendTimer; + QTimer *simulateReceivingTimer = nullptr; }; QT_END_NAMESPACE diff --git a/tests/auto/plugins/genericcanbus/main.cpp b/tests/auto/plugins/genericcanbus/main.cpp index 8e14fee..89103a4 100644 --- a/tests/auto/plugins/genericcanbus/main.cpp +++ b/tests/auto/plugins/genericcanbus/main.cpp @@ -38,7 +38,6 @@ #include <QtSerialBus/qcanbus.h> #include <QtSerialBus/qcanbusfactory.h> -#include "../../../../src/serialbus/qcanbusdeviceinfo_p.h" QT_BEGIN_NAMESPACE diff --git a/tests/auto/plugins/genericcanbusv1/dummybackendv1.cpp b/tests/auto/plugins/genericcanbusv1/dummybackendv1.cpp index 117aeec..4d7d9c0 100644 --- a/tests/auto/plugins/genericcanbusv1/dummybackendv1.cpp +++ b/tests/auto/plugins/genericcanbusv1/dummybackendv1.cpp @@ -43,16 +43,16 @@ QT_BEGIN_NAMESPACE DummyBackendV1::DummyBackendV1() : - sendTimer(new QTimer(this)) + simulateReceivingTimer(new QTimer(this)) { - connect(sendTimer, &QTimer::timeout, [this]() { + connect(simulateReceivingTimer, &QTimer::timeout, [this]() { const quint64 timeStamp = QDateTime::currentDateTime().toMSecsSinceEpoch(); QCanBusFrame dummyFrame(11, "abc"); dummyFrame.setTimeStamp(QCanBusFrame::TimeStamp::fromMicroSeconds(timeStamp * 1000)); enqueueReceivedFrames({dummyFrame}); }); - sendTimer->start(1000); + simulateReceivingTimer->start(1000); } bool DummyBackendV1::open() diff --git a/tests/auto/plugins/genericcanbusv1/dummybackendv1.h b/tests/auto/plugins/genericcanbusv1/dummybackendv1.h index 4c3fc64..6892b4f 100644 --- a/tests/auto/plugins/genericcanbusv1/dummybackendv1.h +++ b/tests/auto/plugins/genericcanbusv1/dummybackendv1.h @@ -57,7 +57,7 @@ public: QString interpretErrorFrame(const QCanBusFrame &) override; private: - QTimer *sendTimer; + QTimer *simulateReceivingTimer = nullptr; }; QT_END_NAMESPACE diff --git a/tests/auto/qcanbusframe/tst_qcanbusframe.cpp b/tests/auto/qcanbusframe/tst_qcanbusframe.cpp index 38c3784..1771325 100644 --- a/tests/auto/qcanbusframe/tst_qcanbusframe.cpp +++ b/tests/auto/qcanbusframe/tst_qcanbusframe.cpp @@ -54,6 +54,8 @@ private slots: void tst_isValid_data(); void tst_isValid(); + void tst_isValidSize_data(); + void tst_isValidSize(); void tst_toString_data(); void tst_toString(); @@ -330,7 +332,7 @@ void tst_QCanBusFrame::tst_isValid_data() << QByteArray(9, 0) << 512u << false << false; QTest::newRow("data frame CAN FD long payload") << QCanBusFrame::DataFrame << true - << QByteArray(9, 0) << 512u << false << true; + << QByteArray(12, 0) << 512u << false << true; QTest::newRow("data frame CAN FD too long payload") << QCanBusFrame::DataFrame << false << QByteArray(65, 0) << 512u << false << true; @@ -362,6 +364,46 @@ void tst_QCanBusFrame::tst_isValid() QCOMPARE(QCanBusFrame::InvalidFrame, frame.frameType()); } +void tst_QCanBusFrame::tst_isValidSize_data() +{ + QTest::addColumn<int>("payloadLength"); + QTest::addColumn<bool>("isFlexibleDataRate"); + QTest::addColumn<bool>("isValid"); + + QTest::newRow("2.0-0") << 0 << false << true; + QTest::newRow("2.0-8") << 8 << false << true; + QTest::newRow("2.0-9") << 9 << false << false; + + QTest::newRow("FD-0") << 0 << true << true; + QTest::newRow("FD-8") << 8 << true << true; + QTest::newRow("FD-9") << 9 << true << false; + QTest::newRow("FD-11") << 11 << true << false; + QTest::newRow("FD-12") << 12 << true << true; + QTest::newRow("FD-13") << 13 << true << false; + QTest::newRow("FD-16") << 16 << true << true; + + QTest::newRow("FD-20") << 20 << true << true; + QTest::newRow("FD-24") << 24 << true << true; + QTest::newRow("FD-32") << 32 << true << true; + QTest::newRow("FD-48") << 48 << true << true; + + QTest::newRow("FD-63") << 63 << true << false; + QTest::newRow("FD-64") << 64 << true << true; + QTest::newRow("FD-65") << 65 << true << false; +} + +void tst_QCanBusFrame::tst_isValidSize() +{ + QFETCH(int, payloadLength); + QFETCH(bool, isFlexibleDataRate); + QFETCH(bool, isValid); + + QCanBusFrame frame(0, QByteArray(payloadLength, ' ')); + frame.setFlexibleDataRateFormat(isFlexibleDataRate); + + QCOMPARE(frame.isValid(), isValid); +} + void tst_QCanBusFrame::tst_toString_data() { QTest::addColumn<QCanBusFrame::FrameType>("frameType"); |