summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kdab.com>2018-06-23 18:27:48 -0400
committerJani Heikkinen <jani.heikkinen@qt.io>2018-11-27 04:11:23 +0000
commite4631d1a6aa20dfdd32fff2e3764223435fe427f (patch)
treedc7569aae55ee4ab280174b9734b78bc37ce245c /tests
parent41ed53bf6603858856124f9e8593b804f4e6d1c8 (diff)
Handle null QAIM propertyv5.12.0-rc2v5.12.0
Even if a QAIM property is nullptr, we still need to treat it as a model. Task-number: QTBUG-71987 Change-Id: Iea8b3bfda88c564c561a7ab6ed293fd0540f5de4 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/modelreplica/tst_modelreplicatest.cpp34
1 files changed, 28 insertions, 6 deletions
diff --git a/tests/auto/modelreplica/tst_modelreplicatest.cpp b/tests/auto/modelreplica/tst_modelreplicatest.cpp
index 0e6b2d2..1e3f5eb 100644
--- a/tests/auto/modelreplica/tst_modelreplicatest.cpp
+++ b/tests/auto/modelreplica/tst_modelreplicatest.cpp
@@ -35,17 +35,14 @@ class ModelreplicaTest : public QObject
Q_OBJECT
public:
- ModelreplicaTest();
+ ModelreplicaTest() = default;
private Q_SLOTS:
void basicFunctions();
void basicFunctions_data();
+ void nullModel();
};
-ModelreplicaTest::ModelreplicaTest()
-{
-}
-
void ModelreplicaTest::basicFunctions_data()
{
QTest::addColumn<bool>("templated");
@@ -58,7 +55,7 @@ void ModelreplicaTest::basicFunctions()
QFETCH(bool, templated);
QRemoteObjectRegistryHost host(QUrl("tcp://localhost:5555"));
- QStringListModel *model = new QStringListModel();
+ auto model = new QStringListModel();
model->setStringList(QStringList() << "Track1" << "Track2" << "Track3");
MediaSimpleSource source;
source.setTracks(model);
@@ -91,6 +88,31 @@ void ModelreplicaTest::basicFunctions()
}
}
+void ModelreplicaTest::nullModel()
+{
+ QRemoteObjectRegistryHost host(QUrl("tcp://localhost:5555"));
+ MediaSimpleSource source;
+ host.enableRemoting(&source);
+
+ QRemoteObjectNode client(QUrl("tcp://localhost:5555"));
+ const QScopedPointer<MediaReplica> replica(client.acquire<MediaReplica>());
+ QVERIFY(replica->waitForSource(100));
+
+ auto model = new QStringListModel(this);
+ model->setStringList(QStringList() << "Track1" << "Track2" << "Track3");
+ source.setTracks(model);
+
+ QTRY_VERIFY(replica->tracks());
+ QTRY_COMPARE(replica->tracks()->rowCount(), 3);
+ QTRY_COMPARE(replica->tracks()->data(replica->tracks()->index(0, 0)), "Track1");
+
+ model = new QStringListModel(this);
+ model->setStringList(QStringList() << "New Track1" << "New Track2" << "New Track3" << "New Track4");
+ source.setTracks(model);
+ QTRY_COMPARE(replica->tracks()->rowCount(), 4);
+ QTRY_COMPARE(replica->tracks()->data(replica->tracks()->index(3, 0)), "New Track4");
+}
+
QTEST_MAIN(ModelreplicaTest)
#include "tst_modelreplicatest.moc"