+ Property::Map map;
+ map["visualType"] = "IMAGE";
+ map[Toolkit::ImageVisual::Property::URL] = trackImage;
+ progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, map);
+
+ Property::Value value = progressBar.GetProperty(ProgressBar::Property::TRACK_VISUAL);
+ Property::Map* resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ Property::Value* urlValue = resultMap->Find(Toolkit::ImageVisual::Property::URL);
+ std::string urlString;
+ urlValue->Get(urlString);
+ DALI_TEST_CHECK(!urlString.empty());
+ DALI_TEST_EQUALS(urlString, trackImage, TEST_LOCATION);
+
+ Property::Map colorMap;
+ colorMap["visualType"] = "COLOR";
+ colorMap[Toolkit::ColorVisual::Property::MIX_COLOR] = Color::RED;
+ progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, colorMap);
+
+ value = progressBar.GetProperty(ProgressBar::Property::TRACK_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ Property::Value* colorValue = resultMap->Find(Toolkit::ColorVisual::Property::MIX_COLOR);
+ Vector4 color = Color::TRANSPARENT;
+ colorValue->Get(color);
+ DALI_TEST_CHECK(color != Color::TRANSPARENT);
+ DALI_TEST_EQUALS(color, Color::RED, TEST_LOCATION);
+
+ map[Toolkit::ImageVisual::Property::URL] = progressImage;
+ progressBar.SetProperty(ProgressBar::Property::PROGRESS_VISUAL, map);
+
+ value = progressBar.GetProperty(ProgressBar::Property::PROGRESS_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ urlValue = resultMap->Find(Toolkit::ImageVisual::Property::URL);
+ urlValue->Get(urlString);
+ DALI_TEST_CHECK(!urlString.empty());
+ DALI_TEST_EQUALS(urlString, progressImage, TEST_LOCATION);
+
+ progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, secondaryProgressImage);
+
+ value = progressBar.GetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ urlValue = resultMap->Find(Toolkit::ImageVisual::Property::URL);
+ urlValue->Get(urlString);
+ DALI_TEST_CHECK(!urlString.empty());
+ DALI_TEST_EQUALS(urlString, secondaryProgressImage, TEST_LOCATION);
+
+ map[Toolkit::ImageVisual::Property::URL] = secondaryProgressImage;
+ progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, map);
+
+ value = progressBar.GetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ urlValue = resultMap->Find(Toolkit::ImageVisual::Property::URL);
+ urlValue->Get(urlString);
+ DALI_TEST_CHECK(!urlString.empty());
+ DALI_TEST_EQUALS(urlString, secondaryProgressImage, TEST_LOCATION);
+
+ map[Toolkit::ImageVisual::Property::URL] = indeterminateImage;
+ progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL, map);
+
+ value = progressBar.GetProperty(ProgressBar::Property::INDETERMINATE_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ urlValue = resultMap->Find(Toolkit::ImageVisual::Property::URL);
+ urlValue->Get(urlString);
+ DALI_TEST_CHECK(!urlString.empty());
+ DALI_TEST_EQUALS(urlString, indeterminateImage, TEST_LOCATION);
+
+ progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, "test1");
+
+ value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ Property::Value* textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT);
+
+ std::string textString;
+ textValue->Get(textString);
+ DALI_TEST_CHECK(!textString.empty());
+ DALI_TEST_EQUALS(textString, std::string("test1"), TEST_LOCATION);
+
+ Property::Map textVisualMap2;
+ textVisualMap2.Insert(Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT);
+ textVisualMap2.Insert(Toolkit::TextVisual::Property::TEXT, "test2");
+ textVisualMap2.Insert(Toolkit::TextVisual::Property::POINT_SIZE, 12.0f);
+ progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, textVisualMap2);
+
+ value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT);
+
+ textValue->Get(textString);
+ DALI_TEST_CHECK(!textString.empty());
+ DALI_TEST_EQUALS(textString, std::string("test2"), TEST_LOCATION);
+
+ progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, "test3");
+
+ value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL);
+ resultMap = value.GetMap();
+ DALI_TEST_CHECK(resultMap);
+ textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT);
+
+ std::string textString2;
+ textValue->Get(textString2);
+ DALI_TEST_CHECK(!textString2.empty());
+ DALI_TEST_EQUALS(textString2, std::string("test3"), TEST_LOCATION);
+
+ Property::Map transitionMap;
+ transitionMap["target"] = "indeterminateVisual";
+ transitionMap["property"] = "offset";
+ transitionMap["initialValue"] = Vector2(0.0f, 0.0f);
+ transitionMap["targetValue"] = Vector2(10.0f, 0.0f);
+ transitionMap["animator"] = Property::Map().Add("alphaFunction", "EASE_IN_OUT_BACK").Add("timePeriod", Property::Map().Add("delay", 0.5f).Add("duration", 1.0f));
+ Property::Array array;
+ array.PushBack(transitionMap);
+ progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL_ANIMATION, array);
+
+ Property::Map transitionMap2;
+ transitionMap2["target"] = "indeterminateVisual";
+ transitionMap2["property"] = "offset";
+ transitionMap2["initialValue"] = Vector2(0.0f, 0.0f);
+ transitionMap2["targetValue"] = Vector2(15.0f, 0.0f);
+ transitionMap2["animator"] = Property::Map().Add("alphaFunction", "EASE_IN_OUT_BACK").Add("timePeriod", Property::Map().Add("delay", 0.5f).Add("duration", 1.0f));
+ progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL_ANIMATION, transitionMap2);
+ END_TEST;
+}