[dali_1.4.11] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-Layouting.cpp
old mode 100644 (file)
new mode 100755 (executable)
index 46ba80b..835c845
@@ -38,15 +38,6 @@ using namespace Toolkit;
 namespace
 {
 
-void TestLayoutItemOrder( std::vector< Control >& controls, LayoutGroup& layoutGroup )
-{
-  for( auto&& iter : controls )
-  {
-    unsigned int siblingOrder = static_cast< unsigned int>( iter.GetProperty< int >( DevelActor::Property::SIBLING_ORDER ) );
-    DALI_TEST_EQUALS( layoutGroup.GetChildAt( siblingOrder ), DevelControl::GetLayout( iter ), TEST_LOCATION );
-  }
-}
-
 // Turns the given control into a Root layout control and adds it to the stage.
 void SetupRootLayoutControl( Control& rootControl )
 {
@@ -1750,7 +1741,7 @@ int UtcDaliLayouting_HboxLayout_TextLabel(void)
   application.Render();
 
   DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 0.0f, 368.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 54.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 52.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
 
   textLabel.SetProperty( TextLabel::Property::TEXT, "WWWW" );
 
@@ -1759,7 +1750,7 @@ int UtcDaliLayouting_HboxLayout_TextLabel(void)
   application.Render();
 
   DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 0.0f, 368.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 216.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 214.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
 
   textLabel.SetProperty( TextLabel::Property::POINT_SIZE, 10.0f );
 
@@ -2596,68 +2587,6 @@ int UtcDaliLayouting_VboxLayout_Padding(void)
 }
 
 
-int UtcDaliLayouting_RelayoutOnChildOrderChanged(void)
-{
-  ToolkitTestApplication application;
-  tet_infoline(" UtcDaliLayouting_RelayoutOnChildOrderChanged");
-  tet_infoline(" Test that if the sibling order changes, the container is re-laid out automatically");
-
-  Stage stage = Stage::GetCurrent();
-
-  auto hbox = Control::New();
-  auto hboxLayout = Test::CustomLayout::New();
-  DevelControl::SetLayout( hbox, hboxLayout );
-  hbox.SetName( "HBox");
-
-  std::vector< Control > controls;
-  controls.push_back( CreateLeafControl( 40, 40 ) );
-  controls.push_back( CreateLeafControl( 60, 40 ) );
-  controls.push_back( CreateLeafControl( 80, 40 ) );
-  controls.push_back( CreateLeafControl( 100, 40 ) );
-
-  for( auto&& iter : controls )
-  {
-    hbox.Add( iter );
-  }
-  hbox.SetParentOrigin( ParentOrigin::CENTER );
-  hbox.SetAnchorPoint( AnchorPoint::CENTER );
-  stage.Add( hbox );
-
-  // Ensure layouting happens
-  application.SendNotification();
-  application.Render();
-
-  // hbox centers elements vertically, it fills test harness stage, which is 480x800.
-  // hbox left justifies elements
-  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 0.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[1].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 40.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[2].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 100.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[3].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 180.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-
-  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 40.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[1].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 60.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[2].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 80.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[3].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 100.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-
-  controls[0].RaiseToTop(); // 0->3; 1, 2, 3, 0
-  controls[2].Lower();      // 2->1; 2, 1, 3, 0
-
-  application.SendNotification();
-  application.Render();
-
-  DALI_TEST_EQUALS( controls[2].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 0.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[1].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 80.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[3].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 140.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 240.0f, 380.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-
-  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 40.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[1].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 60.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[2].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 80.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[3].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 100.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-
-  END_TEST;
-}
-
 int UtcDaliLayouting_HboxLayout_TargetSize(void)
 {
   ToolkitTestApplication application;
@@ -2692,60 +2621,6 @@ int UtcDaliLayouting_HboxLayout_TargetSize(void)
   END_TEST;
 }
 
-int UtcDaliLayouting_RemoveLayout01(void)
-{
-  ToolkitTestApplication application;
-  tet_infoline(" UtcDaliLayouting_RemoveLayout");
-
-  Stage stage = Stage::GetCurrent();
-
-  auto rootControl = Control::New();
-  auto absoluteLayout = AbsoluteLayout::New();
-  DevelControl::SetLayout( rootControl, absoluteLayout );
-  rootControl.SetName( "AbsoluteLayout" );
-  stage.Add( rootControl );
-
-  auto hbox = Control::New();
-  auto hboxLayout = LinearLayout::New();
-  hboxLayout.SetOrientation( LinearLayout::Orientation::HORIZONTAL );
-  DevelControl::SetLayout( hbox, hboxLayout );
-  hbox.SetName( "HBox" );
-
-  std::vector< Control > controls;
-  controls.push_back( CreateLeafControl( 40, 40 ) );
-  controls.push_back( CreateLeafControl( 60, 40 ) );
-
-  for( auto&& iter : controls )
-  {
-    hbox.Add( iter );
-  }
-  hbox.SetParentOrigin( ParentOrigin::CENTER );
-  hbox.SetAnchorPoint( AnchorPoint::CENTER );
-  rootControl.Add( hbox );
-
-  tet_infoline("Layout as normal");
-  application.SendNotification();
-  application.Render();
-
-  tet_infoline("Set an empty layout on hbox container");
-  LinearLayout emptyLayout;
-  DevelControl::SetLayout( hbox, emptyLayout );
-
-  tet_infoline("Run another layout");
-  application.SendNotification();
-  application.Render();
-
-  tet_infoline("Check leaf controls haven't moved");
-
-  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 0.0f, 0.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[1].GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 40.0f, 0.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-
-  DALI_TEST_EQUALS( controls[0].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 40.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-  DALI_TEST_EQUALS( controls[1].GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 60.0f, 40.0f, 0.0f ), 0.0001f, TEST_LOCATION );
-
-  END_TEST;
-}
-
 int UtcDaliLayouting_LayoutChildren01(void)
 {
   ToolkitTestApplication application;
@@ -2765,41 +2640,6 @@ int UtcDaliLayouting_LayoutChildren01(void)
 
   DALI_TEST_EQUALS( absoluteLayout.GetChildCount(), 1, TEST_LOCATION );
 
-  tet_infoline("Test removal by setting empty layout to child container" );
-  DevelControl::SetLayout( hbox, LayoutItem{} );
-
-  DALI_TEST_EQUALS( absoluteLayout.GetChildCount(), 0, TEST_LOCATION );
-
-  auto& hboxImpl = GetImplementation( hboxLayout );
-  Handle empty;
-  DALI_TEST_EQUALS( hboxLayout.GetOwner(), empty, TEST_LOCATION );
-  DALI_TEST_EQUALS( (void*)hboxImpl.GetParent(), (void*)nullptr, TEST_LOCATION );
-
-  // For coverage
-  hboxImpl.SetLayoutRequested();
-
-  END_TEST;
-}
-
-int UtcDaliLayouting_LayoutChildren02(void)
-{
-  ToolkitTestApplication application;
-  tet_infoline(" UtcDaliLayouting_LayoutChildren02");
-
-  Stage stage = Stage::GetCurrent();
-
-  auto rootControl = Control::New();
-  auto absoluteLayout = AbsoluteLayout::New();
-  DevelControl::SetLayout( rootControl, absoluteLayout );
-  stage.Add( rootControl );
-
-  auto hbox = Control::New();
-  auto hboxLayout = LinearLayout::New();
-  DevelControl::SetLayout( hbox, hboxLayout );
-  rootControl.Add( hbox );
-
-  DALI_TEST_EQUALS( absoluteLayout.GetChildCount(), 1, TEST_LOCATION );
-
   tet_infoline("Test removal by removing child actor from parent container" );
   hbox.Unparent();
 
@@ -2815,7 +2655,7 @@ int UtcDaliLayouting_LayoutChildren02(void)
   END_TEST;
 }
 
-int UtcDaliLayouting_LayoutChildren03(void)
+int UtcDaliLayouting_LayoutChildren02(void)
 {
   ToolkitTestApplication application;
   tet_infoline(" UtcDaliLayouting_LayoutChildren02");
@@ -2852,7 +2692,7 @@ int UtcDaliLayouting_LayoutChildren03(void)
 }
 
 
-int UtcDaliLayouting_LayoutChildren04(void)
+int UtcDaliLayouting_LayoutChildren03(void)
 {
   ToolkitTestApplication application;
   tet_infoline(" UtcDaliLayouting_LayoutChildren03");
@@ -2884,7 +2724,7 @@ int UtcDaliLayouting_LayoutChildren04(void)
   END_TEST;
 }
 
-int UtcDaliLayouting_SetLayoutOrder01(void)
+int UtcDaliLayouting_SetLayoutOrder(void)
 {
   ToolkitTestApplication application;
   tet_infoline(" UtcDaliLayouting_SetLayoutOrder01 - Call SetLayout after adding the control to the root layout");
@@ -2925,93 +2765,6 @@ int UtcDaliLayouting_SetLayoutOrder01(void)
   END_TEST;
 }
 
-int UtcDaliLayouting_SetLayoutOrder02(void)
-{
-  ToolkitTestApplication application;
-  tet_infoline(" UtcDaliLayouting_SetLayoutOrder02 - Test the layout item order and the control order");
-
-  Stage stage = Stage::GetCurrent();
-
-  auto rootControl = Control::New();
-  auto absoluteLayout = AbsoluteLayout::New();
-  DevelControl::SetLayout( rootControl, absoluteLayout );
-  rootControl.SetName( "AbsoluteLayout" );
-  stage.Add( rootControl );
-
-  auto hbox = Control::New();
-  auto hboxLayout = LinearLayout::New();
-  hbox.SetName( "HBox");
-
-  rootControl.Add( hbox );
-
-  DevelControl::SetLayout( hbox, hboxLayout );
-
-  // Add child controls
-  std::vector< Control > controls;
-  controls.push_back( CreateLeafControl( 100, 100 ) );  // 0
-  controls.push_back( CreateLeafControl( 100, 100 ) );  // 1
-  controls.push_back( CreateLeafControl( 100, 100 ) );  // 2
-
-  for( auto&& iter : controls )
-  {
-    hbox.Add( iter );
-  }
-
-  // Ensure layouting happens
-  application.SendNotification();
-  application.Render();
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  tet_infoline("RaiseToTop");
-
-  controls[0].RaiseToTop(); // 1 2 0
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  tet_infoline("LowerToBottom");
-
-  controls[2].LowerToBottom();  // 2 1 0
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  tet_infoline("Remove / Add");
-
-  hbox.Remove( controls[2] );  // 1 0
-  hbox.Add( controls[2] );     // 1 0 2
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  tet_infoline("SetLayout");
-
-  auto vboxLayout = LinearLayout::New();
-  DevelControl::SetLayout( controls[0], vboxLayout );
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  tet_infoline("Raise");
-
-  controls[0].Raise();  // 1 2 0
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  tet_infoline("Lower");
-
-  controls[2].Lower();   // 2 1 0
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  tet_infoline("SetLayout again");
-
-  auto vboxLayout1 = LinearLayout::New();
-  DevelControl::SetLayout( controls[2], vboxLayout1 );
-
-  TestLayoutItemOrder( controls, hboxLayout );
-
-  DevelControl::SetLayout( controls[2], vboxLayout );
-
-  END_TEST;
-}
 
 int UtcDaliLayouting_LayoutGroup01(void)
 {
@@ -3051,7 +2804,7 @@ int UtcDaliLayouting_LayoutGroup01(void)
   application.Render();
 
   tet_infoline("Test text is it's natural size");
-  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 230.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 228.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
   tet_infoline("Test control is width of it's parent and height of it's child");
   DALI_TEST_EQUALS( control.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 600.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
 
@@ -3100,7 +2853,7 @@ int UtcDaliLayouting_LayoutGroup02(void)
   application.Render();
 
   tet_infoline("Test text is it's natural size");
-  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 230.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 228.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
   tet_infoline("Test text is centered in the control, the control is the size of the largest child");
   DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::POSITION ), Vector3( 0.0f, 0.0f, 0.0f ), 0.0001f, TEST_LOCATION );
 
@@ -3270,9 +3023,9 @@ int UtcDaliLayouting_LayoutGroupWithPadding01(void)
   application.Render();
 
   tet_infoline("Test text is it's natural size");
-  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 230.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 228.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
   tet_infoline("Test control is size of it's child and control it's own padding");
-  DALI_TEST_EQUALS( control.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 245.0f, 86.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( control.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 243.0f, 86.0f, 0.0f ), 0.0001f, TEST_LOCATION );
 
   END_TEST;
 }
@@ -3320,9 +3073,9 @@ int UtcDaliLayouting_LayoutGroupWithChildMargin01(void)
   application.Render();
 
   tet_infoline("Test text is it's natural size");
-  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 230.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( textLabel.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 228.0f, 64.0f, 0.0f ), 0.0001f, TEST_LOCATION );
   tet_infoline("Test control is width of it's parent and height of it's child");
-  DALI_TEST_EQUALS( control.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 255.0f, 91.0f, 0.0f ), 0.0001f, TEST_LOCATION );
+  DALI_TEST_EQUALS( control.GetProperty<Vector3>( Actor::Property::SIZE ), Vector3( 253.0f, 91.0f, 0.0f ), 0.0001f, TEST_LOCATION );
 
   END_TEST;
 }