diff options
author | Renato Araujo Oliveira Filho <renato.filho@canonical.com> | 2012-09-11 17:57:08 -0300 |
---|---|---|
committer | Renato Araujo Oliveira Filho <renato.filho@canonical.com> | 2012-09-11 17:57:08 -0300 |
commit | 6bacc0d5db885a72202cb7f80e505642a36052d4 (patch) | |
tree | 608aa95f959b9e362d7813476e59d37c6c07ddf6 /tests/script/dbusmenuscript.cpp | |
parent | 31f8103187d2e27b1bb76eaed10dc9c9be226c90 (diff) | |
download | qmenumodel-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.cpp | 75 |
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); + } +} |