summaryrefslogtreecommitdiffstats
path: root/tests/auto/integration/tst_integration.cpp
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-03-10 03:02:53 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-03-10 03:02:53 +0100
commit03feebe69eccdbf6ff5fac10082bc515b5498148 (patch)
treeaa4c56d406a4f81d04e124ce3460165cf17e57cd /tests/auto/integration/tst_integration.cpp
parentbb6be6be1b9908f68d3d6368e6ae4bc0e3dc06a0 (diff)
parent062075e1463b46ea4db76669f052d10ccfa2a0c9 (diff)
Merge remote-tracking branch 'origin/5.15' into dev
Diffstat (limited to 'tests/auto/integration/tst_integration.cpp')
-rw-r--r--tests/auto/integration/tst_integration.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/auto/integration/tst_integration.cpp b/tests/auto/integration/tst_integration.cpp
index 74ec974..0e90f3d 100644
--- a/tests/auto/integration/tst_integration.cpp
+++ b/tests/auto/integration/tst_integration.cpp
@@ -1064,6 +1064,32 @@ private slots:
QCOMPARE(engine_r2->rpm(), e.rpm());
}
+ // verify that our second replica emits "Changed" signals when initialized
+ void doubleReplicaTest2()
+ {
+ setupHost();
+ Engine e;
+ host->enableRemoting(&e);
+ e.setRpm(3412);
+
+ setupClient();
+
+ const QScopedPointer<EngineReplica> engine_r1(client->acquire< EngineReplica >());
+ QSignalSpy spy_r1(engine_r1.data(), SIGNAL(rpmChanged(int)));
+ engine_r1->waitForSource();
+ QCOMPARE(engine_r1->rpm(), e.rpm());
+ QCOMPARE(spy_r1.count(), 1);
+
+ // NOTE: A second replica will have initialized and notify signals emitted as part of acquire,
+ // which leads to different semantics for first and second replicas. Specifically, there is no
+ // way to hook in to initialized and the initial notify signals. We should consider changing this.
+ const QScopedPointer<EngineReplica> engine_r2(client->acquire< EngineReplica >());
+// QSignalSpy spy_r2(engine_r2.data(), SIGNAL(rpmChanged(int)));
+// engine_r2->waitForSource();
+ QCOMPARE(engine_r2->rpm(), e.rpm());
+// QCOMPARE(spy_r2.count(), 1);
+ }
+
void twoReplicaTest() {
setupHost();
Engine e;