/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 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.
#include <dali-toolkit/dali-toolkit.h>
#include <dali-toolkit/devel-api/controls/buttons/button-devel.h>
-#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
-#include <dali-toolkit/devel-api/visuals/text-visual-properties.h>
+
+#include <dali/devel-api/adaptor-framework/image-loading.h>
using namespace Dali;
using namespace Toolkit;
namespace
{
static const char* TEST_IMAGE_ONE = TEST_RESOURCE_DIR "/gallery-small-1.jpg";
+static const char* TEST_IMAGE_TWO = TEST_RESOURCE_DIR "/icon-delete.jpg";
static const Vector2 INSIDE_TOUCH_POINT_POSITON = Vector2( 240, 400 );
static const Vector3 BUTTON_POSITON_TO_GET_INSIDE_TOUCH_EVENTS = Vector3( 200, 360, 0 );
static bool gPushButtonSelectedState = false;
bool PushButtonSelected( Button button )
{
- gPushButtonSelectedState = button.IsSelected();
+ gPushButtonSelectedState = button.GetProperty<bool>(button.GetPropertyIndex("selected") );
return 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;
+}
+
} //namespace
int UtcDaliPushButtonConstructorP(void)
END_TEST;
}
-int UtcDaliPushButtonSetGetAutoRepeating(void)
+int UtcDaliPushButtonAutoRepeatingProperty(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetGetAutoRepeating");
PushButton pushButton = PushButton::New();
- pushButton.SetAutoRepeating( true );
-
- DALI_TEST_CHECK( pushButton.IsAutoRepeating() );
-
- pushButton.SetAutoRepeating( false );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("autoRepeating"), true );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("autoRepeating")), true, TEST_LOCATION );
- DALI_TEST_CHECK( !pushButton.IsAutoRepeating() );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("autoRepeating"), false );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("autoRepeating")), false, TEST_LOCATION );
- pushButton.SetAutoRepeating( true );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("autoRepeating"), true );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("autoRepeating")), true, TEST_LOCATION );
- DALI_TEST_CHECK( pushButton.IsAutoRepeating() );
- END_TEST;
+ END_TEST;
}
int UtcDaliPushButtonSetAutoRepeating(void)
END_TEST;
}
-int UtcDaliPushButtonSetGetTogglableButton(void)
+int UtcDaliPushButtonTogglableProperty(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetGetTogglableButton");
PushButton pushButton = PushButton::New();
- pushButton.SetTogglableButton( true );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("togglable"), true );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("togglable")), true, TEST_LOCATION );
- DALI_TEST_CHECK( pushButton.IsTogglableButton() );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("togglable"), false );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("togglable")), false, TEST_LOCATION );
- pushButton.SetTogglableButton( false );
-
- DALI_TEST_CHECK( !pushButton.IsTogglableButton() );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("togglable"), true );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("togglable")), true, TEST_LOCATION );
- pushButton.SetTogglableButton( true );
-
- DALI_TEST_CHECK( pushButton.IsTogglableButton() );
END_TEST;
}
-int UtcDaliPushButtonSetGetAutoRepeatingAndTogglableButton(void)
+int UtcDaliPushButtonAutoRepeatingPropertyAndTogglableButton(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetGetAutoRepeatingAndTogglableButton");
PushButton pushButton = PushButton::New();
- pushButton.SetAutoRepeating( true );
- pushButton.SetTogglableButton( true );
+ pushButton.SetProperty( Button::Property::AUTO_REPEATING, true );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("togglable"), true );
- DALI_TEST_CHECK( pushButton.IsTogglableButton() );
- DALI_TEST_CHECK( !pushButton.IsAutoRepeating() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("togglable")), true, TEST_LOCATION );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("autoRepeating")), false, TEST_LOCATION );
- pushButton.SetTogglableButton( true );
- pushButton.SetAutoRepeating( true );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("togglable"), true );
+ pushButton.SetProperty( Button::Property::AUTO_REPEATING, true );
- DALI_TEST_CHECK( pushButton.IsAutoRepeating() );
- DALI_TEST_CHECK( !pushButton.IsTogglableButton() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("autoRepeating")), true, TEST_LOCATION );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("togglable")), false, TEST_LOCATION );
END_TEST;
}
-int UtcDaliPushButtonSetGetSelected01(void)
+int UtcDaliPushButtonSelectedProperty01(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetGetSelected01");
PushButton pushButton = PushButton::New();
- pushButton.SetTogglableButton( true );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("togglable"), true );
+
pushButton.StateChangedSignal().Connect( &PushButtonSelected );
gPushButtonSelectedState = false;
- pushButton.SetSelected( true );
+ pushButton.SetProperty( Button::Property::SELECTED, true );
- DALI_TEST_CHECK( pushButton.IsSelected() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>( Button::Property::SELECTED ), true , TEST_LOCATION );
DALI_TEST_CHECK( gPushButtonSelectedState );
- pushButton.SetSelected( false );
+ pushButton.SetProperty( Button::Property::SELECTED, false );
- DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>( Button::Property::SELECTED ), false , TEST_LOCATION );
DALI_TEST_CHECK( !gPushButtonSelectedState );
- pushButton.SetSelected( true );
+ pushButton.SetProperty( Button::Property::SELECTED, true );
- DALI_TEST_CHECK( pushButton.IsSelected() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>( Button::Property::SELECTED ), true , TEST_LOCATION );
DALI_TEST_CHECK( gPushButtonSelectedState );
END_TEST;
}
-int UtcDaliPushButtonSetGetSelected02(void)
+int UtcDaliPushButtonSelectedProperty02(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetGetSelected02");
PushButton pushButton = PushButton::New();
- pushButton.SetTogglableButton( false );
+ pushButton.SetProperty( pushButton.GetPropertyIndex("togglable"), false );
pushButton.StateChangedSignal().Connect( &PushButtonSelected );
gPushButtonSelectedState = false;
- pushButton.SetSelected( true );
+ pushButton.SetProperty( Button::Property::SELECTED, true );
- DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>( Button::Property::SELECTED ), false , TEST_LOCATION );
DALI_TEST_CHECK( !gPushButtonSelectedState );
- pushButton.SetSelected( false );
+ pushButton.SetProperty( Button::Property::SELECTED, false );
- DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>( Button::Property::SELECTED ), false , TEST_LOCATION );
DALI_TEST_CHECK( !gPushButtonSelectedState );
- pushButton.SetSelected( true );
+ pushButton.SetProperty( Button::Property::SELECTED, true );
- DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>( Button::Property::SELECTED ), false , TEST_LOCATION );
DALI_TEST_CHECK( !gPushButtonSelectedState );
END_TEST;
}
-int UtcDaliPushButtonSetGetAutorepeatingDelayValues01(void)
+int UtcDaliPushButtonAutorepeatingDelayPropertyValues01(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetGetAutorepeatingDelayValues01");
PushButton pushButton = PushButton::New();
- pushButton.SetAutoRepeating( true );
+ pushButton.SetProperty( Button::Property::AUTO_REPEATING, true );
- pushButton.SetInitialAutoRepeatingDelay( 1.f );
- DALI_TEST_EQUALS( pushButton.GetInitialAutoRepeatingDelay(), 1.f, TEST_LOCATION );
+ pushButton.SetProperty( Button::Property::INITIAL_AUTO_REPEATING_DELAY, 1.f );
+
+ DALI_TEST_EQUALS( pushButton.GetProperty<float>(pushButton.GetPropertyIndex("initialAutoRepeatingDelay") ), 1.f, TEST_LOCATION );
- pushButton.SetNextAutoRepeatingDelay( 1.f );
- DALI_TEST_EQUALS( pushButton.GetNextAutoRepeatingDelay(), 1.f, TEST_LOCATION );
END_TEST;
}
-int UtcDaliPushButtonSetGetAutorepeatingDelayValues02(void)
+int UtcDaliPushButtonAutorepeatingDelayPropertyValues02(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetGetAutorepeatingDelayValues02");
bool assert1( false );
bool assert2( false );
- pushButton.SetAutoRepeating( true );
+ pushButton.SetProperty( Button::Property::AUTO_REPEATING, true );
try
{
- pushButton.SetInitialAutoRepeatingDelay( -1.f );
+ pushButton.SetProperty( Button::Property::INITIAL_AUTO_REPEATING_DELAY, -1.f );
}
catch( Dali::DaliException& e )
{
try
{
- pushButton.SetNextAutoRepeatingDelay( -1.f );
+ pushButton.SetProperty( Button::Property::NEXT_AUTO_REPEATING_DELAY, -1.f );
}
catch( Dali::DaliException& e )
{
END_TEST;
}
-int UtcDaliPushButtonSetLabelText(void)
+int UtcDaliPushButtonLabelProperty(void)
{
ToolkitTestApplication application;
tet_infoline(" UtcDaliPushButtonSetLabelText");
PushButton pushButton = PushButton::New();
- pushButton.SetProperty( Toolkit::Button::Property::LABEL,
- Property::Map().Add( Toolkit::Visual::Property::TYPE, Toolkit::DevelVisual::TEXT )
- .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f )
- );
-
application.SendNotification();
application.Render();
- pushButton.SetLabelText( STR );
+ pushButton.SetProperty( Toolkit::Button::Property::LABEL,
+ Property::Map().Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT )
+ .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f )
+ );
- DALI_TEST_EQUALS( pushButton.GetLabelText(), STR, TEST_LOCATION );
+
+ pushButton.SetProperty( Toolkit::Button::Property::LABEL, STR );
+
+ DALI_TEST_EQUALS( GetButtonText( pushButton ), STR, TEST_LOCATION );
END_TEST;
}
DALI_TEST_CHECK( !gPushButtonSelectedState );
// Set togglable property.
- pushButton.SetTogglableButton( true );
+ pushButton.SetProperty( Button::Property::TOGGLABLE, true );
// Test2. Touch point down and up inside the button twice.
gPushButtonSelectedState = false;
// Test5. Touch point down outside and up inside the button.
// Start in unselected state
pushButton.SetProperty( Button::Property::SELECTED, false );
- DALI_TEST_CHECK( !pushButton.IsSelected());
+
+ DALI_TEST_EQUALS( pushButton.GetProperty<bool>(pushButton.GetPropertyIndex("selected") ),false , TEST_LOCATION );
gPushButtonSelectedState = false;
event = Dali::Integration::TouchEvent();
PushButton pushButton = PushButton::New();
const Vector4 TEST_ICON_PADDING( 20.0f, 20.0f, 20.0f, 20.0f );
- const Vector4 TEST_LABEL_PADDING( 10.0f, 10.0f, 10.0f ,10.0f );
- const Vector2 TEST_IMAGE_SIZE = Vector2( 5.0f, 5.0f);
+ const Vector4 TEST_LABEL_PADDING( 10.0f, 10.0f, 10.0f, 10.0f );
+
+ // Get actual size of test image
+ ImageDimensions testImageSize = Dali::GetClosestImageSize( TEST_IMAGE_ONE );
+ const Vector2 TEST_IMAGE_SIZE( testImageSize.GetWidth(), testImageSize.GetHeight() );
pushButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
pushButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
DALI_TEST_EQUALS( size, Vector2::ZERO, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
// Check label only padding
- pushButton.SetLabelText( "Label" );
+ pushButton.SetProperty( Toolkit::Button::Property::LABEL, "Label" );
application.SendNotification();
application.Render();
Stage::GetCurrent().Add( pushButton );
- TestPlatformAbstraction& platform = application.GetPlatform();
- platform.SetClosestImageSize( TEST_IMAGE_SIZE );
pushButton.SetProperty( Toolkit::PushButton::Property::ICON_ALIGNMENT, "RIGHT" );
pushButton.SetProperty( Toolkit::PushButton::Property::UNSELECTED_ICON, TEST_IMAGE_ONE );
size.width = pushButton.GetRelayoutSize( Dimension::WIDTH );
size.height = pushButton.GetRelayoutSize( Dimension::HEIGHT );
tet_printf( "Button RelayoutSize after icon padding(%f,%f)\n", size.width, size.height );
- const Vector2 expectedIconAndPaddingSize( TEST_ICON_PADDING.x+TEST_ICON_PADDING.y+TEST_IMAGE_SIZE.width, TEST_ICON_PADDING.w+TEST_ICON_PADDING.z +TEST_IMAGE_SIZE.height );
+ const Vector2 expectedIconAndPaddingSize( TEST_ICON_PADDING.x+TEST_ICON_PADDING.y+TEST_IMAGE_SIZE.width, TEST_ICON_PADDING.w + TEST_ICON_PADDING.z + TEST_IMAGE_SIZE.height );
DALI_TEST_EQUALS( size, expectedIconAndPaddingSize, Math::MACHINE_EPSILON_1000, TEST_LOCATION );
// Now test padding for both label and icon simultaneously.
- pushButton.SetLabelText( "Label" );
+ pushButton.SetProperty( Toolkit::Button::Property::LABEL, "Label" );
+
application.SendNotification();
application.Render();
tet_printf( "Button RelayoutSize after icon and label padding(%f,%f)\n", size.width, size.height );
DALI_TEST_EQUALS( size.width, sizeLabelAndPadding.width + expectedIconAndPaddingSize.width, TEST_LOCATION );
- DALI_TEST_GREATER( size.height, expectedIconAndPaddingSize.width, TEST_LOCATION ); // Test height of control is greater than icon and padding. As Text set to larger values.
+ // Test height of control is same as icon and padding, as Text is smaller than icon
+ DALI_TEST_EQUALS( size.height, expectedIconAndPaddingSize.height, TEST_LOCATION );
END_TEST;
}
const Vector4 TEST_ICON_PADDING( 70.0f, 70.0f, 70.0f, 70.0f );
const Vector4 TEST_LABEL_PADDING( 30.0f, 30.0f, 30.0f, 30.0f );
- const Vector2 TEST_IMAGE_SIZE = Vector2( 10.0f, 10.0f);
+
+ // Get actual size of test image
+ ImageDimensions testImageSize = Dali::GetClosestImageSize( TEST_IMAGE_ONE );
+ const Vector2 TEST_IMAGE_SIZE( testImageSize.GetWidth(), testImageSize.GetHeight() );
PushButton pushButton = PushButton::New();
Stage::GetCurrent().Add( pushButton );
// Add a label and get size of control
- pushButton.SetLabelText( "Label" );
+ pushButton.SetProperty( Toolkit::Button::Property::LABEL, "Label" );
application.SendNotification();
application.Render();
const Vector2 testImageWithPaddingSize = Vector2 ( ( TEST_IMAGE_SIZE.width + TEST_ICON_PADDING.x + TEST_ICON_PADDING.y ),
( TEST_IMAGE_SIZE.height + TEST_ICON_PADDING.w + TEST_ICON_PADDING.z ) );
- TestPlatformAbstraction& platform = application.GetPlatform();
- platform.SetClosestImageSize( TEST_IMAGE_SIZE );
-
// Add Icon and set its alignment
pushButton.SetProperty( Toolkit::PushButton::Property::ICON_ALIGNMENT, "RIGHT" );
pushButton.SetProperty( Toolkit::PushButton::Property::UNSELECTED_ICON, TEST_IMAGE_ONE );
END_TEST;
}
+
+// Deprecated API Tests
+
+int UtcDaliPushButtonSetGetAutoRepeating(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetGetAutoRepeating");
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetAutoRepeating( true );
+
+ DALI_TEST_CHECK( pushButton.IsAutoRepeating() );
+
+ pushButton.SetAutoRepeating( false );
+
+ DALI_TEST_CHECK( !pushButton.IsAutoRepeating() );
+
+ pushButton.SetAutoRepeating( true );
+
+ DALI_TEST_CHECK( pushButton.IsAutoRepeating() );
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetGetTogglableButton(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetGetTogglableButton");
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetTogglableButton( true );
+
+ DALI_TEST_CHECK( pushButton.IsTogglableButton() );
+
+ pushButton.SetTogglableButton( false );
+
+ DALI_TEST_CHECK( !pushButton.IsTogglableButton() );
+
+ pushButton.SetTogglableButton( true );
+
+ DALI_TEST_CHECK( pushButton.IsTogglableButton() );
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetGetAutoRepeatingAndTogglableButton(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetGetAutoRepeatingAndTogglableButton");
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetAutoRepeating( true );
+ pushButton.SetTogglableButton( true );
+
+ DALI_TEST_CHECK( pushButton.IsTogglableButton() );
+ DALI_TEST_CHECK( !pushButton.IsAutoRepeating() );
+
+ pushButton.SetTogglableButton( true );
+ pushButton.SetAutoRepeating( true );
+
+ DALI_TEST_CHECK( pushButton.IsAutoRepeating() );
+ DALI_TEST_CHECK( !pushButton.IsTogglableButton() );
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetGetSelected01(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetGetSelected01");
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetTogglableButton( true );
+ pushButton.StateChangedSignal().Connect( &PushButtonSelected );
+
+ gPushButtonSelectedState = false;
+ pushButton.SetSelected( true );
+
+ DALI_TEST_CHECK( pushButton.IsSelected() );
+ DALI_TEST_CHECK( gPushButtonSelectedState );
+
+ pushButton.SetSelected( false );
+
+ DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_CHECK( !gPushButtonSelectedState );
+
+ pushButton.SetSelected( true );
+
+ DALI_TEST_CHECK( pushButton.IsSelected() );
+ DALI_TEST_CHECK( gPushButtonSelectedState );
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetGetSelected02(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetGetSelected02");
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetTogglableButton( false );
+ pushButton.StateChangedSignal().Connect( &PushButtonSelected );
+
+ gPushButtonSelectedState = false;
+ pushButton.SetSelected( true );
+
+ DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_CHECK( !gPushButtonSelectedState );
+
+ pushButton.SetSelected( false );
+
+ DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_CHECK( !gPushButtonSelectedState );
+
+ pushButton.SetSelected( true );
+
+ DALI_TEST_CHECK( !pushButton.IsSelected() );
+ DALI_TEST_CHECK( !gPushButtonSelectedState );
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetGetAutorepeatingDelayValues01(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetGetAutorepeatingDelayValues01");
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetAutoRepeating( true );
+
+ pushButton.SetInitialAutoRepeatingDelay( 1.f );
+ DALI_TEST_EQUALS( pushButton.GetInitialAutoRepeatingDelay(), 1.f, TEST_LOCATION );
+
+ pushButton.SetNextAutoRepeatingDelay( 1.f );
+ DALI_TEST_EQUALS( pushButton.GetNextAutoRepeatingDelay(), 1.f, TEST_LOCATION );
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetGetAutorepeatingDelayValues02(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetGetAutorepeatingDelayValues02");
+
+ PushButton pushButton = PushButton::New();
+
+ bool assert1( false );
+ bool assert2( false );
+
+ pushButton.SetAutoRepeating( true );
+
+ try
+ {
+ pushButton.SetInitialAutoRepeatingDelay( -1.f );
+ }
+ catch( Dali::DaliException& e )
+ {
+ DALI_TEST_PRINT_ASSERT( e );
+ DALI_TEST_EQUALS(e.condition, "initialAutoRepeatingDelay > 0.f", TEST_LOCATION);
+ assert1 = true;
+ }
+
+ try
+ {
+ pushButton.SetNextAutoRepeatingDelay( -1.f );
+ }
+ catch( Dali::DaliException& e )
+ {
+ DALI_TEST_PRINT_ASSERT( e );
+ DALI_TEST_EQUALS(e.condition, "nextAutoRepeatingDelay > 0.f", TEST_LOCATION);
+ assert2 = true;
+ }
+
+ DALI_TEST_CHECK( assert1 && assert2 );
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetLabelText(void)
+{
+ ToolkitTestApplication application;
+ tet_infoline(" UtcDaliPushButtonSetLabelText");
+
+ const std::string STR( "Hola!" );
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetProperty( Toolkit::Button::Property::LABEL,
+ Property::Map().Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT )
+ .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f )
+ );
+
+ application.SendNotification();
+ application.Render();
+
+ pushButton.SetLabelText( STR );
+
+ DALI_TEST_EQUALS( pushButton.GetLabelText(), STR, TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetButtonImageDeprecatedP(void)
+{
+ ToolkitTestApplication application;
+ Image setButtonImage = ResourceImage::New( TEST_IMAGE_ONE);
+ PushButton pushButton = PushButton::New();
+ pushButton.SetButtonImage( setButtonImage );
+ Image retreivedButtonImage = ImageView::DownCast(pushButton.GetButtonImage()).GetImage();
+ DALI_TEST_EQUALS( retreivedButtonImage, setButtonImage , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetSelectedImageDeprecatedP(void)
+{
+ ToolkitTestApplication application;
+ Image setButtonImage = ResourceImage::New( TEST_IMAGE_ONE);
+ PushButton pushButton = PushButton::New();
+ pushButton.SetSelectedImage( setButtonImage );
+ Image retreivedButtonImage = ImageView::DownCast(pushButton.GetSelectedImage()).GetImage();
+ DALI_TEST_EQUALS( retreivedButtonImage, setButtonImage , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonGetButtonImageURLDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButtonGetButtonImageURLDeprecatedP Testing mix use of API");
+
+ ToolkitTestApplication application;
+
+ PushButton pushButton = PushButton::New();
+ pushButton.SetProperty( Toolkit::DevelButton::Property::UNSELECTED_BACKGROUND_VISUAL, TEST_IMAGE_ONE );
+
+ ImageView retreivedButtonImageView = ImageView::DownCast(pushButton.GetButtonImage());
+ Image retreivedButtonImage = retreivedButtonImageView.GetImage();
+ ResourceImage resourceImage = ResourceImage::DownCast( retreivedButtonImage );
+
+ DALI_TEST_EQUALS( resourceImage.GetUrl(), TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonGetSelectedImageURLDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButtonGetSelectedImageURLDeprecatedP Testing mix use of API");
+
+ ToolkitTestApplication application;
+
+ PushButton pushButton = PushButton::New();
+
+ pushButton.SetProperty( Toolkit::DevelButton::Property::SELECTED_BACKGROUND_VISUAL, TEST_IMAGE_ONE );
+
+ Image retreivedButtonImage = ImageView::DownCast(pushButton.GetSelectedImage()).GetImage();
+ ResourceImage resourceImage = ResourceImage::DownCast( retreivedButtonImage );
+ DALI_TEST_EQUALS( resourceImage.GetUrl(), TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetSelectedImageWithActorDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButton SetSelectedImage With ImageView (Actor)");
+
+ ToolkitTestApplication application;
+
+ Image image = ResourceImage::New( TEST_IMAGE_ONE );
+
+ DALI_TEST_CHECK( image );
+
+ ImageView imgViewSet = ImageView::New(image);
+
+ DALI_TEST_CHECK(imgViewSet );
+
+ PushButton pushButton = PushButton::New();
+
+ DALI_TEST_CHECK( pushButton );
+
+ pushButton.SetSelectedImage( imgViewSet );
+
+ ImageView imageView = ImageView::DownCast( pushButton.GetSelectedImage());
+
+ DALI_TEST_CHECK( imageView );
+
+ Property::Value value = imageView.GetProperty( imageView.GetPropertyIndex( "image" ) );
+ Property::Map map;
+ value.Get( map );
+ DALI_TEST_CHECK( !map.Empty() );
+ DALI_TEST_EQUALS( map[ "filename" ].Get<std::string>(), TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetButtonImageWithActorDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButton SetButtonImage With ImageView (Actor)");
+
+ ToolkitTestApplication application;
+
+ Image image = ResourceImage::New( TEST_IMAGE_ONE );
+
+ DALI_TEST_CHECK( image );
+
+ ImageView imgViewSet = ImageView::New(image);
+
+ DALI_TEST_CHECK(imgViewSet );
+
+ PushButton pushButton = PushButton::New();
+
+ DALI_TEST_CHECK( pushButton );
+
+ pushButton.SetButtonImage( imgViewSet );
+
+ ImageView imageView = ImageView::DownCast( pushButton.GetButtonImage());
+
+ DALI_TEST_CHECK( imageView );
+
+ Property::Value value = imageView.GetProperty( imageView.GetPropertyIndex( "image" ) );
+ Property::Map map;
+ value.Get( map );
+ DALI_TEST_CHECK( !map.Empty() );
+ DALI_TEST_EQUALS( map[ "filename" ].Get<std::string>(), TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetBackgroundImageWithActorDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButton SetBackgroundImage With ImageView (Actor)");
+
+ ToolkitTestApplication application;
+
+ Image image = ResourceImage::New( TEST_IMAGE_ONE );
+
+ DALI_TEST_CHECK( image );
+
+ ImageView imgViewSet = ImageView::New(image);
+
+ DALI_TEST_CHECK(imgViewSet );
+
+ PushButton pushButton = PushButton::New();
+
+ DALI_TEST_CHECK( pushButton );
+
+ pushButton.SetBackgroundImage( imgViewSet );
+
+ ImageView imageView = ImageView::DownCast( pushButton.GetButtonImage());
+
+ DALI_TEST_CHECK( imageView );
+
+ Property::Value value = imageView.GetProperty( imageView.GetPropertyIndex( "image" ) );
+ Property::Map map;
+ value.Get( map );
+ DALI_TEST_CHECK( !map.Empty() );
+ DALI_TEST_EQUALS( map[ "filename" ].Get<std::string>(), TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+
+int UtcDaliPushButtonSetSelectedBackgroundImageWithActorDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButton SetSelectedBackgroundImage With ImageView (Actor)");
+
+ ToolkitTestApplication application;
+
+ Image image = ResourceImage::New( TEST_IMAGE_ONE );
+
+ DALI_TEST_CHECK( image );
+
+ ImageView imgViewSet = ImageView::New(image);
+
+ DALI_TEST_CHECK(imgViewSet );
+
+ PushButton pushButton = PushButton::New();
+
+ DALI_TEST_CHECK( pushButton );
+
+ pushButton.SetSelectedBackgroundImage( imgViewSet );
+
+ ImageView imageView = ImageView::DownCast( pushButton.GetSelectedImage());
+
+ DALI_TEST_CHECK( imageView );
+
+ Property::Value value = imageView.GetProperty( imageView.GetPropertyIndex( "image" ) );
+ Property::Map map;
+ value.Get( map );
+ DALI_TEST_CHECK( !map.Empty() );
+ DALI_TEST_EQUALS( map[ "filename" ].Get<std::string>(), TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetDisabledBackgroundImageWithActorDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButton SetDisabledBackgroundImage With ImageView (Actor)");
+
+ ToolkitTestApplication application;
+
+ Image image = ResourceImage::New( TEST_IMAGE_ONE );
+
+ DALI_TEST_CHECK( image );
+
+ ImageView imgViewSet = ImageView::New(image);
+
+ DALI_TEST_CHECK(imgViewSet );
+
+ PushButton pushButton = PushButton::New();
+
+ DALI_TEST_CHECK( pushButton );
+
+ pushButton.SetDisabledBackgroundImage( imgViewSet );
+
+ Property::Value value = pushButton.GetProperty( Toolkit::DevelButton::Property::DISABLED_UNSELECTED_BACKGROUND_VISUAL );
+ Property::Map map;
+ value.Get( map );
+
+ Property::Value* urlValue = map.Find( ImageVisual::Property::URL );
+
+ std::string urlString;
+ urlValue->Get( urlString );
+ DALI_TEST_EQUALS( urlString , TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetDisabledImageWithActorDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButton SetDisabledImage With ImageView (Actor)");
+
+ ToolkitTestApplication application;
+
+ Image image = ResourceImage::New( TEST_IMAGE_ONE );
+
+ DALI_TEST_CHECK( image );
+
+ ImageView imgViewSet = ImageView::New(image);
+
+ DALI_TEST_CHECK(imgViewSet );
+
+ PushButton pushButton = PushButton::New();
+
+ DALI_TEST_CHECK( pushButton );
+
+ pushButton.SetDisabledImage( imgViewSet );
+
+ Property::Value value = pushButton.GetProperty( Toolkit::DevelButton::Property::DISABLED_UNSELECTED_BACKGROUND_VISUAL );
+
+ Property::Map map;
+ value.Get( map );
+
+ Property::Value* urlValue = map.Find( ImageVisual::Property::URL );
+
+ std::string urlString;
+ urlValue->Get( urlString );
+ DALI_TEST_EQUALS( urlString , TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonSetDisabledSelectedImageWithActorDeprecatedP(void)
+{
+ tet_infoline(" UtcDaliPushButton SetDisabledSelectedImage With ImageView (Actor)");
+
+ ToolkitTestApplication application;
+
+ Image image = ResourceImage::New( TEST_IMAGE_ONE );
+
+ DALI_TEST_CHECK( image );
+
+ ImageView imgViewSet = ImageView::New(image);
+
+ DALI_TEST_CHECK(imgViewSet );
+
+ PushButton pushButton = PushButton::New();
+
+ DALI_TEST_CHECK( pushButton );
+
+ pushButton.SetDisabledSelectedImage( imgViewSet );
+
+ Property::Value value = pushButton.GetProperty( Toolkit::DevelButton::Property::DISABLED_SELECTED_BACKGROUND_VISUAL );
+
+ Property::Map map;
+ value.Get( map );
+
+ Property::Value* urlValue = map.Find( ImageVisual::Property::URL );
+
+ std::string urlString;
+ urlValue->Get( urlString );
+ DALI_TEST_EQUALS( urlString , TEST_IMAGE_ONE , TEST_LOCATION );
+
+ END_TEST;
+}
+
+int UtcDaliPushButtonReplaceButtonImageP2(void)
+{
+ tet_infoline("Set button image then replace with new image and query url");
+
+ ToolkitTestApplication application;
+
+ ResourceImage setImage = ResourceImage::New( TEST_IMAGE_ONE );
+ DALI_TEST_CHECK(setImage);
+
+ Actor imgActorSet = ImageView::New(setImage);
+ DALI_TEST_CHECK(imgActorSet);
+
+ PushButton pushButton = PushButton::New();
+ pushButton.SetProperty( Toolkit::DevelButton::Property::UNSELECTED_BACKGROUND_VISUAL, TEST_IMAGE_TWO );
+
+
+ Stage::GetCurrent().Add( pushButton );
+
+ pushButton.SetButtonImage( imgActorSet );
+ application.SendNotification();
+ application.Render();
+
+ tet_infoline("Get button image before it has been able to load");
+
+ ImageView imageView = ImageView::DownCast(pushButton.GetButtonImage());
+
+ ResourceImage getImage = ResourceImage::DownCast( imageView.GetImage() );
+
+ tet_infoline("Check if url matches last assignment even if not loaded yet");
+ DALI_TEST_EQUALS( getImage.GetUrl(), setImage.GetUrl() , TEST_LOCATION );
+
+ END_TEST;
+}