aboutsummaryrefslogtreecommitdiff
path: root/tests/script/dbusmenuscript.cpp
diff options
context:
space:
mode:
authorRenato Araujo Oliveira Filho <renato.filho@canonical.com>2012-09-11 17:57:08 -0300
committerRenato Araujo Oliveira Filho <renato.filho@canonical.com>2012-09-11 17:57:08 -0300
commit6bacc0d5db885a72202cb7f80e505642a36052d4 (patch)
tree608aa95f959b9e362d7813476e59d37c6c07ddf6 /tests/script/dbusmenuscript.cpp
parent31f8103187d2e27b1bb76eaed10dc9c9be226c90 (diff)
downloadqmenumodel-6bacc0d5db885a72202cb7f80e505642a36052d4.tar.gz
qmenumodel-6bacc0d5db885a72202cb7f80e505642a36052d4.tar.bz2
qmenumodel-6bacc0d5db885a72202cb7f80e505642a36052d4.zip
Splitted qmenumodel plugin in two libraries to make it testable.
Create unit test for qmenumodel library.
Diffstat (limited to 'tests/script/dbusmenuscript.cpp')
-rw-r--r--tests/script/dbusmenuscript.cpp75
1 files changed, 75 insertions, 0 deletions
diff --git a/tests/script/dbusmenuscript.cpp b/tests/script/dbusmenuscript.cpp
new file mode 100644
index 0000000..cc332f7
--- /dev/null
+++ b/tests/script/dbusmenuscript.cpp
@@ -0,0 +1,75 @@
+
+#include "dbusmenuscript.h"
+#include <QObject>
+#include <QtTestGui>
+#include <QDebug>
+
+#define WAIT_TIMEOUT 500
+
+DBusMenuScript::DBusMenuScript()
+ :m_script(0)
+{
+}
+
+DBusMenuScript::~DBusMenuScript()
+{
+ quit();
+}
+
+bool DBusMenuScript::connect()
+{
+ QTest::qWait(WAIT_TIMEOUT);
+ m_script = new QDBusInterface(SCRIPT_SERVICE_NAME,
+ SCRIPT_OBJECT_PATH,
+ SCRIPT_INTERFACE_NAME,
+ QDBusConnection::sessionBus(), 0);
+ if (m_script && m_script->isValid()) {
+ return true;
+ } else {
+ qWarning() << "DBUS ERROR:" << m_script->lastError().message();
+ return false;
+ }
+}
+
+void DBusMenuScript::publishMenu()
+{
+ if (m_script) {
+ m_script->call("publishMenu");
+ QTest::qWait(WAIT_TIMEOUT);
+ }
+}
+
+void DBusMenuScript::unpublishMenu()
+{
+ if (m_script) {
+ m_script->call("unpublishMenu");
+ QTest::qWait(WAIT_TIMEOUT);
+ }
+}
+
+
+void DBusMenuScript::quit()
+{
+ if (m_script) {
+ m_script->call("quit");
+ QTest::qWait(WAIT_TIMEOUT);
+ delete m_script;
+ m_script = 0;
+ }
+}
+
+void DBusMenuScript::walk(int steps)
+{
+ if (m_script) {
+ m_script->call("walk", steps);
+ QTest::qWait(WAIT_TIMEOUT);
+ }
+}
+
+void DBusMenuScript::run()
+{
+ if (m_script) {
+ m_script->call("walk", -1);
+ QTest::qWait(WAIT_TIMEOUT);
+ }
+}