2 // Copyright (c) 2014 Samsung Electronics Co., Ltd.
4 // Licensed under the Flora License, Version 1.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://floralicense.org/license/
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.
19 #include <dali-toolkit-test-suite-utils.h>
20 #include <dali/dali.h>
21 #include <dali-toolkit/dali-toolkit.h>
25 using namespace Toolkit;
33 Vector3 AlbumLayoutItemSizeFunction(const Vector3& layoutSize)
35 float width = layoutSize.width * 0.2f;
36 return Vector3(width, width, width);
39 float AlbumLayoutAlbumRadiusFunction(const Vector3& layoutSize)
41 return layoutSize.width * 0.5f;
46 void album_layout_startup(void)
48 test_return_value = TET_UNDEF;
51 void album_layout_cleanup(void)
53 test_return_value = TET_PASS;
56 int UtcDaliAlbumLayoutNew(void)
58 ToolkitTestApplication application;
60 // Create a album layout
61 AlbumLayoutPtr albumLayout = AlbumLayout::New();
63 DALI_TEST_CHECK(albumLayout);
67 int UtcDaliAlbumSetAndGetItemSizeFunction(void)
69 ToolkitTestApplication application;
71 // Create a album layout
72 AlbumLayoutPtr albumLayout = AlbumLayout::New();
74 // Set the item size function
75 albumLayout->SetItemSizeFunction(AlbumLayoutItemSizeFunction);
77 // Check whether we get the correct item size function
78 DALI_TEST_CHECK(albumLayout->GetItemSizeFunction() == AlbumLayoutItemSizeFunction);
82 int UtcDaliAlbumSetAndGetScrollSpeedFactor(void)
84 ToolkitTestApplication application;
86 // Create a album layout
87 AlbumLayoutPtr albumLayout = AlbumLayout::New();
89 // Set the scroll speed factor
90 albumLayout->SetScrollSpeedFactor(0.05f);
92 // Check whether we get the correct scroll speed factor
93 DALI_TEST_EQUALS( albumLayout->GetScrollSpeedFactor(), 0.05f, TEST_LOCATION );
97 int UtcDaliAlbumSetAndGetMaximumSwipeSpeed(void)
99 ToolkitTestApplication application;
101 // Create a album layout
102 AlbumLayoutPtr albumLayout = AlbumLayout::New();
104 // Set the maximum swipe speed
105 albumLayout->SetMaximumSwipeSpeed(50.0f);
107 // Check whether we get the correct maximum swipe speed
108 DALI_TEST_EQUALS( albumLayout->GetMaximumSwipeSpeed(), 50.0f, TEST_LOCATION );
112 int UtcDaliAlbumLayoutSetAndGetItemFlickAnimationDuration(void)
114 ToolkitTestApplication application;
116 // Create a album layout
117 AlbumLayoutPtr albumLayout = AlbumLayout::New();
119 // Set the flick animaiton duration
120 albumLayout->SetItemFlickAnimationDuration(0.35f);
122 // Check whether we get the correct flick animaiton duration
123 DALI_TEST_EQUALS( albumLayout->GetItemFlickAnimationDuration(), 0.35f, TEST_LOCATION );
127 int UtcDaliAlbumSetNumOfItems(void)
129 AlbumLayoutPtr albumLayout = AlbumLayout::New();
131 albumLayout->SetNumOfItems(15);
133 DALI_TEST_CHECK(albumLayout->GetNumOfItems() == 15);
137 int UtcDaliAlbumSetStackNum(void)
139 AlbumLayoutPtr albumLayout = AlbumLayout::New();
141 albumLayout->SetStackNum(30);
143 DALI_TEST_CHECK(albumLayout->GetStackNum() == 30);
147 int UtcDaliAlbumSetPosition(void)
149 AlbumLayoutPtr albumLayout = AlbumLayout::New();
151 std::vector<Vector3> position_list;
154 Vector3 pos = Vector3(850.0f,-250.0f,0.0);
155 position_list.push_back(pos);
158 pos = Vector3(700.0f,50.0f,0.0);
159 position_list.push_back(pos);
162 pos = Vector3(440.0f,227.0f,0.0);
163 position_list.push_back(pos);
166 pos = Vector3(-440.0f,227.0f,0.0);
167 position_list.push_back(pos);
170 pos = Vector3(-700.0f,50.0f,0.0);
171 position_list.push_back(pos);
174 pos = Vector3(-850.0f,-250.0f,0.0);
175 position_list.push_back(pos);
177 albumLayout->SetPosition(position_list);
179 DALI_TEST_CHECK(albumLayout->GetPosition() == position_list);
183 int UtcDaliAlbumSetRotationX(void)
185 AlbumLayoutPtr albumLayout = AlbumLayout::New();
187 albumLayout->SetRotationX(Math::PI/4.0f);
189 DALI_TEST_CHECK(albumLayout->GetRotationX() == Math::PI/4.0f);
193 int UtcDaliAlbumSetRotationZ(void)
195 AlbumLayoutPtr albumLayout = AlbumLayout::New();
197 std::vector<float> rotation_list;
200 float rotate = Math::PI/6.0f;
201 rotation_list.push_back(rotate);
205 rotation_list.push_back(rotate);
208 rotate = Math::PI/6.0f;
209 rotation_list.push_back(rotate);
212 rotate = -Math::PI/6.0f;
213 rotation_list.push_back(rotate);
217 rotation_list.push_back(rotate);
220 rotate = -Math::PI/6.0f;
221 rotation_list.push_back(rotate);
223 albumLayout->SetRotationZ(rotation_list);
225 DALI_TEST_CHECK(albumLayout->GetRotationZ() == rotation_list);
229 int UtcDaliAlbumSetScale(void)
231 AlbumLayoutPtr albumLayout = AlbumLayout::New();
233 std::vector<float> scale_list;
237 scale_list.push_back(scale);
241 scale_list.push_back(scale);
244 scale = Math::PI/6.0f;
245 scale_list.push_back(scale);
248 scale = -Math::PI/6.0f;
249 scale_list.push_back(scale);
253 scale_list.push_back(scale);
256 scale = -Math::PI/6.0f;
257 scale_list.push_back(scale);
259 albumLayout->SetScale(scale_list);
261 DALI_TEST_CHECK(albumLayout->GetScale() == scale_list);
265 int UtcDaliAlbumSetColor(void)
267 // Create a album layout
268 AlbumLayoutPtr albumLayout = AlbumLayout::New();
270 std::vector<Vector2> color_list;
273 Vector2 color = Vector2(1.0f,1.0f);
274 color_list.push_back(color);
277 color = Vector2(1.0f,1.0f);
278 color_list.push_back(color);
281 color = Vector2(1.0f,1.0f);
282 color_list.push_back(color);
285 color = Vector2(1.0f,1.0f);
286 color_list.push_back(color);
289 color = Vector2(1.0f,1.0f);
290 color_list.push_back(color);
293 color = Vector2(1.0f,1.0f);
294 color_list.push_back(color);
296 albumLayout->SetColor(color_list);
298 DALI_TEST_CHECK(albumLayout->GetColor() == color_list);
302 int UtcDaliAlbumSetCenterPosition(void)
304 AlbumLayoutPtr albumLayout = AlbumLayout::New();
306 albumLayout->SetCenterPosition(Vector3( 0.0f,-80.0f,100.0f));
308 DALI_TEST_CHECK(albumLayout->GetCenterPosition() == Vector3( 0.0f,-80.0f,100.0f));
312 int UtcDaliAlbumSetSetCenterScale(void)
314 AlbumLayoutPtr albumLayout = AlbumLayout::New();
316 albumLayout->SetCenterScale(1.75f);
318 DALI_TEST_CHECK(albumLayout->GetCenterScale() == 1.75f);
322 int UtcDaliAlbumSetSetCenterColor(void)
324 AlbumLayoutPtr albumLayout = AlbumLayout::New();
326 albumLayout->SetCenterColor(Vector2(1.0f,1.0f));
328 DALI_TEST_CHECK(albumLayout->GetCenterColor() == Vector2(1.0f,1.0f));
332 int UtcDaliAlbumSetStackPosition(void)
334 AlbumLayoutPtr albumLayout = AlbumLayout::New();
336 albumLayout->SetStackPosition(Vector3(750.0f,-500.0f,0.0f),Vector3(-750.0f,-500.0f,0.0f));
338 DALI_TEST_CHECK(albumLayout->GetRightStackPosition() == Vector3(750.0f,-500.0f,0.0f) && albumLayout->GetLeftStackPosition() == Vector3(-750.0f,-500.0f,0.0f));
342 int UtcDaliAlbumSetSetStackScale(void)
344 AlbumLayoutPtr albumLayout = AlbumLayout::New();
346 albumLayout->SetStackScale(1.0f,1.0f);
348 DALI_TEST_CHECK(albumLayout->GetRightStackScale() == 1.0f && albumLayout->GetLeftStackScale() == 1.0f);
352 int UtcDaliAlbumSetStackColor(void)
354 AlbumLayoutPtr albumLayout = AlbumLayout::New();
356 albumLayout->SetStackColor(Vector2(1.0f,1.0f),Vector2(1.0f,1.0f));
358 DALI_TEST_CHECK(albumLayout->GetRightStackColor() == Vector2(1.0f,1.0f) && albumLayout->GetLeftStackColor() == Vector2(1.0f,1.0f));