From 04ebacfcd8205e94139de1b015238f524b6439ea Mon Sep 17 00:00:00 2001
From: Piotr Kosko
Date: Thu, 29 Jan 2015 15:31:09 +0100
Subject: [PATCH] [Messaging] Some fixes for update tests
Change-Id: I4573754be527bbd9eceb91f2bd2015a2ed98d43f
Signed-off-by: Piotr Kosko
---
src/messaging/MsgCommon/Any.cpp | 2 +-
src/messaging/email_manager.cc | 9 ++++++++-
src/messaging/messaging_util.cc | 4 ++++
3 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/src/messaging/MsgCommon/Any.cpp b/src/messaging/MsgCommon/Any.cpp
index f5fd0b56..31dfe1e5 100644
--- a/src/messaging/MsgCommon/Any.cpp
+++ b/src/messaging/MsgCommon/Any.cpp
@@ -64,7 +64,7 @@ bool Any::toBool() const
if (m_value.is()) {
return m_value.get();
} else {
- return false;
+ return ("true" == this->toString());
}
}
diff --git a/src/messaging/email_manager.cc b/src/messaging/email_manager.cc
index e5be79a7..1474cda2 100644
--- a/src/messaging/email_manager.cc
+++ b/src/messaging/email_manager.cc
@@ -1024,7 +1024,6 @@ void EmailManager::updateMessages(MessagesCallbackUserData* callback)
email_free_mail_data(&mail, 1);
}
-
} catch (const PlatformException& err) {
LoggerE("%s (%s)", (err.name()).c_str(), (err.message()).c_str());
callback->setError(err.name(), err.message());
@@ -1046,6 +1045,14 @@ void EmailManager::updateMessages(MessagesCallbackUserData* callback)
auto json = callback->getJson();
picojson::object& obj = json->get();
obj[JSON_ACTION] = picojson::value(JSON_CALLBACK_SUCCCESS);
+
+ picojson::array array;
+ auto messages = callback->getMessages();
+ for (int i = 0 ; i < messages.size(); ++i) {
+ array.push_back(MessagingUtil::messageToJson(messages[i]));
+ }
+ obj[JSON_DATA] = picojson::value(array);
+
PostQueue::getInstance().resolve(
obj.at(JSON_CALLBACK_ID).get(),
json->serialize()
diff --git a/src/messaging/messaging_util.cc b/src/messaging/messaging_util.cc
index 20d92caf..5d19c11b 100644
--- a/src/messaging/messaging_util.cc
+++ b/src/messaging/messaging_util.cc
@@ -552,6 +552,10 @@ std::shared_ptr MessagingUtil::jsonToMessage(const picojson::value& jso
MESSAGE_ATTRIBUTE_IS_HIGH_PRIORITY);
message->setIsHighPriority(priority);
+ auto isRead = MessagingUtil::getValueFromJSONObject(data,
+ MESSAGE_ATTRIBUTE_IS_READ);
+ message->setIsRead(isRead);
+
std::shared_ptr body = MessagingUtil::jsonToMessageBody(
data[MESSAGE_ATTRIBUTE_MESSAGE_BODY]);
message->setBody(body);
--
2.34.1