// Copyright (C) 2017 Ford Motor Company // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only #include "rep_mismatch_replica.h" #include #include #include class tst_State_Process : public QObject { Q_OBJECT private Q_SLOTS: void testMismatch() { QRemoteObjectNode repNode; repNode.connectToNode(QUrl{QStringLiteral("tcp://127.0.0.1:65214")}); QSharedPointer rep{repNode.acquire()}; QSignalSpy stateChangedSpy(rep.data(), &QRemoteObjectReplica::stateChanged); QTRY_COMPARE(rep->state(), QRemoteObjectReplica::SignatureMismatch); QCOMPARE(stateChangedSpy.size(), 1); auto args = stateChangedSpy.takeFirst(); QCOMPARE(args.size(), 2); QCOMPARE(args.at(0).toInt(), int(QRemoteObjectReplica::SignatureMismatch)); QCOMPARE(args.at(1).toInt(), int(QRemoteObjectReplica::Default)); } void testDynamic() { QRemoteObjectNode repNode; repNode.connectToNode(QUrl{QStringLiteral("tcp://127.0.0.1:65214")}); QSharedPointer rep{repNode.acquireDynamic("TestClass")}; QSignalSpy stateChangedSpy(rep.data(), &QRemoteObjectReplica::stateChanged); QTRY_COMPARE(rep->state(), QRemoteObjectReplica::Valid); QCOMPARE(stateChangedSpy.size(), 1); auto args = stateChangedSpy.takeFirst(); QCOMPARE(args.size(), 2); QCOMPARE(args.at(0).toInt(), int(QRemoteObjectReplica::Valid)); QCOMPARE(args.at(1).toInt(), int(QRemoteObjectReplica::Uninitialized)); } }; QTEST_MAIN(tst_State_Process) #include "main.moc"