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-ControlImpl.cpp;h=2e691af7ea60f9907071275caa07b84029e30644;hp=f3aa937912d2dade70c908bc869a4bbfb8fa6a2b;hb=a394f6523cfb5c36321d877ca1d4f57c354ebc7d;hpb=1c5674a11a51310ee689d6daf4e6b7d94dec607e diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ControlImpl.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ControlImpl.cpp index f3aa937..2e691af 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-ControlImpl.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-ControlImpl.cpp @@ -25,6 +25,7 @@ #include #include +#include #include #include #include @@ -34,7 +35,6 @@ #include #include -#include #include "dummy-control.h" @@ -354,7 +354,7 @@ int UtcDaliControlImplChildAddAndRemove(void) DALI_TEST_EQUALS( dummyImpl.childAddCalled, false, TEST_LOCATION ); DALI_TEST_EQUALS( dummy.GetChildCount(), 0u, TEST_LOCATION ); - Actor actor = RenderableActor::New(); + Actor actor = Actor::New(); dummy.Add(actor); DALI_TEST_EQUALS( dummyImpl.childAddCalled, true, TEST_LOCATION ); DALI_TEST_EQUALS( dummy.GetChildCount(), 1u, TEST_LOCATION ); @@ -382,7 +382,7 @@ int UtcDaliControlImplChildAddAndRemove(void) application.SendNotification(); DALI_TEST_EQUALS( dummy.GetChildCount(), 0u, TEST_LOCATION ); - Actor actor = RenderableActor::New(); + Actor actor = Actor::New(); dummy.Add(actor); DALI_TEST_EQUALS( dummy.GetChildCount(), 1u, TEST_LOCATION ); @@ -563,7 +563,10 @@ int UtcDaliControlImplTouchEvent(void) DALI_TEST_EQUALS( dummyImpl.touchEventCalled, false, TEST_LOCATION ); Integration::TouchEvent touchEvent(1); - TouchPoint point(1, TouchPoint::Down, 20.0f, 20.0f); + Integration::Point point; + point.SetDeviceId( 1 ); + point.SetState( PointState::DOWN ); + point.SetScreenPosition( Vector2( 20.0f, 20.0f ) ); touchEvent.AddPoint(point); application.ProcessEvent(touchEvent); DALI_TEST_EQUALS( dummyImpl.touchEventCalled, true, TEST_LOCATION ); @@ -585,7 +588,10 @@ int UtcDaliControlImplTouchEvent(void) application.SendNotification(); Integration::TouchEvent touchEvent(1); - TouchPoint point(1, TouchPoint::Down, 20.0f, 20.0f); + Integration::Point point; + point.SetDeviceId( 1 ); + point.SetState( PointState::DOWN ); + point.SetScreenPosition( Vector2( 20.0f, 20.0f ) ); touchEvent.AddPoint(point); application.ProcessEvent(touchEvent); @@ -613,8 +619,11 @@ int UtcDaliControlImplHoverEvent(void) DALI_TEST_EQUALS( dummyImpl.hoverEventCalled, false, TEST_LOCATION ); Integration::HoverEvent event(1); - TouchPoint point( 1, TouchPoint::Motion, 20.0f, 20.0f ); - event.AddPoint( point ); + Integration::Point point; + point.SetDeviceId( 1 ); + point.SetState( PointState::MOTION ); + point.SetScreenPosition( Vector2( 20.0f, 20.0f ) ); + event.AddPoint(point); application.ProcessEvent( event ); DALI_TEST_EQUALS( dummyImpl.hoverEventCalled, true, TEST_LOCATION ); @@ -635,8 +644,11 @@ int UtcDaliControlImplHoverEvent(void) application.SendNotification(); Integration::HoverEvent event(1); - TouchPoint point( 1, TouchPoint::Motion, 20.0f, 20.0f ); - event.AddPoint( point ); + Integration::Point point; + point.SetDeviceId( 1 ); + point.SetState( PointState::MOTION ); + point.SetScreenPosition( Vector2( 20.0f, 20.0f ) ); + event.AddPoint(point); application.ProcessEvent( event ); Stage::GetCurrent().Remove(dummy); @@ -751,7 +763,6 @@ int UtcDaliControlImplKeyInputFocusLost(void) DummyControlImplOverride& dummyImpl = static_cast(dummy.GetImplementation()); - dummyImpl.OnAccessibilityValueChange( true ); dummyImpl.IsKeyboardNavigationSupported(); dummyImpl.IsKeyboardFocusGroup(); @@ -867,17 +878,11 @@ int UtcDaliControlImplOnStyleChangeN(void) Control dummy = Control::New(); Toolkit::Internal::Control& controlImpl = Toolkit::Internal::GetImplementation( dummy ); - // test that style manager is being used, passing an empty handle throws exception - try - { - Dali::Toolkit::StyleManager styleManager; - controlImpl.OnStyleChange( styleManager, StyleChange::THEME_CHANGE ); - tet_result(TET_FAIL); - } - catch (DaliException &exception) - { - tet_result(TET_PASS); - } + // test that style manager is being used, passing an empty handle does nothing but does not crash either + Dali::Toolkit::StyleManager styleManager; + controlImpl.OnStyleChange( styleManager, StyleChange::THEME_CHANGE ); + // no crash so test passes + tet_result(TET_PASS); END_TEST; } @@ -922,7 +927,7 @@ int UtcDaliControlImplOnAccessibilityActivatedP(void) DALI_TEST_CHECK( handle ); Property::Map attributes; - DALI_TEST_EQUALS( false, handle.DoAction("control-activated", attributes), TEST_LOCATION ); + DALI_TEST_EQUALS( false, handle.DoAction("accessibilityActivated", attributes), TEST_LOCATION ); END_TEST; } @@ -941,6 +946,201 @@ int UtcDaliControlImplGetNextKeyboardFocusableActorP(void) END_TEST; } +int UtcDaliControlImplRegisterThenReRegisterVisual(void) +{ + ToolkitTestApplication application; + + DummyControl dummy = DummyControl::New(); + DummyControlImpl& dummyImpl = static_cast(dummy.GetImplementation()); + + Property::Index index =1; + Actor placementActor = Actor::New(); + + DALI_TEST_CHECK( !dummyImpl.GetVisual( index ) ); + DALI_TEST_CHECK( !dummyImpl.GetPlacementActor( index ) ); + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK(visual); + // Register index with a color visual + dummyImpl.RegisterVisual( index, placementActor, visual ); + + DALI_TEST_CHECK( dummyImpl.GetVisual( index ) == visual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index ) == placementActor ); + + Property::Map newMap; + newMap[Visual::Property::TYPE] = Visual::COLOR; + newMap[ColorVisual::Property::MIX_COLOR] = Color::BLUE; + + visual = visualFactory.CreateVisual( newMap ); + DALI_TEST_CHECK(visual); + + // ReRegister with altered color visual + dummyImpl.RegisterVisual( index, placementActor, visual ); + + DALI_TEST_CHECK( dummyImpl.GetVisual( index ) == visual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index ) == placementActor ); + + tet_result(TET_PASS); + + END_TEST; +} + +int UtcDaliControlImplRegisterVisaulThenReRegisterToSelf(void) +{ + ToolkitTestApplication application; + + DummyControl dummy = DummyControl::New(); + DummyControlImpl& dummyImpl = static_cast(dummy.GetImplementation()); + + Property::Index index =1; + Actor placementActor = Actor::New(); + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK(visual); + + // Register index with a color visual + dummyImpl.RegisterVisual( index, placementActor, visual ); + + DALI_TEST_CHECK( dummyImpl.GetVisual( index ) == visual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index ) == placementActor ); + + // ReRegister to self + dummyImpl.RegisterVisual( index, dummy, visual ); + + DALI_TEST_CHECK( dummyImpl.GetVisual( index ) == visual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index ) == dummy ); + + END_TEST; +} + +int UtcDaliControlImplRegisterVisualToSelf(void) +{ + ToolkitTestApplication application; + + Test::ObjectDestructionTracker objectDestructionTracker; + + { + DummyControl dummy = DummyControl::New(); + DummyControlImpl& dummyImpl = static_cast(dummy.GetImplementation()); + objectDestructionTracker.Start( dummy ); + Property::Index index = 1; + Actor placementActor = Actor::New(); + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK(visual); + + // Register to self + dummyImpl.RegisterVisual( index, dummy, visual ); + DALI_TEST_EQUALS( objectDestructionTracker.IsDestroyed(), false, TEST_LOCATION ); // Control not destroyed yet + DALI_TEST_CHECK( dummyImpl.GetVisual( index ) == visual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index ) == dummy ); + } + + DALI_TEST_EQUALS( objectDestructionTracker.IsDestroyed(), true, TEST_LOCATION ); // Should be destroyed + + END_TEST; +} + +int UtcDaliControlImplRegisterTwoVisuals(void) +{ + ToolkitTestApplication application; + + DummyControl dummy = DummyControl::New(); + DummyControlImpl& dummyImpl = static_cast(dummy.GetImplementation()); + + Property::Index index =1; + Actor placementActor = Actor::New(); + + Property::Index index2 =2; + Actor secondPlacementActor = Actor::New(); + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + Toolkit::Visual::Base secondVisual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK(visual); + + // Register index with a color visual + dummyImpl.RegisterVisual( index, placementActor, visual ); + + Property::Map newMap; + newMap[Visual::Property::TYPE] = Visual::COLOR; + newMap[ColorVisual::Property::MIX_COLOR] = Color::BLUE; + + secondVisual = visualFactory.CreateVisual( newMap ); + DALI_TEST_CHECK( secondVisual ); + + // ReRegister with altered color visual + dummyImpl.RegisterVisual( index2, secondPlacementActor, secondVisual ); + + DALI_TEST_CHECK( dummyImpl.GetVisual( index ) == visual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index ) == placementActor ); + + DALI_TEST_CHECK( dummyImpl.GetVisual( index2 ) == secondVisual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index2 ) == secondPlacementActor ); + + END_TEST; +} + +int UtcDaliControlImplRegisterUnregisterVisual(void) +{ + ToolkitTestApplication application; + + DummyControl dummy = DummyControl::New(); + DummyControlImpl& dummyImpl = static_cast(dummy.GetImplementation()); + + Property::Index index =1; + Actor placementActor = Actor::New(); + + Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get(); + Toolkit::Visual::Base visual; + + Property::Map map; + map[Visual::Property::TYPE] = Visual::COLOR; + map[ColorVisual::Property::MIX_COLOR] = Color::RED; + + visual = visualFactory.CreateVisual( map ); + DALI_TEST_CHECK(visual); + + // Register index with a color visual + dummyImpl.RegisterVisual( index, placementActor, visual ); + + DALI_TEST_CHECK( dummyImpl.GetVisual( index ) == visual ); + DALI_TEST_CHECK( dummyImpl.GetPlacementActor( index ) == placementActor ); + + // Unregister visual + dummyImpl.UnregisterVisual( index ); + + DALI_TEST_CHECK( !dummyImpl.GetVisual( index ) ); + DALI_TEST_CHECK( !dummyImpl.GetPlacementActor( index ) ); + + END_TEST; +}