Text Selection Popup and Radio Button fix and tests uses Button::Properties
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-RadioButton.cpp
index 521d6ca..85cced6 100644 (file)
@@ -21,6 +21,8 @@
 #include <dali-toolkit/dali-toolkit.h>
 #include <dali/integration-api/events/touch-event-integ.h>
 
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visuals/text-visual-properties.h>
 
 using namespace Dali;
 using namespace Dali::Toolkit;
@@ -45,6 +47,23 @@ static void TestCallback(BaseHandle handle)
   gObjectCreatedCallBackCalled = true;
 }
 
+static std::string GetButtonText( Button button )
+{
+  Property::Value value = button.GetProperty( Toolkit::Button::Property::LABEL );
+
+  Property::Map *labelProperty = value.GetMap();
+
+  std::string textLabel;
+
+  if ( labelProperty )
+  {
+    Property::Value* value = labelProperty->Find( Toolkit::TextVisual::Property::TEXT );
+    value->Get( textLabel );
+  }
+
+  return textLabel;
+}
+
 }
 
 int UtcDaliRadioButtonConstructorP(void)
@@ -136,42 +155,27 @@ int UtcDaliRadioButtonDownCast(void)
   END_TEST;
 }
 
-int UtcDaliRadioButtonLabelActor(void)
+int UtcDaliRadioButtonLabelProperty(void)
 {
   ToolkitTestApplication application;
 
-  TextLabel actor1 = TextLabel::New( "test actor 1" );
-
-  RadioButton radioButton = RadioButton::New( actor1 );
-  DALI_TEST_CHECK( actor1 == radioButton.GetLabel() );
-
-  TextLabel actor2 = TextLabel::New( "test actor 2" );
-  radioButton.SetLabel( actor2 );
-  DALI_TEST_CHECK( actor2 == radioButton.GetLabel() );
-
-  END_TEST;
-}
-
-int UtcDaliRadioButtonSelected(void)
-{
-  ToolkitTestApplication application;
+  const std::string labelText = "test actor 1";
 
   RadioButton radioButton = RadioButton::New();
 
-  // Default selected
-  DALI_TEST_CHECK( radioButton.IsSelected() == false );
+  radioButton.SetProperty( Toolkit::Button::Property::LABEL,
+                          Property::Map().Add( Toolkit::Visual::Property::TYPE, Toolkit::DevelVisual::TEXT )
+                                         .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f )
+                        );
 
-  // False
-  radioButton.SetSelected( false );
-  DALI_TEST_CHECK( radioButton.IsSelected() == false );
+  radioButton.SetProperty( Toolkit::Button::Property::LABEL, labelText );
+  DALI_TEST_EQUALS( GetButtonText( radioButton ), labelText, TEST_LOCATION );
 
-  // True
-  radioButton.SetSelected( true );
-  DALI_TEST_CHECK( radioButton.IsSelected() == true );
 
-  // False
-  radioButton.SetSelected( false );
-  DALI_TEST_CHECK( radioButton.IsSelected() == false );
+  std::string labelText2 = "test actor 2";
+  radioButton.SetProperty( Toolkit::Button::Property::LABEL, labelText2 );
+
+  DALI_TEST_EQUALS( GetButtonText( radioButton ), labelText2, TEST_LOCATION );
 
   END_TEST;
 }
@@ -236,8 +240,12 @@ int UtcDaliRadioButtonSelectedProperty(void)
     Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
     Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
 
-    const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 10.0f );
-    const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 10.0f );
+    Dali::Integration::Point pointDown;
+    pointDown.SetState( PointState::DOWN );
+    pointDown.SetScreenPosition( Vector2( 1.0f, 1.0f ) );
+
+    Dali::Integration::Point pointUp( pointDown );
+    pointUp.SetState( PointState::UP );
 
     event1.AddPoint( pointDown );
     application.ProcessEvent( event1 );
@@ -257,8 +265,12 @@ int UtcDaliRadioButtonSelectedProperty(void)
     Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
     Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
 
-    const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 10.0f );
-    const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 10.0f );
+    Dali::Integration::Point pointDown;
+    pointDown.SetState( PointState::DOWN );
+    pointDown.SetScreenPosition( Vector2( 1.0f, 1.0f ) );
+
+    Dali::Integration::Point pointUp( pointDown );
+    pointUp.SetState( PointState::UP );
 
     event1.AddPoint( pointDown );
     application.ProcessEvent( event1 );
@@ -278,8 +290,12 @@ int UtcDaliRadioButtonSelectedProperty(void)
     Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
     Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
 
-    const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 50.0f );
-    const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 50.0f );
+    Dali::Integration::Point pointDown;
+    pointDown.SetState( PointState::DOWN );
+    pointDown.SetScreenPosition( Vector2( 1.0f, 41.0f ) );
+
+    Dali::Integration::Point pointUp( pointDown );
+    pointUp.SetState( PointState::UP );
 
     event1.AddPoint( pointDown );
     application.ProcessEvent( event1 );
@@ -299,8 +315,12 @@ int UtcDaliRadioButtonSelectedProperty(void)
     Dali::Integration::TouchEvent event1 = Dali::Integration::TouchEvent();
     Dali::Integration::TouchEvent event2 = Dali::Integration::TouchEvent();
 
-    const Dali::TouchPoint pointDown( 0, TouchPoint::Down, 10.0f, 500.0f );
-    const Dali::TouchPoint pointUp( 0, TouchPoint::Up, 10.0f, 500.0f );
+    Dali::Integration::Point pointDown;
+    pointDown.SetState( PointState::DOWN );
+    pointDown.SetScreenPosition( Vector2( 1.0f, 500.0f ) );
+
+    Dali::Integration::Point pointUp( pointDown );
+    pointUp.SetState( PointState::UP );
 
     event1.AddPoint( pointDown );
     application.ProcessEvent( event1 );
@@ -317,3 +337,55 @@ int UtcDaliRadioButtonSelectedProperty(void)
 
   END_TEST;
 }
+
+
+// Deprecated API Tests
+
+int UtcDaliRadioButtonLabelActor(void)
+{
+  ToolkitTestApplication application;
+
+  std::string labelText = "test actor 1";
+
+  RadioButton radioButton = RadioButton::New();
+
+  radioButton.SetProperty( Toolkit::Button::Property::LABEL,
+                          Property::Map().Add( Toolkit::Visual::Property::TYPE, Toolkit::DevelVisual::TEXT )
+                                         .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f )
+                        );
+
+  radioButton.SetLabelText( labelText );
+
+  DALI_TEST_EQUALS( radioButton.GetLabelText(), labelText, TEST_LOCATION );
+
+  std::string labelText2 = "test actor 2";
+  radioButton.SetLabelText( labelText2 );
+  DALI_TEST_EQUALS( radioButton.GetLabelText(), labelText2, TEST_LOCATION );
+
+  END_TEST;
+}
+
+int UtcDaliRadioButtonSelected(void)
+{
+  ToolkitTestApplication application;
+
+  RadioButton radioButton = RadioButton::New();
+
+  // Default selected
+  DALI_TEST_CHECK( radioButton.IsSelected() == false );
+
+  // False
+  radioButton.SetSelected( false );
+  DALI_TEST_CHECK( radioButton.IsSelected() == false );
+
+  // True
+  radioButton.SetSelected( true );
+  DALI_TEST_CHECK( radioButton.IsSelected() == true );
+
+  // False
+  radioButton.SetSelected( false );
+  DALI_TEST_CHECK( radioButton.IsSelected() == false );
+
+  END_TEST;
+}
+