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/dali.h>
22 #include <dali-toolkit/dali-toolkit.h>
26 using namespace Toolkit;
34 Vector3 AlbumLayoutItemSizeFunction(const Vector3& layoutSize)
36 float width = layoutSize.width * 0.2f;
37 return Vector3(width, width, width);
40 float AlbumLayoutAlbumRadiusFunction(const Vector3& layoutSize)
42 return layoutSize.width * 0.5f;
47 void album_layout_startup(void)
49 test_return_value = TET_UNDEF;
52 void album_layout_cleanup(void)
54 test_return_value = TET_PASS;
57 int UtcDaliAlbumLayoutNew(void)
59 ToolkitTestApplication application;
61 // Create a album layout
62 AlbumLayoutPtr albumLayout = AlbumLayout::New();
64 DALI_TEST_CHECK(albumLayout);
68 int UtcDaliAlbumSetAndGetItemSizeFunction(void)
70 ToolkitTestApplication application;
72 // Create a album layout
73 AlbumLayoutPtr albumLayout = AlbumLayout::New();
75 // Set the item size function
76 albumLayout->SetItemSizeFunction(AlbumLayoutItemSizeFunction);
78 // Check whether we get the correct item size function
79 DALI_TEST_CHECK(albumLayout->GetItemSizeFunction() == AlbumLayoutItemSizeFunction);
83 int UtcDaliAlbumSetAndGetScrollSpeedFactor(void)
85 ToolkitTestApplication application;
87 // Create a album layout
88 AlbumLayoutPtr albumLayout = AlbumLayout::New();
90 // Set the scroll speed factor
91 albumLayout->SetScrollSpeedFactor(0.05f);
93 // Check whether we get the correct scroll speed factor
94 DALI_TEST_EQUALS( albumLayout->GetScrollSpeedFactor(), 0.05f, TEST_LOCATION );
98 int UtcDaliAlbumSetAndGetMaximumSwipeSpeed(void)
100 ToolkitTestApplication application;
102 // Create a album layout
103 AlbumLayoutPtr albumLayout = AlbumLayout::New();
105 // Set the maximum swipe speed
106 albumLayout->SetMaximumSwipeSpeed(50.0f);
108 // Check whether we get the correct maximum swipe speed
109 DALI_TEST_EQUALS( albumLayout->GetMaximumSwipeSpeed(), 50.0f, TEST_LOCATION );
113 int UtcDaliAlbumLayoutSetAndGetItemFlickAnimationDuration(void)
115 ToolkitTestApplication application;
117 // Create a album layout
118 AlbumLayoutPtr albumLayout = AlbumLayout::New();
120 // Set the flick animaiton duration
121 albumLayout->SetItemFlickAnimationDuration(0.35f);
123 // Check whether we get the correct flick animaiton duration
124 DALI_TEST_EQUALS( albumLayout->GetItemFlickAnimationDuration(), 0.35f, TEST_LOCATION );
128 int UtcDaliAlbumSetNumOfItems(void)
130 AlbumLayoutPtr albumLayout = AlbumLayout::New();
132 albumLayout->SetNumOfItems(15);
134 DALI_TEST_CHECK(albumLayout->GetNumOfItems() == 15);
138 int UtcDaliAlbumSetStackNum(void)
140 AlbumLayoutPtr albumLayout = AlbumLayout::New();
142 albumLayout->SetStackNum(30);
144 DALI_TEST_CHECK(albumLayout->GetStackNum() == 30);
148 int UtcDaliAlbumSetPosition(void)
150 AlbumLayoutPtr albumLayout = AlbumLayout::New();
152 std::vector<Vector3> position_list;
155 Vector3 pos = Vector3(850.0f,-250.0f,0.0);
156 position_list.push_back(pos);
159 pos = Vector3(700.0f,50.0f,0.0);
160 position_list.push_back(pos);
163 pos = Vector3(440.0f,227.0f,0.0);
164 position_list.push_back(pos);
167 pos = Vector3(-440.0f,227.0f,0.0);
168 position_list.push_back(pos);
171 pos = Vector3(-700.0f,50.0f,0.0);
172 position_list.push_back(pos);
175 pos = Vector3(-850.0f,-250.0f,0.0);
176 position_list.push_back(pos);
178 albumLayout->SetPosition(position_list);
180 DALI_TEST_CHECK(albumLayout->GetPosition() == position_list);
184 int UtcDaliAlbumSetRotationX(void)
186 AlbumLayoutPtr albumLayout = AlbumLayout::New();
188 albumLayout->SetRotationX(Math::PI/4.0f);
190 DALI_TEST_CHECK(albumLayout->GetRotationX() == Math::PI/4.0f);
194 int UtcDaliAlbumSetRotationZ(void)
196 AlbumLayoutPtr albumLayout = AlbumLayout::New();
198 std::vector<float> rotation_list;
201 float rotate = Math::PI/6.0f;
202 rotation_list.push_back(rotate);
206 rotation_list.push_back(rotate);
209 rotate = Math::PI/6.0f;
210 rotation_list.push_back(rotate);
213 rotate = -Math::PI/6.0f;
214 rotation_list.push_back(rotate);
218 rotation_list.push_back(rotate);
221 rotate = -Math::PI/6.0f;
222 rotation_list.push_back(rotate);
224 albumLayout->SetRotationZ(rotation_list);
226 DALI_TEST_CHECK(albumLayout->GetRotationZ() == rotation_list);
230 int UtcDaliAlbumSetScale(void)
232 AlbumLayoutPtr albumLayout = AlbumLayout::New();
234 std::vector<float> scale_list;
238 scale_list.push_back(scale);
242 scale_list.push_back(scale);
245 scale = Math::PI/6.0f;
246 scale_list.push_back(scale);
249 scale = -Math::PI/6.0f;
250 scale_list.push_back(scale);
254 scale_list.push_back(scale);
257 scale = -Math::PI/6.0f;
258 scale_list.push_back(scale);
260 albumLayout->SetScale(scale_list);
262 DALI_TEST_CHECK(albumLayout->GetScale() == scale_list);
266 int UtcDaliAlbumSetColor(void)
268 // Create a album layout
269 AlbumLayoutPtr albumLayout = AlbumLayout::New();
271 std::vector<Vector2> color_list;
274 Vector2 color = Vector2(1.0f,1.0f);
275 color_list.push_back(color);
278 color = Vector2(1.0f,1.0f);
279 color_list.push_back(color);
282 color = Vector2(1.0f,1.0f);
283 color_list.push_back(color);
286 color = Vector2(1.0f,1.0f);
287 color_list.push_back(color);
290 color = Vector2(1.0f,1.0f);
291 color_list.push_back(color);
294 color = Vector2(1.0f,1.0f);
295 color_list.push_back(color);
297 albumLayout->SetColor(color_list);
299 DALI_TEST_CHECK(albumLayout->GetColor() == color_list);
303 int UtcDaliAlbumSetCenterPosition(void)
305 AlbumLayoutPtr albumLayout = AlbumLayout::New();
307 albumLayout->SetCenterPosition(Vector3( 0.0f,-80.0f,100.0f));
309 DALI_TEST_CHECK(albumLayout->GetCenterPosition() == Vector3( 0.0f,-80.0f,100.0f));
313 int UtcDaliAlbumSetSetCenterScale(void)
315 AlbumLayoutPtr albumLayout = AlbumLayout::New();
317 albumLayout->SetCenterScale(1.75f);
319 DALI_TEST_CHECK(albumLayout->GetCenterScale() == 1.75f);
323 int UtcDaliAlbumSetSetCenterColor(void)
325 AlbumLayoutPtr albumLayout = AlbumLayout::New();
327 albumLayout->SetCenterColor(Vector2(1.0f,1.0f));
329 DALI_TEST_CHECK(albumLayout->GetCenterColor() == Vector2(1.0f,1.0f));
333 int UtcDaliAlbumSetStackPosition(void)
335 AlbumLayoutPtr albumLayout = AlbumLayout::New();
337 albumLayout->SetStackPosition(Vector3(750.0f,-500.0f,0.0f),Vector3(-750.0f,-500.0f,0.0f));
339 DALI_TEST_CHECK(albumLayout->GetRightStackPosition() == Vector3(750.0f,-500.0f,0.0f) && albumLayout->GetLeftStackPosition() == Vector3(-750.0f,-500.0f,0.0f));
343 int UtcDaliAlbumSetSetStackScale(void)
345 AlbumLayoutPtr albumLayout = AlbumLayout::New();
347 albumLayout->SetStackScale(1.0f,1.0f);
349 DALI_TEST_CHECK(albumLayout->GetRightStackScale() == 1.0f && albumLayout->GetLeftStackScale() == 1.0f);
353 int UtcDaliAlbumSetStackColor(void)
355 AlbumLayoutPtr albumLayout = AlbumLayout::New();
357 albumLayout->SetStackColor(Vector2(1.0f,1.0f),Vector2(1.0f,1.0f));
359 DALI_TEST_CHECK(albumLayout->GetRightStackColor() == Vector2(1.0f,1.0f) && albumLayout->GetLeftStackColor() == Vector2(1.0f,1.0f));