Update chatmessage class 86/202286/2
authormk5004.lee <mk5004.lee@samsung.com>
Wed, 27 Mar 2019 00:26:17 +0000 (09:26 +0900)
committerJunghoon Park <jh9216.park@samsung.com>
Wed, 27 Mar 2019 01:02:05 +0000 (10:02 +0900)
Change-Id: I132dc83e33240a3d7df0b7fb509e5772883f0807
Signed-off-by: mk5004.lee <mk5004.lee@samsung.com>
notification-ex/chat_message_item.cc
notification-ex/chat_message_item.h
notification-ex/chat_message_item_implementation.h
unittest/src/test_chat_message_item.cc

index eb89fb8..b93a518 100644 (file)
 #define LOG_TAG "NOTIFICATION_EX"
 #define CHATMESSAGE_NAME_KEY "__CHATMESSAGE_NAME_KEY__"
 #define CHATMESSAGE_TEXT_KEY "__CHATMESSAGE_TEXT_KEY__"
-#define CHATMESSAGE_DATA_KEY "__CHATMESSAGE_DATA_KEY__"
+#define CHATMESSAGE_IMAGE_KEY "__CHATMESSAGE_IMAGE_KEY__"
 #define CHATMESSAGE_TIME_KEY "__CHATMESSAGE_TIME_KEY__"
 #define CHATMESSAGE_TYPE_KEY "__CHATMESSAGE_TYPE_KEY__"
 
 namespace notification {
 namespace item {
 
-ChatMessageItem::ChatMessageItem(std::string id, std::shared_ptr<TextItem> name,
-    std::shared_ptr<TextItem> text, std::shared_ptr<TextItem> data,
-    std::shared_ptr<TimeItem> time, Type type,
-    std::shared_ptr<AbstractAction> action)
+ChatMessageItem::ChatMessageItem(std::string id,
+    std::shared_ptr<TextItem> name, std::shared_ptr<TextItem> text,
+    std::shared_ptr<ImageItem> image, std::shared_ptr<TimeItem> time,
+    Type type, std::shared_ptr<AbstractAction> action)
     : AbstractItem(id, action),
-    impl_(new Impl(this, name, text, data, time, type)) {
+    impl_(new Impl(this, name, text, image, time, type)) {
 }
 
 ChatMessageItem::Impl::Impl(ChatMessageItem* parent,
     std::shared_ptr<TextItem> name, std::shared_ptr<TextItem> text,
-    std::shared_ptr<TextItem> data, std::shared_ptr<TimeItem> time, Type type)
-    : parent_(parent), name_(name), text_(text), data_(data), time_(time),
+    std::shared_ptr<ImageItem> image, std::shared_ptr<TimeItem> time, Type type)
+    : parent_(parent), name_(name), text_(text), image_(image), time_(time),
     type_(type) {
   LOGI("ChatMessageItem impl created");
 }
@@ -63,8 +63,8 @@ Bundle ChatMessageItem::Serialize() const {
     reinterpret_cast<char*>(impl_->name_->Serialize().ToRaw().first.get()));
   b.Add(CHATMESSAGE_TEXT_KEY,
     reinterpret_cast<char*>(impl_->text_->Serialize().ToRaw().first.get()));
-  b.Add(CHATMESSAGE_DATA_KEY,
-    reinterpret_cast<char*>(impl_->data_->Serialize().ToRaw().first.get()));
+  b.Add(CHATMESSAGE_IMAGE_KEY,
+    reinterpret_cast<char*>(impl_->image_->Serialize().ToRaw().first.get()));
   b.Add(CHATMESSAGE_TIME_KEY,
     reinterpret_cast<char*>(impl_->time_->Serialize().ToRaw().first.get()));
   b.Add(CHATMESSAGE_TYPE_KEY, std::to_string((int)impl_->type_));
@@ -84,10 +84,10 @@ void ChatMessageItem::Deserialize(Bundle b) {
   text.get()->Deserialize(Bundle(b.GetString(CHATMESSAGE_TEXT_KEY)));
   impl_->text_ = std::static_pointer_cast<TextItem>(text);
 
-  std::shared_ptr<AbstractItem> data =
-      FactoryManager::GetInst().CreateItem(AbstractItem::Text);
-  data.get()->Deserialize(Bundle(b.GetString(CHATMESSAGE_DATA_KEY)));
-  impl_->data_ = std::static_pointer_cast<TextItem>(data);
+  std::shared_ptr<AbstractItem> image =
+      FactoryManager::GetInst().CreateItem(AbstractItem::Image);
+  image.get()->Deserialize(Bundle(b.GetString(CHATMESSAGE_IMAGE_KEY)));
+  impl_->image_ = std::static_pointer_cast<ImageItem>(image);
 
   std::shared_ptr<AbstractItem> time =
       FactoryManager::GetInst().CreateItem(AbstractItem::Time);
@@ -112,8 +112,8 @@ TextItem& ChatMessageItem::GetTextItem() const {
   return *(impl_->text_);
 }
 
-TextItem& ChatMessageItem::GetDataItem() const {
-  return *(impl_->data_);
+ImageItem& ChatMessageItem::GetImageItem() const {
+  return *(impl_->image_);
 }
 
 TimeItem& ChatMessageItem::GetTimeItem() const {
index 4585035..368bb75 100644 (file)
@@ -25,6 +25,7 @@
 
 #include "notification-ex/abstract_item.h"
 #include "notification-ex/text_item.h"
+#include "notification-ex/image_item.h"
 #include "notification-ex/time_item.h"
 
 namespace notification {
@@ -39,7 +40,7 @@ class EXPORT_API ChatMessageItem : public AbstractItem {
 
  public:
   ChatMessageItem(std::string id, std::shared_ptr<TextItem> name,
-    std::shared_ptr<TextItem> text, std::shared_ptr<TextItem> data,
+    std::shared_ptr<TextItem> text, std::shared_ptr<ImageItem> image,
     std::shared_ptr<TimeItem> time, Type type,
     std::shared_ptr<AbstractAction> action = std::shared_ptr<AbstractAction>({}));
   virtual ~ChatMessageItem();
@@ -50,7 +51,7 @@ class EXPORT_API ChatMessageItem : public AbstractItem {
   AbstractItem& FindByID(std::string id) override;
   TextItem& GetNameItem() const;
   TextItem& GetTextItem() const;
-  TextItem& GetDataItem() const;
+  ImageItem& GetImageItem() const;
   TimeItem& GetTimeItem() const;
   Type GetMessageType() const;
 
index b6e0cc4..58084ca 100644 (file)
@@ -35,14 +35,14 @@ class ChatMessageItem::Impl {
  private:
   friend class ChatMessageItem;
   Impl(ChatMessageItem* parent, std::shared_ptr<TextItem> name,
-    std::shared_ptr<TextItem> text, std::shared_ptr<TextItem> data,
+    std::shared_ptr<TextItem> text, std::shared_ptr<ImageItem> image,
     std::shared_ptr<TimeItem> time, Type type);
 
  private:
   ChatMessageItem* parent_;
   std::shared_ptr<TextItem> name_;
   std::shared_ptr<TextItem> text_;
-  std::shared_ptr<TextItem> data_;
+  std::shared_ptr<ImageItem> image_;
   std::shared_ptr<TimeItem> time_;
   Type type_;
 };
index 30bb353..c72e6fb 100644 (file)
@@ -35,7 +35,7 @@ class ChatMessageItemTest : public ::testing::Test {
     item = new ChatMessageItem(id,
       std::make_shared<TextItem>("name_id", "name"),
       std::make_shared<TextItem>("text_id", "text"),
-      std::make_shared<TextItem>("data_id", "data"),
+      std::make_shared<ImageItem>("image_id", "path"),
       std::make_shared<TimeItem>(current_time),type);
   }
   virtual void TearDown() {
@@ -52,7 +52,7 @@ TEST_F(ChatMessageItemTest, FindByID) {
   ChatMessageItem& message = static_cast<ChatMessageItem&>(child);
   ASSERT_EQ(message.GetNameItem().GetContents(), "name");
   ASSERT_EQ(message.GetTextItem().GetContents(), "text");
-  ASSERT_EQ(message.GetDataItem().GetContents(), "data");
+  ASSERT_EQ(message.GetImageItem().GetImagePath(), "path");
   ASSERT_EQ(message.GetMessageType(), ChatMessageItemTest::type);
 }
 
@@ -68,7 +68,7 @@ TEST_F(ChatMessageItemTest, SerializeDeserialize) {
   auto gen_message = std::static_pointer_cast<ChatMessageItem>(gen_item);
   ASSERT_EQ(gen_message->GetNameItem().GetContents(), "name");
   ASSERT_EQ(gen_message->GetTextItem().GetContents(), "text");
-  ASSERT_EQ(gen_message->GetDataItem().GetContents(), "data");
+  ASSERT_EQ(gen_message->GetImageItem().GetImagePath(), "path");
   ASSERT_EQ(gen_message->GetTimeItem().GetTime(), ChatMessageItemTest::current_time);
   ASSERT_EQ(gen_message->GetMessageType(), ChatMessageItemTest::type);
 }