IconTextItem::IconTextItem(std::string id, std::shared_ptr<IconItem> icon,
std::shared_ptr<TextItem> text, std::shared_ptr<AbstractAction> action)
- : AbstractItem(AbstractItem::IconText, action),
+ : AbstractItem(id, AbstractItem::IconText, action),
impl_(new Impl(this, icon, text)) {
}
namespace notification {
namespace item {
-TimeItem::TimeItem() : AbstractItem(AbstractItem::Time) {
+TimeItem::TimeItem(std::shared_ptr<AbstractAction> action)
+ : AbstractItem(AbstractItem::Time, action), impl_(new Impl(this, 0)) {
time_t current_time;
time(¤t_time);
class EXPORT_API TimeItem : public AbstractItem {
public:
- TimeItem();
+ TimeItem(
+ std::shared_ptr<AbstractAction> action = std::shared_ptr<AbstractAction>({}));
TimeItem(time_t time,
std::shared_ptr<AbstractAction> action = std::shared_ptr<AbstractAction>({}));
TimeItem(std::string id, time_t time,
TEST_F(ChatMessageItemTest, SerializeDeserialize) {
Bundle b = ChatMessageItemTest::item->Serialize();
- //ChatMessageItemTest::item->Deserialize(b);
- //ItemFactory factory;
- //std::shared_ptr<AbstractItem> gen_item = ItemInflator::Create(factory, b);
- //ASSERT_EQ(ChatMessageItemTest::item->GetType(), gen_item.get()->GetType());
-
- //ChatMessageItem* gen_image = static_cast<ChatMessageItem*>(gen_item.get());
- //ASSERT_EQ(ChatMessageItemTest::item->GetNameItem(), gen_image->GetNameItem());
- //ASSERT_EQ(ChatMessageItemTest::item->GetTextItem(), gen_image->GetTextItem());
- //ASSERT_EQ(ChatMessageItemTest::item->GetDataItem(), gen_image->GetDataItem());
- //ASSERT_EQ(ChatMessageItemTest::item->GetType(), gen_image->GetType());
+ ItemFactory factory;
+ std::shared_ptr<AbstractItem> gen_item = ItemInflator::Create(factory, b);
+ ChatMessageItem* gen_message = static_cast<ChatMessageItem*>(gen_item.get());
+ 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->GetTimeItem().GetTime(), ChatMessageItemTest::current_time);
+ ASSERT_EQ(gen_message->GetType(), ChatMessageItemTest::type);
}
EXPECT_NE(IconTextItemTest::item, nullptr);
}
-#if 0
TEST_F(IconTextItemTest, FindByID) {
AbstractItem& child = IconTextItemTest::item->FindByID(IconTextItemTest::id);
IconTextItem& icontext = static_cast<IconTextItem&>(child);
ASSERT_EQ(icontext.GetIconItem().GetImagePath(), "icon_path");
ASSERT_EQ(icontext.GetTextItem().GetContents(), "title");
}
-#endif
TEST_F(IconTextItemTest, FindByIDNullItemReturn) {
AbstractItem& child = IconTextItemTest::item->FindByID("not_existed_item");
TEST_F(IconTextItemTest, SerializeDeserialize) {
Bundle b = IconTextItemTest::item->Serialize();
- //ItemFactory factory;
- //std::shared_ptr<AbstractItem> gen_item = ItemInflator::Create(factory, b);
- //IconTextItem* gen_icon = static_cast<IconTextItem*>(gen_item.get());
- //ASSERT_EQ(IconTextItemTest::item->GetIconItem(), gen_icon->GetIconItem());
- //ASSERT_EQ(IconTextItemTest::item->GetTextItem(), gen_icon->GetTextItem());
+ ItemFactory factory;
+ std::shared_ptr<AbstractItem> gen_item = ItemInflator::Create(factory, b);
+ IconTextItem* gen_icon = static_cast<IconTextItem*>(gen_item.get());
+ ASSERT_EQ(IconTextItemTest::item->GetIconItem().GetImagePath(), gen_icon->GetIconItem().GetImagePath());
+ ASSERT_EQ(IconTextItemTest::item->GetTextItem().GetContents(), gen_icon->GetTextItem().GetContents());
}
TEST_F(TimeItemTest, SerializeDeserialize) {
Bundle b = TimeItemTest::item->Serialize();
- //ItemFactory factory;
- //std::shared_ptr<AbstractItem> gen_item = ItemInflator::Create(factory, b);
- //ASSERT_EQ(TimeItemTest::item->GetType(), gen_item.get()->GetType());
+ ItemFactory factory;
+ std::shared_ptr<AbstractItem> gen_item = ItemInflator::Create(factory, b);
+ ASSERT_EQ(TimeItemTest::item->GetType(), gen_item.get()->GetType());
- //TimeItem* gen_time = static_cast<TimeItem*>(gen_item.get());
- //ASSERT_EQ(item.GetTime(), gen_time->GetTime());
+ TimeItem* gen_time = static_cast<TimeItem*>(gen_item.get());
+ ASSERT_EQ(item->GetTime(), gen_time->GetTime());
}