@@ -25,6 +25,8 @@
25#include "applicationpreview.h"
25#include "applicationpreview.h"
26#include "moviepreview.h"
26#include "moviepreview.h"
27#include "musicpreview.h"
27#include "musicpreview.h"
28+#include "socialpreview.h"
29+#include "socialpreviewcomment.h"
29void PreviewBindingsTest::initTestCase()
31void PreviewBindingsTest::initTestCase()
@@ -109,6 +111,32 @@ void PreviewBindingsTest::testMusicPreview()
109 QCOMPARE(music_prv->description(), QString("Lorem ipsum dolor sit amet"));
111 QCOMPARE(music_prv->description(), QString("Lorem ipsum dolor sit amet"));
114+void PreviewBindingsTest::testSocialPreview()
116+ auto raw_preview = (GObject *)unity_protocol_social_preview_new();
117+ unity_protocol_social_preview_set_sender(UNITY_PROTOCOL_SOCIAL_PREVIEW(raw_preview), "John");
118+ unity_protocol_social_preview_set_content(UNITY_PROTOCOL_SOCIAL_PREVIEW(raw_preview), "Lorem ipsum dolor sit amet");
119+ unity_protocol_social_preview_add_comment(UNITY_PROTOCOL_SOCIAL_PREVIEW(raw_preview), "1", "comment1", "Ubuntu", "2013-07-04 14:10");
120+ unity::glib::Object<GObject> gen_prv(raw_preview);
122+ auto core_prv = unity::dash::Preview::PreviewForProtocolObject(gen_prv);
123+ auto prv = Preview::newFromUnityPreview(core_prv);
124+ auto social_prv = dynamic_cast<SocialPreview*>(prv);
126+ QCOMPARE(social_prv != nullptr, true);
127+ QCOMPARE(social_prv->sender(), QString("John"));
128+ QCOMPARE(social_prv->content(), QString("Lorem ipsum dolor sit amet"));
130+ auto comments = social_prv->comments().value<QList<QObject *>>();
131+ QCOMPARE(comments.size(), 1);
132+ auto cmt = dynamic_cast<SocialPreviewComment *>(comments[0]);
133+ QVERIFY(cmt != nullptr);
134+ QCOMPARE(cmt->id(), QString("1"));
135+ QCOMPARE(cmt->displayName(), QString("comment1"));
136+ QCOMPARE(cmt->content(), QString("Ubuntu"));
137+ QCOMPARE(cmt->time(), QString("2013-07-04 14:10"));
112QTEST_MAIN(PreviewBindingsTest)
140QTEST_MAIN(PreviewBindingsTest)
114#include "previewbindingstest.moc"
142#include "previewbindingstest.moc"