Support Emoji sequences
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-TextLabel.cpp
index 5495c9d..be0e5b1 100644 (file)
@@ -836,6 +836,44 @@ int UtcDaliToolkitTextLabelEmojisP(void)
   application.SendNotification();
   application.Render();
 
+  // EMOJI + ZWJ + EMOJI case for coverage.
+  const std::string emojiWithZWJ = "👩‍🔬";
+  label.SetProperty( TextLabel::Property::TEXT, emojiWithZWJ );
+
+  application.SendNotification();
+  application.Render();
+
+  // EMOJI Sequences case for coverage.
+  std::string emojiSequences =
+       "Text VS15 ☪︎\n"                                                         //text presentation sequence and selector
+      "Color VS16 ☪️\n"                                                        //emoji presentation sequence and selector
+      "Default ☪ \n"                                                                  //default presentation
+      "FamilyManWomanGirlBoy 👨‍👩‍👧‍👦\n" // emoji multi zwj sequence
+      "WomanScientist 👩‍🔬\n"                                          // emoji zwj sequence
+      "WomanScientistLightSkinTone👩🏻‍🔬 \n"                    //emoji modifier sequence: skin tone & JWZ
+      "LeftRightArrowText↔︎\n"                                                 //text presentation sequence and selector
+      "LeftRightArrowEmoji↔️\n"                                                //emoji presentation sequence and selector
+      "SouthKoreaFlag🇰🇷\n"                                                   //emoji flag sequence
+      "JordanFlag🇯🇴\n"                                                       // emoji flag sequence
+      "EnglandFlag🏴󠁧󠁢󠁥󠁮󠁧󠁿\n"         //emoji tag sequence like England flag
+      "Runner 🏃‍➡️ \n"
+      "VictoryHandMediumLightSkinTone:✌️🏼\n"               //emoji modifier sequence: skin tone
+      "RainbowFlag:🏳️‍🌈 \n"                        //emoji zwj sequence: Rainbow Flag
+      "keycap# #️⃣ \n"                                      // fully-qualified  emoji keycap sequence
+      "keycap#_text #⃣ \n"                                         // unqualified emoji keycap sequence
+      "keycap3 3️⃣ \n"                                      // fully-qualified  emoji keycap sequence
+      "keycap3_text 3⃣ \n"                                         // unqualified emoji keycap sequence
+      "two adjacent glyphs ☪️️️☪️\n"   //This line should be rendered as two adjacent glyphs
+      "Digit 8️ 8︎ 8\n"                                            // should be rendered according to selector
+      "Surfing Medium Skin Female:  🏄🏼‍♀️"; // Person Surfing + Medium Skin Tone +? Zero Width Joiner + Female Sign
+
+  label.SetProperty( TextLabel::Property::TEXT, emojiSequences );
+  label.SetProperty( TextLabel::Property::ENABLE_MARKUP, true );
+  label.SetProperty( TextLabel::Property::MULTI_LINE, true);
+  label.SetProperty( TextLabel::Property::ELLIPSIS, false);
+
+  application.SendNotification();
+  application.Render();
   END_TEST;
 }