summaryrefslogtreecommitdiffstats
path: root/tests/testimplementations.h
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2016-02-16 17:45:20 +0100
committerChristian Mollekopf <chrigi_1@fastmail.fm>2016-02-16 17:47:48 +0100
commit45a5bf6910db54f358409e7c407b8081cdd711a4 (patch)
treea9a27768c7ded92c59358950462330a120d7a0c6 /tests/testimplementations.h
parent16310543c4010d4cb8b8e8331ba0a669b1e9ff88 (diff)
downloadsink-45a5bf6910db54f358409e7c407b8081cdd711a4.tar.gz
sink-45a5bf6910db54f358409e7c407b8081cdd711a4.zip
Added an index for mail sorting by date on folder queries
Diffstat (limited to 'tests/testimplementations.h')
-rw-r--r--tests/testimplementations.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/testimplementations.h b/tests/testimplementations.h
index 785c408..234e99d 100644
--- a/tests/testimplementations.h
+++ b/tests/testimplementations.h
@@ -26,9 +26,12 @@
26#include <common/resourceaccess.h> 26#include <common/resourceaccess.h>
27#include <common/facade.h> 27#include <common/facade.h>
28#include <common/genericresource.h> 28#include <common/genericresource.h>
29#include <common/commands.h>
29 30
30//Replace with something different 31//Replace with something different
31#include "event_generated.h" 32#include "event_generated.h"
33#include "mail_generated.h"
34#include "createentity_generated.h"
32 35
33class TestEventAdaptorFactory : public DomainTypeAdaptorFactory<Sink::ApplicationDomain::Event, Sink::ApplicationDomain::Buffer::Event, Sink::ApplicationDomain::Buffer::EventBuilder> 36class TestEventAdaptorFactory : public DomainTypeAdaptorFactory<Sink::ApplicationDomain::Event, Sink::ApplicationDomain::Buffer::Event, Sink::ApplicationDomain::Buffer::EventBuilder>
34{ 37{
@@ -41,6 +44,17 @@ public:
41 virtual ~TestEventAdaptorFactory() {}; 44 virtual ~TestEventAdaptorFactory() {};
42}; 45};
43 46
47class TestMailAdaptorFactory : public DomainTypeAdaptorFactory<Sink::ApplicationDomain::Mail, Sink::ApplicationDomain::Buffer::Mail, Sink::ApplicationDomain::Buffer::MailBuilder>
48{
49public:
50 TestMailAdaptorFactory()
51 : DomainTypeAdaptorFactory()
52 {
53 }
54
55 virtual ~TestMailAdaptorFactory() {};
56};
57
44class TestResourceAccess : public Sink::ResourceAccessInterface 58class TestResourceAccess : public Sink::ResourceAccessInterface
45{ 59{
46 Q_OBJECT 60 Q_OBJECT
@@ -69,6 +83,20 @@ public:
69 } 83 }
70}; 84};
71 85
86class TestMailResourceFacade : public Sink::GenericFacade<Sink::ApplicationDomain::Mail>
87{
88public:
89 TestMailResourceFacade(const QByteArray &instanceIdentifier, const QSharedPointer<Sink::ResourceAccessInterface> resourceAccess)
90 : Sink::GenericFacade<Sink::ApplicationDomain::Mail>(instanceIdentifier, QSharedPointer<TestMailAdaptorFactory>::create(), resourceAccess)
91 {
92
93 }
94 virtual ~TestMailResourceFacade()
95 {
96
97 }
98};
99
72class TestResource : public Sink::GenericResource 100class TestResource : public Sink::GenericResource
73{ 101{
74public: 102public:
@@ -82,3 +110,20 @@ public:
82 return KAsync::null<void>(); 110 return KAsync::null<void>();
83 } 111 }
84}; 112};
113
114template <typename DomainType>
115QByteArray createCommand(const DomainType &domainObject, DomainTypeAdaptorFactoryInterface &domainTypeAdaptorFactory)
116{
117 flatbuffers::FlatBufferBuilder entityFbb;
118 domainTypeAdaptorFactory.createBuffer(domainObject, entityFbb);
119 flatbuffers::FlatBufferBuilder fbb;
120 auto type = fbb.CreateString(Sink::ApplicationDomain::getTypeName<DomainType>().toStdString().data());
121 auto delta = fbb.CreateVector<uint8_t>(entityFbb.GetBufferPointer(), entityFbb.GetSize());
122 Sink::Commands::CreateEntityBuilder builder(fbb);
123 builder.add_domainType(type);
124 builder.add_delta(delta);
125 auto location = builder.Finish();
126 Sink::Commands::FinishCreateEntityBuffer(fbb, location);
127 return QByteArray(reinterpret_cast<const char *>(fbb.GetBufferPointer()), fbb.GetSize());
128}
129