summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/plugins/genericcanbus/main.cpp10
-rw-r--r--tests/auto/qcanbus/tst_qcanbus.cpp9
2 files changed, 16 insertions, 3 deletions
diff --git a/tests/auto/plugins/genericcanbus/main.cpp b/tests/auto/plugins/genericcanbus/main.cpp
index 3fc6225..d482c3b 100644
--- a/tests/auto/plugins/genericcanbus/main.cpp
+++ b/tests/auto/plugins/genericcanbus/main.cpp
@@ -50,9 +50,15 @@ class GenericBusPlugin : public QObject, public QCanBusFactory
Q_INTERFACES(QCanBusFactory)
public:
- QCanBusDevice *createDevice(const QString &interfaceName) const
+ QCanBusDevice *createDevice(const QString &interfaceName,
+ QString *errorMessage) const
{
- Q_UNUSED(interfaceName)
+ if (interfaceName == QStringLiteral("invalid")) {
+ if (errorMessage)
+ *errorMessage = tr("No such interface: '%1'").arg(interfaceName);
+
+ return nullptr;
+ }
auto device = new DummyBackend();
return device;
}
diff --git a/tests/auto/qcanbus/tst_qcanbus.cpp b/tests/auto/qcanbus/tst_qcanbus.cpp
index 08047e8..63f98cc 100644
--- a/tests/auto/qcanbus/tst_qcanbus.cpp
+++ b/tests/auto/qcanbus/tst_qcanbus.cpp
@@ -85,12 +85,19 @@ void tst_QCanBus::plugins()
void tst_QCanBus::createDevice()
{
+ QString error, error2;
QCanBusDevice *dummy = bus->createDevice("generic", "unused");
QCanBusDevice *dummy2 = bus->createDevice("generic", "unused");
- QCanBusDevice *faulty = bus->createDevice("faulty", "faulty");
+ QCanBusDevice *faulty = bus->createDevice("generic", "invalid", &error);
+ QCanBusDevice *faulty2 = bus->createDevice("faulty", "faulty", &error2);
QVERIFY(dummy);
QVERIFY(dummy2);
+
QVERIFY(!faulty);
+ QCOMPARE(error, tr("No such interface: 'invalid'"));
+
+ QVERIFY(!faulty2);
+ QCOMPARE(error2, tr("No such plugin: 'faulty'"));
delete dummy;
delete dummy2;