[Telepathy-commits] [telepathy-qt4/master] cm-basics test: exercise parameter access

Simon McVittie simon.mcvittie at collabora.co.uk
Tue Dec 9 06:09:43 PST 2008


---
 tests/pinocchio/cm-basics.cpp |   36 ++++++++++++++++++++++++++++++++++++
 1 files changed, 36 insertions(+), 0 deletions(-)

diff --git a/tests/pinocchio/cm-basics.cpp b/tests/pinocchio/cm-basics.cpp
index 80608f3..69ec5e6 100644
--- a/tests/pinocchio/cm-basics.cpp
+++ b/tests/pinocchio/cm-basics.cpp
@@ -71,6 +71,42 @@ void TestCmBasics::testBasics()
 
     QCOMPARE(mCM->interfaces(), QStringList());
     QCOMPARE(mCM->supportedProtocols(), QStringList() << "dummy");
+
+    const ProtocolInfo* info = mCM->protocolInfo("not-there");
+    QVERIFY(info == 0);
+    info = mCM->protocolInfo("dummy");
+    QVERIFY(info != 0);
+    QVERIFY(info->cmName() == "pinocchio");
+    QVERIFY(info->protocolName() == "dummy");
+    QSet<QString> paramSet = QSet<QString>();
+    Q_FOREACH (QString param, info->parameters()) {
+        paramSet << param;
+    }
+    QCOMPARE(paramSet, QSet<QString>() << "account" << "password");
+
+    QCOMPARE(info->hasParameter("account"), true);
+    QCOMPARE(info->hasParameter("not-there"), false);
+
+    QCOMPARE(info->parameterDBusSignature("account").signature(),
+            QLatin1String("s"));
+    QCOMPARE(info->parameterDBusSignature("not-there").signature(), QString());
+
+    QCOMPARE(info->parameterIsRequired("account"), true);
+    QCOMPARE(info->parameterIsRequired("password"), false);
+    QCOMPARE(info->parameterIsRequired("not-there"), false);
+
+    QCOMPARE(info->parameterIsSecret("account"), false);
+    QCOMPARE(info->parameterIsSecret("password"), true);
+    QCOMPARE(info->parameterIsSecret("not-there"), false);
+
+    QCOMPARE(info->parameterIsDBusProperty("account"), false);
+    QCOMPARE(info->parameterIsDBusProperty("not-there"), false);
+
+    QCOMPARE(info->parameterHasDefault("not-there"), false);
+
+    QCOMPARE(info->canRegister(), false);
+
+    QCOMPARE(mCM->supportedProtocols(), QStringList() << "dummy");
 }
 
 
-- 
1.5.6.5



More information about the Telepathy-commits mailing list