[Messaging] Some fixes for update tests
authorPiotr Kosko <p.kosko@samsung.com>
Thu, 29 Jan 2015 14:31:09 +0000 (15:31 +0100)
committerPawel Andruszkiewicz <p.andruszkie@samsung.com>
Thu, 29 Jan 2015 15:16:46 +0000 (00:16 +0900)
Change-Id: I4573754be527bbd9eceb91f2bd2015a2ed98d43f
Signed-off-by: Piotr Kosko <p.kosko@samsung.com>
src/messaging/MsgCommon/Any.cpp
src/messaging/email_manager.cc
src/messaging/messaging_util.cc

index f5fd0b560d6170dd556532b2c28f776c1e769b79..31dfe1e5214c4b261e9ed3363405b803ab2caf33 100644 (file)
@@ -64,7 +64,7 @@ bool Any::toBool() const
     if (m_value.is<bool>()) {
         return m_value.get<bool>();
     } else {
-        return false;
+        return ("true" == this->toString());
     }
 }
 
index e5be79a70394d6b3b7e7cf105834d0845625bee3..1474cda298457404c9fe00420fcafa3945fce2a9 100644 (file)
@@ -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<picojson::object>();
             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<double>(),
                     json->serialize()
index 20d92caffe5806991060efaedf569161b46ecae8..5d19c11b049f3185215f7cd9b5e77a2397ab1563 100644 (file)
@@ -552,6 +552,10 @@ std::shared_ptr<Message> MessagingUtil::jsonToMessage(const picojson::value& jso
             MESSAGE_ATTRIBUTE_IS_HIGH_PRIORITY);
     message->setIsHighPriority(priority);
 
+    auto isRead = MessagingUtil::getValueFromJSONObject<bool>(data,
+            MESSAGE_ATTRIBUTE_IS_READ);
+    message->setIsRead(isRead);
+
     std::shared_ptr<MessageBody> body = MessagingUtil::jsonToMessageBody(
             data[MESSAGE_ATTRIBUTE_MESSAGE_BODY]);
     message->setBody(body);