X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-ProgressBar.cpp;h=9e421fd3d0d3ab26c5e8d3cc4aa100fa9969fb64;hp=4b965c8b75233e01171837cff13d4e921f7f517a;hb=01777a3489f027123010b281e58efbc9f0a93db7;hpb=e5db233869c72ec43ed7be31a3f1a2231f1f510d diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ProgressBar.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ProgressBar.cpp index 4b965c8..9e421fd 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-ProgressBar.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-ProgressBar.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,10 +17,10 @@ #include #include -#include -#include +#include +#include #include -#include +#include using namespace Dali; using namespace Dali::Toolkit; @@ -76,7 +76,7 @@ int UtcDaliProgressBarNew(void) DALI_TEST_CHECK( progressBar3 == progressBar2 ); //Additional check to ensure object is created by checking if it's registered - ObjectRegistry registry = Stage::GetCurrent().GetObjectRegistry(); + ObjectRegistry registry = application.GetCore().GetObjectRegistry(); DALI_TEST_CHECK( registry ); gObjectCreatedCallBackCalled = false; @@ -88,6 +88,22 @@ int UtcDaliProgressBarNew(void) END_TEST; } +int UtcDaliProgressBarNew2(void) +{ + ToolkitTestApplication application; + tet_infoline(" UtcDaliProgressBarNew2"); + + ProgressBar progressBar1 = DevelProgressBar::New( DevelProgressBar::Style::LINEAR ); + DALI_TEST_CHECK( progressBar1 ); + + ProgressBar progressBar2 = DevelProgressBar::New( DevelProgressBar::Style::CIRCULAR ); + DALI_TEST_CHECK( progressBar2 ); + + DALI_TEST_CHECK( progressBar1.GetStyleName() != progressBar2.GetStyleName() ); + + END_TEST; +} + int UtcDaliProgressBarDestructor(void) { ToolkitTestApplication application; @@ -99,6 +115,71 @@ int UtcDaliProgressBarDestructor(void) END_TEST; } +int UtcDaliProgressBarCopyConstructor(void) +{ + ToolkitTestApplication application; + + ProgressBar progressBar = ProgressBar::New(); + DALI_TEST_CHECK( progressBar ); + + ProgressBar copy( progressBar ); + DALI_TEST_CHECK( copy ); + + END_TEST; +} + +int UtcDaliProgressBarCopyAssignment(void) +{ + ToolkitTestApplication application; + + ProgressBar progressBar = ProgressBar::New(); + DALI_TEST_CHECK( progressBar ); + + ProgressBar copy; + copy = progressBar; + DALI_TEST_CHECK( copy ); + DALI_TEST_EQUALS( progressBar, copy, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliProgressBarMoveConstructor(void) +{ + ToolkitTestApplication application; + + ProgressBar progressBar = ProgressBar::New(); + DALI_TEST_EQUALS( 1, progressBar.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + progressBar.SetProperty( Actor::Property::SENSITIVE, false ); + DALI_TEST_CHECK( false == progressBar.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + + ProgressBar moved = std::move( progressBar ); + DALI_TEST_CHECK( moved ); + DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + DALI_TEST_CHECK( false == moved.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + DALI_TEST_CHECK( !progressBar ); + + END_TEST; +} + +int UtcDaliProgressBarMoveAssignment(void) +{ + ToolkitTestApplication application; + + ProgressBar progressBar = ProgressBar::New(); + DALI_TEST_EQUALS( 1, progressBar.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + progressBar.SetProperty( Actor::Property::SENSITIVE, false ); + DALI_TEST_CHECK( false == progressBar.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + + ProgressBar moved; + moved = std::move( progressBar ); + DALI_TEST_CHECK( moved ); + DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + DALI_TEST_CHECK( false == moved.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + DALI_TEST_CHECK( !progressBar ); + + END_TEST; +} + int UtcDaliProgressBarDownCast(void) { ToolkitTestApplication application; @@ -125,11 +206,11 @@ int UtcDaliProgressBarSignals(void) // Create the ProgressBar actor ProgressBar progressBar = ProgressBar::New(); - Stage::GetCurrent().Add( progressBar ); - progressBar.SetParentOrigin(ParentOrigin::TOP_LEFT); - progressBar.SetAnchorPoint(ParentOrigin::TOP_LEFT); - progressBar.SetSize( Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) ); - progressBar.SetPosition( 0.0f, 0.0f ); + application.GetScene().Add( progressBar ); + progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::SIZE, Vector2( application.GetScene().GetSize().x, 20.0f ) ); + progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f )); progressBar.ValueChangedSignal().Connect( &OnProgressBarValueChanged ); progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, 0.2f); @@ -156,12 +237,12 @@ int UtcDaliProgressBarSetPropertyP(void) tet_infoline( "UtcDaliProgressBarSetPropertyP" ); ProgressBar progressBar = ProgressBar::New(); - progressBar.SetParentOrigin(ParentOrigin::TOP_LEFT); - progressBar.SetAnchorPoint(ParentOrigin::TOP_LEFT); - progressBar.SetSize( Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) ); - progressBar.SetPosition( 0.0f, 0.0f ); + progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::SIZE, Vector2( application.GetScene().GetSize().x, 20.0f ) ); + progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f )); progressBar.ValueChangedSignal().Connect( &OnProgressBarValueChanged ); - Stage::GetCurrent().Add(progressBar); + application.GetScene().Add(progressBar); application.SendNotification(); application.Render(); @@ -249,7 +330,7 @@ int UtcDaliProgressBarSetPropertyP(void) DALI_TEST_EQUALS( textString, std::string( "test1" ), TEST_LOCATION ); Property::Map textVisualMap2; - textVisualMap2.Insert( Toolkit::Visual::Property::TYPE, Toolkit::DevelVisual::TEXT ); + 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); @@ -303,13 +384,13 @@ int UtcDaliProgressBarSetPropertyP1(void) tet_infoline( "UtcDaliProgressBarSetPropertyP1" ); ProgressBar progressBar = ProgressBar::New(); - progressBar.SetParentOrigin(ParentOrigin::TOP_LEFT); - progressBar.SetAnchorPoint(ParentOrigin::TOP_LEFT); - progressBar.SetSize( Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) ); - progressBar.SetPosition( 0.0f, 0.0f ); + progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::SIZE, Vector2( application.GetScene().GetSize().x, 20.0f ) ); + progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f )); progressBar.ValueChangedSignal().Connect( &OnProgressBarValueChanged ); - Stage::GetCurrent().Add(progressBar); + application.GetScene().Add(progressBar); application.SendNotification(); application.Render(); @@ -376,9 +457,9 @@ int UtcDaliProgressBarSetPropertyP2(void) tet_infoline( "UtcDaliProgressBarSetPropertyP2" ); ProgressBar progressBar = ProgressBar::New(); - progressBar.SetParentOrigin(ParentOrigin::TOP_LEFT); - progressBar.SetAnchorPoint(ParentOrigin::TOP_LEFT); - progressBar.SetPosition( 0.0f, 0.0f ); + progressBar.SetProperty( Actor::Property::PARENT_ORIGIN,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::ANCHOR_POINT,ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::POSITION, Vector2( 0.0f, 0.0f )); progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, "test"); progressBar.SetProperty(ProgressBar::Property::INDETERMINATE, true); progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, trackImage); @@ -398,8 +479,8 @@ int UtcDaliProgressBarSetPropertyP2(void) progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, 0.3f); progressBar.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS ); - progressBar.SetSize( Vector2( Stage::GetCurrent().GetSize().x, 20.0f ) ); - Stage::GetCurrent().Add(progressBar); + progressBar.SetProperty( Actor::Property::SIZE, Vector2( application.GetScene().GetSize().x, 20.0f ) ); + application.GetScene().Add(progressBar); application.SendNotification(); application.Render(); @@ -413,3 +494,104 @@ int UtcDaliProgressBarSetPropertyP2(void) END_TEST; } + +int UtcDaliProgressBarSetPropertyP3(void) +{ + ToolkitTestApplication application; + tet_infoline( "UtcDaliProgressBarSetPropertyP3" ); + + ProgressBar progressBar = ProgressBar::New(); + progressBar.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::ANCHOR_POINT, ParentOrigin::TOP_LEFT); + progressBar.SetProperty( Actor::Property::SIZE, Vector2( application.GetScene().GetSize().x, application.GetScene().GetSize().y ) ); + application.GetScene().Add( progressBar ); + application.SendNotification(); + application.Render(); + + { + // Set arc visual to the SECONDARY_PROGRESS_VISUAL + const float expected = 180.0f; + + Property::Map map; + map["visualType"] = "ARC"; + map["thickness"] = 4.0f; + map["mixColor"] = Color::BLUE; + map["sweepAngle"] = 60; + progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, map); + progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, 0.5f); // This should change visual's sweep angle. + + Property::Value value = progressBar.GetProperty( ProgressBar::Property::SECONDARY_PROGRESS_VISUAL ); + Property::Map* resultMap = value.GetMap(); + DALI_TEST_CHECK( resultMap ); + + Property::Value* sweepAngle = resultMap->Find( DevelArcVisual::Property::SWEEP_ANGLE ); + float result = 0.0f; + sweepAngle->Get( result ); + DALI_TEST_EQUALS( result, expected, TEST_LOCATION ); + } + + { + // Set arc visual to the PROGRESS_VISUAL + const float expected = 90.0f; + + Property::Map map; + map["visualType"] = "ARC"; + map["thickness"] = 4.0f; + map["mixColor"] = Color::RED; + map["sweepAngle"] = 60; + progressBar.SetProperty(ProgressBar::Property::PROGRESS_VISUAL, map); + progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, 0.25f); // This should change visual's sweep angle. + + Property::Value value = progressBar.GetProperty( ProgressBar::Property::PROGRESS_VISUAL ); + Property::Map* resultMap = value.GetMap(); + DALI_TEST_CHECK( resultMap ); + + Property::Value* sweepAngle = resultMap->Find( DevelArcVisual::Property::SWEEP_ANGLE ); + float result = 0.0f; + sweepAngle->Get( result ); + DALI_TEST_EQUALS( result, expected, TEST_LOCATION ); + } + + { + // Set arc visual to the INDETERMINATE_VISUAL + const Vector4 expected = Color::GREEN; + + Property::Map map; + map["visualType"] = "ARC"; + map["thickness"] = 4.0f; + map["mixColor"] = expected; + progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL, map); + + Property::Value value = progressBar.GetProperty( ProgressBar::Property::INDETERMINATE_VISUAL ); + Property::Map* resultMap = value.GetMap(); + DALI_TEST_CHECK( resultMap ); + + Property::Value* mixColor = resultMap->Find( Visual::Property::MIX_COLOR ); + Vector4 result; + mixColor->Get( result ); + DALI_TEST_EQUALS( result, expected, TEST_LOCATION ); + } + + { + // Set arc visual to the TRACK_VISUAL + const Vector4 expected = Color::YELLOW; + + Property::Map map; + map["visualType"] = "ARC"; + map["thickness"] = 0.4f; + map["mixColor"] = expected; + progressBar.SetProperty( ProgressBar::Property::TRACK_VISUAL, map ); + progressBar.SetProperty( ProgressBar::Property::INDETERMINATE, true ); // This should not change track visual's properties. + + Property::Value value = progressBar.GetProperty( ProgressBar::Property::TRACK_VISUAL ); + Property::Map* resultMap = value.GetMap(); + DALI_TEST_CHECK( resultMap ); + + Property::Value* mixColor = resultMap->Find( Visual::Property::MIX_COLOR ); + Vector4 result; + mixColor->Get( result ); + DALI_TEST_EQUALS( result, expected, TEST_LOCATION ); + } + + END_TEST; +}