2 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
20 #include <dali-toolkit-test-suite-utils.h>
21 #include <dali-toolkit/dali-toolkit.h>
23 #include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
24 #include <dali-toolkit/devel-api/visuals/text-visual-properties.h>
28 using namespace Toolkit;
33 static bool gCheckBoxButtonState = false;
34 bool CheckBoxButtonClicked( Button button )
36 gCheckBoxButtonState = button.IsSelected();
42 void checkbox_button_startup(void)
44 test_return_value = TET_UNDEF;
47 void checkbox_button_cleanup(void)
49 test_return_value = TET_PASS;
52 int UtcDaliCheckBoxButtonConstructorP(void)
54 TestApplication application;
56 CheckBoxButton checkBox;
58 DALI_TEST_CHECK( !checkBox );
62 int UtcDaliCheckBoxButtonCopyConstructorP(void)
64 TestApplication application;
66 // Initialize an object, ref count == 1
67 CheckBoxButton checkBox = CheckBoxButton::New();
69 CheckBoxButton copy( checkBox );
70 DALI_TEST_CHECK( copy );
74 int UtcDaliCheckBoxButtonAssignmentOperatorP(void)
76 TestApplication application;
78 CheckBoxButton checkBox = CheckBoxButton::New();
80 CheckBoxButton copy( checkBox );
81 DALI_TEST_CHECK( copy );
83 DALI_TEST_CHECK( checkBox == copy );
87 int UtcDaliCheckBoxButtonNewP(void)
89 TestApplication application;
91 CheckBoxButton checkBox = CheckBoxButton::New();
93 DALI_TEST_CHECK( checkBox );
97 int UtcDaliCheckBoxButtonDownCastP(void)
99 TestApplication application;
101 CheckBoxButton checkBox = CheckBoxButton::New();
103 BaseHandle object(checkBox);
105 CheckBoxButton checkBox2 = CheckBoxButton::DownCast( object );
106 DALI_TEST_CHECK(checkBox2);
108 CheckBoxButton checkBox3 = DownCast< CheckBoxButton >(object);
109 DALI_TEST_CHECK(checkBox3);
113 int UtcDaliCheckBoxButtonDownCastN(void)
115 TestApplication application;
117 BaseHandle unInitializedObject;
119 CheckBoxButton checkBox1 = CheckBoxButton::DownCast( unInitializedObject );
120 DALI_TEST_CHECK( !checkBox1 );
122 CheckBoxButton checkBox2 = DownCast< CheckBoxButton >( unInitializedObject );
123 DALI_TEST_CHECK( !checkBox2 );
127 int UtcDaliCheckBoxButtonSetGetSelected(void)
129 ToolkitTestApplication application;
130 tet_infoline(" UtcDaliCheckBoxButtonSetGetSelected");
132 CheckBoxButton checkBoxButton = CheckBoxButton::New();
133 checkBoxButton.StateChangedSignal().Connect( &CheckBoxButtonClicked );
135 // global var used to check if CheckBoxButtonClicked is called;
136 gCheckBoxButtonState = false;
138 checkBoxButton.SetSelected( true );
140 DALI_TEST_CHECK( checkBoxButton.IsSelected() );
141 DALI_TEST_CHECK( gCheckBoxButtonState );
143 checkBoxButton.SetSelected( false );
145 DALI_TEST_CHECK( !checkBoxButton.IsSelected() );
146 DALI_TEST_CHECK( !gCheckBoxButtonState );
148 checkBoxButton.SetSelected( true );
150 DALI_TEST_CHECK( checkBoxButton.IsSelected() );
151 DALI_TEST_CHECK( gCheckBoxButtonState );
155 int UtcDaliCheckBoxSetLabelP(void)
157 TestApplication application;
159 CheckBoxButton checkBox = CheckBoxButton::New();
161 Property::Map propertyMap;
163 propertyMap.Add( Toolkit::Visual::Property::TYPE, Toolkit::DevelVisual::TEXT )
164 .Add( Toolkit::TextVisual::Property::TEXT, "activate" )
165 .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f );
167 checkBox.SetProperty( checkBox.GetPropertyIndex("label"), propertyMap );
169 DALI_TEST_EQUALS( checkBox.GetLabelText(), "activate", TEST_LOCATION ); // Change to use GerProperty once that code is implemented
173 int UtcDaliCheckBoxSetLabelDisabledP(void)
175 TestApplication application;
177 CheckBoxButton checkBox = CheckBoxButton::New();
178 Stage::GetCurrent().Add( checkBox );
180 checkBox.SetSize( Vector2( 20.0f, 20.0f ) );
181 checkBox.SetDisabledBackgroundImage( "Image.jpg" );
183 application.SendNotification();
184 application.Render();
186 Property::Map propertyMap;
188 propertyMap.Add( Toolkit::Visual::Property::TYPE, Toolkit::DevelVisual::TEXT )
189 .Add( Toolkit::TextVisual::Property::TEXT, "activate" )
190 .Add( Toolkit::TextVisual::Property::POINT_SIZE, 15.0f );
192 checkBox.SetProperty(checkBox.GetPropertyIndex("disabled"), true);
193 checkBox.SetProperty( checkBox.GetPropertyIndex("label"), propertyMap );
195 DALI_TEST_CHECK( checkBox.GetProperty<bool>(checkBox.GetPropertyIndex("disabled")) );
196 DALI_TEST_EQUALS( checkBox.GetLabelText(), "activate", TEST_LOCATION ); // Change to use GetProperty once that code is implemented
201 int UtcDaliCheckBoxSettingDisabled(void)
203 ToolkitTestApplication application;
205 CheckBoxButton checkBox = CheckBoxButton::New();
207 checkBox.SetProperty(checkBox.GetPropertyIndex("disabled"), true);
208 DALI_TEST_CHECK( checkBox.GetProperty<bool>(checkBox.GetPropertyIndex("disabled")) );
210 checkBox.SetProperty(checkBox.GetPropertyIndex("disabled"), false);
212 DALI_TEST_CHECK( !checkBox.GetProperty<bool>(checkBox.GetPropertyIndex("disabled")) );