2 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 #include <dali-toolkit-test-suite-utils.h>
19 #include <dali-toolkit/dali-toolkit.h>
20 #include <dali-toolkit/devel-api/controls/progress-bar/progress-bar-devel.h>
21 #include <dali-toolkit/devel-api/visuals/arc-visual-properties-devel.h>
22 #include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
23 #include <dali/devel-api/actors/actor-devel.h>
26 using namespace Dali::Toolkit;
27 using Dali::Toolkit::ProgressBar;
30 void utc_dali_toolkit_progressbar_startup(void)
32 test_return_value = TET_UNDEF;
35 void utc_dali_toolkit_progressbar_cleanup(void)
37 test_return_value = TET_PASS;
42 static const char* trackImage = TEST_RESOURCE_DIR "/progress-bar-skin-track-progress.png";
43 static const char* progressImage = TEST_RESOURCE_DIR "/progress-bar-skin-progress-progress.png";
44 static const char* secondaryProgressImage = TEST_RESOURCE_DIR "/progress-bar-skin-secondary-progress.png";
45 static const char* indeterminateImage = TEST_RESOURCE_DIR "/progress-bar-skin-indeterminate.png";
46 static bool gObjectCreatedCallBackCalled;
48 static void TestCallback(BaseHandle handle)
50 gObjectCreatedCallBackCalled = true;
55 int UtcDaliProgressBarNew(void)
57 ToolkitTestApplication application;
58 tet_infoline(" UtcDaliProgressBarNew");
60 // Create the ProgressBar actor
61 ProgressBar progressBar;
63 DALI_TEST_CHECK( !progressBar );
65 progressBar = ProgressBar::New();
67 DALI_TEST_CHECK( progressBar );
69 ProgressBar progressBar2(progressBar);
71 DALI_TEST_CHECK( progressBar2 == progressBar );
73 ProgressBar progressBar3;
74 progressBar3 = progressBar2;
76 DALI_TEST_CHECK( progressBar3 == progressBar2 );
78 //Additional check to ensure object is created by checking if it's registered
79 ObjectRegistry registry = Stage::GetCurrent().GetObjectRegistry();
80 DALI_TEST_CHECK( registry );
82 gObjectCreatedCallBackCalled = false;
83 registry.ObjectCreatedSignal().Connect( &TestCallback );
85 ProgressBar progressBar = ProgressBar::New();
87 DALI_TEST_CHECK( gObjectCreatedCallBackCalled );
91 int UtcDaliProgressBarNew2(void)
93 ToolkitTestApplication application;
94 tet_infoline(" UtcDaliProgressBarNew2");
96 ProgressBar progressBar1 = DevelProgressBar::New( DevelProgressBar::Style::LINEAR );
97 DALI_TEST_CHECK( progressBar1 );
99 ProgressBar progressBar2 = DevelProgressBar::New( DevelProgressBar::Style::CIRCULAR );
100 DALI_TEST_CHECK( progressBar2 );
102 DALI_TEST_CHECK( progressBar1.GetStyleName() != progressBar2.GetStyleName() );
107 int UtcDaliProgressBarDestructor(void)
109 ToolkitTestApplication application;
111 ProgressBar* progressBar = new ProgressBar();
114 DALI_TEST_CHECK( true );
118 int UtcDaliProgressBarDownCast(void)
120 ToolkitTestApplication application;
122 Handle handle = ProgressBar::New();
124 ProgressBar progressBar = ProgressBar::DownCast( handle );
126 DALI_TEST_CHECK( progressBar == handle );
130 static bool gProgressBarValueChangedCallBackCalled = false;
132 static void OnProgressBarValueChanged( ProgressBar progressBar, float value, float secondaryValue )
134 gProgressBarValueChangedCallBackCalled = true;
137 int UtcDaliProgressBarSignals(void)
139 ToolkitTestApplication application; // Exceptions require ToolkitTestApplication
140 tet_infoline(" UtcDaliProgressBarSignals");
142 // Create the ProgressBar actor
143 ProgressBar progressBar = ProgressBar::New();
144 Stage::GetCurrent().Add( progressBar );
145 progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
146 progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
147 progressBar.SetProperty( Actor::Property::SIZE, Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) );
148 progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f ));
149 progressBar.ValueChangedSignal().Connect( &OnProgressBarValueChanged );
151 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, 0.2f);
153 application.SendNotification();
154 application.Render();
156 DALI_TEST_CHECK(gProgressBarValueChangedCallBackCalled);
158 //Check Secondary progress value can make signal
159 gProgressBarValueChangedCallBackCalled = false;
160 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, 0.2f);
162 application.SendNotification();
163 application.Render();
165 DALI_TEST_CHECK(gProgressBarValueChangedCallBackCalled);
169 int UtcDaliProgressBarSetPropertyP(void)
171 ToolkitTestApplication application;
172 tet_infoline( "UtcDaliProgressBarSetPropertyP" );
174 ProgressBar progressBar = ProgressBar::New();
175 progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
176 progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
177 progressBar.SetProperty( Actor::Property::SIZE, Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) );
178 progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f ));
179 progressBar.ValueChangedSignal().Connect( &OnProgressBarValueChanged );
180 Stage::GetCurrent().Add(progressBar);
181 application.SendNotification();
182 application.Render();
185 map["visualType"] = "IMAGE";
186 map[Toolkit::ImageVisual::Property::URL] = trackImage;
187 progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, map);
189 Property::Value value = progressBar.GetProperty(ProgressBar::Property::TRACK_VISUAL);
190 Property::Map* resultMap = value.GetMap();
191 DALI_TEST_CHECK( resultMap );
192 Property::Value* urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL );
193 std::string urlString;
194 urlValue->Get( urlString );
195 DALI_TEST_CHECK( !urlString.empty() ) ;
196 DALI_TEST_EQUALS( urlString, trackImage, TEST_LOCATION );
198 Property::Map colorMap;
199 colorMap["visualType"] = "COLOR";
200 colorMap[Toolkit::ColorVisual::Property::MIX_COLOR] = Color::RED;
201 progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, colorMap);
203 value = progressBar.GetProperty(ProgressBar::Property::TRACK_VISUAL);
204 resultMap = value.GetMap();
205 DALI_TEST_CHECK( resultMap );
206 Property::Value* colorValue = resultMap->Find( Toolkit::ColorVisual::Property::MIX_COLOR );
207 Vector4 color = Color::TRANSPARENT;
208 colorValue->Get( color );
209 DALI_TEST_CHECK( color != Color::TRANSPARENT );
210 DALI_TEST_EQUALS( color, Color::RED, TEST_LOCATION );
212 map[Toolkit::ImageVisual::Property::URL] = progressImage;
213 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VISUAL, map);
215 value = progressBar.GetProperty(ProgressBar::Property::PROGRESS_VISUAL);
216 resultMap = value.GetMap();
217 DALI_TEST_CHECK( resultMap );
218 urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL );
219 urlValue->Get( urlString );
220 DALI_TEST_CHECK( !urlString.empty() ) ;
221 DALI_TEST_EQUALS( urlString, progressImage, TEST_LOCATION );
223 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, secondaryProgressImage);
225 value = progressBar.GetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL);
226 resultMap = value.GetMap();
227 DALI_TEST_CHECK( resultMap );
228 urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL );
229 urlValue->Get( urlString );
230 DALI_TEST_CHECK( !urlString.empty() ) ;
231 DALI_TEST_EQUALS( urlString, secondaryProgressImage, TEST_LOCATION );
233 map[Toolkit::ImageVisual::Property::URL] = secondaryProgressImage;
234 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, map);
236 value = progressBar.GetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL);
237 resultMap = value.GetMap();
238 DALI_TEST_CHECK( resultMap );
239 urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL );
240 urlValue->Get( urlString );
241 DALI_TEST_CHECK( !urlString.empty() ) ;
242 DALI_TEST_EQUALS( urlString, secondaryProgressImage, TEST_LOCATION );
244 map[Toolkit::ImageVisual::Property::URL] = indeterminateImage;
245 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL, map);
247 value = progressBar.GetProperty(ProgressBar::Property::INDETERMINATE_VISUAL);
248 resultMap = value.GetMap();
249 DALI_TEST_CHECK( resultMap );
250 urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL );
251 urlValue->Get( urlString );
252 DALI_TEST_CHECK( !urlString.empty() ) ;
253 DALI_TEST_EQUALS( urlString, indeterminateImage, TEST_LOCATION );
255 progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, "test1");
257 value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL);
258 resultMap = value.GetMap();
259 DALI_TEST_CHECK( resultMap );
260 Property::Value* textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT);
262 std::string textString;
263 textValue->Get( textString );
264 DALI_TEST_CHECK( !textString.empty() );
265 DALI_TEST_EQUALS( textString, std::string( "test1" ), TEST_LOCATION );
267 Property::Map textVisualMap2;
268 textVisualMap2.Insert( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT );
269 textVisualMap2.Insert( Toolkit::TextVisual::Property::TEXT, "test2" );
270 textVisualMap2.Insert( Toolkit::TextVisual::Property::POINT_SIZE, 12.0f );
271 progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, textVisualMap2);
273 value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL);
274 resultMap = value.GetMap();
275 DALI_TEST_CHECK( resultMap );
276 textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT);
278 textValue->Get( textString );
279 DALI_TEST_CHECK( !textString.empty() );
280 DALI_TEST_EQUALS( textString, std::string( "test2" ), TEST_LOCATION );
282 progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, "test3");
284 value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL);
285 resultMap = value.GetMap();
286 DALI_TEST_CHECK( resultMap );
287 textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT);
289 std::string textString2;
290 textValue->Get( textString2 );
291 DALI_TEST_CHECK( !textString2.empty() );
292 DALI_TEST_EQUALS( textString2, std::string( "test3" ), TEST_LOCATION );
294 Property::Map transitionMap;
295 transitionMap["target"] = "indeterminateVisual";
296 transitionMap["property"] = "offset";
297 transitionMap["initialValue"] = Vector2( 0.0f, 0.0f );
298 transitionMap["targetValue"] = Vector2( 10.0f, 0.0f );
299 transitionMap["animator"] = Property::Map().Add("alphaFunction", "EASE_IN_OUT_BACK")
300 .Add("timePeriod", Property::Map().Add("delay", 0.5f).Add("duration", 1.0f));
301 Property::Array array;
302 array.PushBack( transitionMap );
303 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL_ANIMATION, array);
305 Property::Map transitionMap2;
306 transitionMap2["target"] = "indeterminateVisual";
307 transitionMap2["property"] = "offset";
308 transitionMap2["initialValue"] = Vector2( 0.0f, 0.0f );
309 transitionMap2["targetValue"] = Vector2( 15.0f, 0.0f );
310 transitionMap2["animator"] = Property::Map().Add("alphaFunction", "EASE_IN_OUT_BACK")
311 .Add("timePeriod", Property::Map().Add("delay", 0.5f).Add("duration", 1.0f));
312 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL_ANIMATION, transitionMap2);
316 int UtcDaliProgressBarSetPropertyP1(void)
318 ToolkitTestApplication application;
319 tet_infoline( "UtcDaliProgressBarSetPropertyP1" );
321 ProgressBar progressBar = ProgressBar::New();
322 progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
323 progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
324 progressBar.SetProperty( Actor::Property::SIZE, Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) );
325 progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f ));
326 progressBar.ValueChangedSignal().Connect( &OnProgressBarValueChanged );
328 Stage::GetCurrent().Add(progressBar);
329 application.SendNotification();
330 application.Render();
332 float val = progressBar.GetProperty<float>(ProgressBar::Property::PROGRESS_VALUE);
333 DALI_TEST_EQUALS(val, 0.0f, TEST_LOCATION);
335 // test to download a file of 100k in chunks
336 float lowerBound = 0, upperBound = 100, progressValue = 0, secondaryProgressValue = 0, chunkValue = 0;
338 while( chunkValue <= upperBound )
340 progressValue = (chunkValue - lowerBound ) / ( upperBound - lowerBound );
341 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, progressValue);
342 val = progressBar.GetProperty<float>(ProgressBar::Property::PROGRESS_VALUE);
343 DALI_TEST_EQUALS(val, progressValue, TEST_LOCATION);
344 chunkValue = chunkValue + 10;
347 // test to download a file of 1000k in chunks
348 lowerBound = 0, upperBound = 1000, progressValue = 0, chunkValue = 0;
350 while( chunkValue <= upperBound )
352 progressValue = (chunkValue - lowerBound ) / ( upperBound - lowerBound );
353 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, progressValue);
354 val = progressBar.GetProperty<float>(ProgressBar::Property::PROGRESS_VALUE);
355 DALI_TEST_EQUALS(val, progressValue, TEST_LOCATION);
356 chunkValue = chunkValue + 100;
359 val = progressBar.GetProperty<float>(ProgressBar::Property::SECONDARY_PROGRESS_VALUE);
360 DALI_TEST_EQUALS(val, 0.0f, TEST_LOCATION);
362 // test to download a file of 100k in chunks
363 lowerBound = 0, upperBound = 100, secondaryProgressValue = 0, chunkValue = 0;
365 while( chunkValue <= upperBound )
367 secondaryProgressValue = (chunkValue - lowerBound ) / ( upperBound - lowerBound );
368 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, secondaryProgressValue);
369 val = progressBar.GetProperty<float>(ProgressBar::Property::SECONDARY_PROGRESS_VALUE);
370 DALI_TEST_EQUALS(val, secondaryProgressValue, TEST_LOCATION);
371 chunkValue = chunkValue + 10;
374 // test to download a file of 1000k in chunks
375 lowerBound = 0, upperBound = 1000, secondaryProgressValue = 0, chunkValue = 0;
377 while( chunkValue <= upperBound )
379 secondaryProgressValue = (chunkValue - lowerBound ) / ( upperBound - lowerBound );
380 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, secondaryProgressValue);
381 val = progressBar.GetProperty<float>(ProgressBar::Property::SECONDARY_PROGRESS_VALUE);
382 DALI_TEST_EQUALS(val, secondaryProgressValue, TEST_LOCATION);
383 chunkValue = chunkValue + 100;
389 int UtcDaliProgressBarSetPropertyP2(void)
391 ToolkitTestApplication application;
392 tet_infoline( "UtcDaliProgressBarSetPropertyP2" );
394 ProgressBar progressBar = ProgressBar::New();
395 progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT);
396 progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT);
397 progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f ));
398 progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, "test");
399 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE, true);
400 progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, trackImage);
401 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VISUAL, progressImage);
402 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, secondaryProgressImage);
403 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL, indeterminateImage);
405 Property::Map transitionMap;
406 transitionMap["target"] = "indeterminateVisual";
407 transitionMap["property"] = "offset";
408 transitionMap["initialValue"] = Vector2( 0.0f, 0.0f );
409 transitionMap["targetValue"] = Vector2( 10.0f, 0.0f );
410 transitionMap["animator"] = Property::Map().Add("alphaFunction", "EASE_IN_OUT_BACK")
411 .Add("timePeriod", Property::Map().Add("delay", 0.5f).Add("duration", 1.0f));
412 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL_ANIMATION, transitionMap);
413 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, 0.2f);
414 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, 0.3f);
416 progressBar.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
417 progressBar.SetProperty( Actor::Property::SIZE, Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) );
418 Stage::GetCurrent().Add(progressBar);
419 application.SendNotification();
420 application.Render();
422 // Test get/set INDETERMINATE
423 bool val = progressBar.GetProperty<bool>(ProgressBar::Property::INDETERMINATE);
424 DALI_TEST_EQUALS(val, true, TEST_LOCATION);
426 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE, false);
427 val = progressBar.GetProperty<bool>(ProgressBar::Property::INDETERMINATE);
428 DALI_TEST_EQUALS(val, false, TEST_LOCATION);
433 int UtcDaliProgressBarSetPropertyP3(void)
435 ToolkitTestApplication application;
436 tet_infoline( "UtcDaliProgressBarSetPropertyP3" );
438 ProgressBar progressBar = ProgressBar::New();
439 progressBar.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT);
440 progressBar.SetProperty( Actor::Property::ANCHOR_POINT, ParentOrigin::TOP_LEFT);
441 progressBar.SetProperty( Actor::Property::SIZE, Vector2( Stage::GetCurrent().GetSize().x, Stage::GetCurrent().GetSize().y ) );
442 Stage::GetCurrent().Add( progressBar );
443 application.SendNotification();
444 application.Render();
447 // Set arc visual to the SECONDARY_PROGRESS_VISUAL
448 const float expected = 180.0f;
451 map["visualType"] = "ARC";
452 map["thickness"] = 4.0f;
453 map["mixColor"] = Color::BLUE;
454 map["sweepAngle"] = 60;
455 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, map);
456 progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, 0.5f); // This should change visual's sweep angle.
458 Property::Value value = progressBar.GetProperty( ProgressBar::Property::SECONDARY_PROGRESS_VISUAL );
459 Property::Map* resultMap = value.GetMap();
460 DALI_TEST_CHECK( resultMap );
462 Property::Value* sweepAngle = resultMap->Find( DevelArcVisual::Property::SWEEP_ANGLE );
464 sweepAngle->Get( result );
465 DALI_TEST_EQUALS( result, expected, TEST_LOCATION );
469 // Set arc visual to the PROGRESS_VISUAL
470 const float expected = 90.0f;
473 map["visualType"] = "ARC";
474 map["thickness"] = 4.0f;
475 map["mixColor"] = Color::RED;
476 map["sweepAngle"] = 60;
477 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VISUAL, map);
478 progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, 0.25f); // This should change visual's sweep angle.
480 Property::Value value = progressBar.GetProperty( ProgressBar::Property::PROGRESS_VISUAL );
481 Property::Map* resultMap = value.GetMap();
482 DALI_TEST_CHECK( resultMap );
484 Property::Value* sweepAngle = resultMap->Find( DevelArcVisual::Property::SWEEP_ANGLE );
486 sweepAngle->Get( result );
487 DALI_TEST_EQUALS( result, expected, TEST_LOCATION );
491 // Set arc visual to the INDETERMINATE_VISUAL
492 const Vector4 expected = Color::GREEN;
495 map["visualType"] = "ARC";
496 map["thickness"] = 4.0f;
497 map["mixColor"] = expected;
498 progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL, map);
500 Property::Value value = progressBar.GetProperty( ProgressBar::Property::INDETERMINATE_VISUAL );
501 Property::Map* resultMap = value.GetMap();
502 DALI_TEST_CHECK( resultMap );
504 Property::Value* mixColor = resultMap->Find( Visual::Property::MIX_COLOR );
506 mixColor->Get( result );
507 DALI_TEST_EQUALS( result, expected, TEST_LOCATION );
511 // Set arc visual to the TRACK_VISUAL
512 const Vector4 expected = Color::YELLOW;
515 map["visualType"] = "ARC";
516 map["thickness"] = 0.4f;
517 map["mixColor"] = expected;
518 progressBar.SetProperty( ProgressBar::Property::TRACK_VISUAL, map );
519 progressBar.SetProperty( ProgressBar::Property::INDETERMINATE, true ); // This should not change track visual's properties.
521 Property::Value value = progressBar.GetProperty( ProgressBar::Property::TRACK_VISUAL );
522 Property::Map* resultMap = value.GetMap();
523 DALI_TEST_CHECK( resultMap );
525 Property::Value* mixColor = resultMap->Find( Visual::Property::MIX_COLOR );
527 mixColor->Get( result );
528 DALI_TEST_EQUALS( result, expected, TEST_LOCATION );