From 93b208cc95114e39f5d3379e66646c94e70b6a02 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Thu, 30 Jul 2015 17:34:45 +0200 Subject: ResourceCommunicationTest --- tests/CMakeLists.txt | 1 + tests/resourcecommunicationtest.cpp | 41 +++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 tests/resourcecommunicationtest.cpp diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 6a52101..542b4ed 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -41,6 +41,7 @@ auto_tests ( indextest genericresourcetest genericfacadetest + resourcecommunicationtest ) target_link_libraries(dummyresourcetest akonadi2_resource_dummy) diff --git a/tests/resourcecommunicationtest.cpp b/tests/resourcecommunicationtest.cpp new file mode 100644 index 0000000..f1cef50 --- /dev/null +++ b/tests/resourcecommunicationtest.cpp @@ -0,0 +1,41 @@ +#include + +#include "resourceaccess.h" +#include "listener.h" +#include "commands.h" +#include "handshake_generated.h" + +class ResourceCommunicationTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void testConnect() + { + const QByteArray resourceIdentifier("test"); + Listener listener(resourceIdentifier); + Akonadi2::ResourceAccess resourceAccess(resourceIdentifier); + + QSignalSpy spy(&resourceAccess, &Akonadi2::ResourceAccess::ready); + resourceAccess.open(); + QTRY_COMPARE(spy.size(), 1); + } + + void testHandshake() + { + const QByteArray resourceIdentifier("test"); + Listener listener(resourceIdentifier); + Akonadi2::ResourceAccess resourceAccess(resourceIdentifier); + resourceAccess.open(); + + flatbuffers::FlatBufferBuilder fbb; + auto name = fbb.CreateString("test"); + auto command = Akonadi2::CreateHandshake(fbb, name); + Akonadi2::FinishHandshakeBuffer(fbb, command); + auto result = resourceAccess.sendCommand(Akonadi2::Commands::HandshakeCommand, fbb).exec(); + result.waitForFinished(); + QVERIFY(!result.errorCode()); + } +}; + +QTEST_MAIN(ResourceCommunicationTest) +#include "resourcecommunicationtest.moc" -- cgit v1.2.3