removed reliance on dali-adaptor
[platform/core/uifw/dali-core.git] / automated-tests / src / dali-unmanaged / utc-Dali-DynamicsShape.cpp
1 /*
2  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  *
16  */
17
18 #include <iostream>
19 #include <stdlib.h>
20 #include <dali/public-api/dali-core.h>
21 #include <dali-test-suite-utils.h>
22
23 using namespace Dali;
24
25
26 int UtcDaliDynamicsShapeConstructor(void)
27 {
28   tet_infoline("UtcDaliDynamicsShapeConstructor - DynamicsShape::DynamicsShape");
29
30   TestApplication application;
31
32   // start up
33   application.SendNotification();
34   application.Render();
35   application.Render();
36
37   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
38   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
39
40   if( world )
41   {
42
43     // Default constructor - create an uninitialized handle
44     DynamicsShape shape;
45     DALI_TEST_CHECK( !shape );
46
47     // initialize handle
48     shape = DynamicsShape::NewCube(Vector3::ONE);
49
50     DALI_TEST_CHECK( shape );
51   }
52   else
53   {
54     // cannot create dynamics world, log failure and exit
55     DALI_TEST_CHECK( false );
56   }
57
58   END_TEST;
59 }
60
61 int UtcDaliDynamicsShapeNewCapsule(void)
62 {
63   tet_infoline("UtcDaliDynamicsShapeNewCapsule - DynamicsShape::NewCapsule");
64
65   TestApplication application;
66
67   // start up
68   application.SendNotification();
69   application.Render();
70   application.Render();
71
72   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
73   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
74
75   if( world )
76   {
77
78     DynamicsShape shape( DynamicsShape::NewCapsule( 1.0f, 2.0f ) );
79
80     DALI_TEST_CHECK( shape );
81     DALI_TEST_CHECK( DynamicsShape::CAPSULE == shape.GetType() );
82   }
83   else
84   {
85     // cannot create dynamics world, log failure and exit
86     DALI_TEST_CHECK( false );
87   }
88
89   END_TEST;
90 }
91
92 int UtcDaliDynamicsShapeNewCone(void)
93 {
94   tet_infoline("UtcDaliDynamicsShapeNewCone - DynamicsShape::NewCone");
95
96   TestApplication application;
97
98   // start up
99   application.SendNotification();
100   application.Render();
101   application.Render();
102
103   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
104   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
105
106   if( world )
107   {
108     DynamicsShape shape( DynamicsShape::NewCone( 1.0f, 2.0f ) );
109
110     DALI_TEST_CHECK( shape );
111     DALI_TEST_CHECK( DynamicsShape::CONE == shape.GetType() );
112   }
113   else
114   {
115     // cannot create dynamics world, log failure and exit
116     DALI_TEST_CHECK( false );
117   }
118
119   END_TEST;
120 }
121
122 int UtcDaliDynamicsShapeNewCube(void)
123 {
124   tet_infoline("UtcDaliDynamicsShapeNewCube - DynamicsShape::NewCube");
125
126   TestApplication application;
127
128   // start up
129   application.SendNotification();
130   application.Render();
131   application.Render();
132
133   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
134   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
135
136   if( world )
137   {
138     DynamicsShape shape( DynamicsShape::NewCube( Vector3::ONE ) );
139
140     DALI_TEST_CHECK( shape );
141     DALI_TEST_CHECK( DynamicsShape::CUBE == shape.GetType() );
142   }
143   else
144   {
145     // cannot create dynamics world, log failure and exit
146     DALI_TEST_CHECK( false );
147   }
148   END_TEST;
149 }
150
151 int UtcDaliDynamicsShapeNewCylinder(void)
152 {
153   tet_infoline("UtcDaliDynamicsShapeNewCylinder - DynamicsShape::NewCylinder");
154
155   TestApplication application;
156
157   // start up
158   application.SendNotification();
159   application.Render();
160   application.Render();
161
162   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
163   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
164
165   if( world )
166   {
167     DynamicsShape shape( DynamicsShape::NewCylinder( 1.0f, 2.0f ) );
168
169     DALI_TEST_CHECK( shape );
170     DALI_TEST_CHECK( DynamicsShape::CYLINDER == shape.GetType() );
171   }
172   else
173   {
174     // cannot create dynamics world, log failure and exit
175     DALI_TEST_CHECK( false );
176   }
177   END_TEST;
178 }
179
180 int UtcDaliDynamicsShapeNewMesh(void)
181 {
182   tet_infoline("UtcDaliDynamicsShapeNewMesh - DynamicsShape::NewMesh");
183
184   TestApplication application;
185
186   // start up
187   application.SendNotification();
188   application.Render();
189   application.Render();
190
191   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
192   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
193
194   if( world )
195   {
196     DynamicsShape shape( DynamicsShape::NewMesh( Cloth::New(10.0f, 10.0f, 10, 10)) );
197
198     DALI_TEST_CHECK( shape );
199     DALI_TEST_CHECK( DynamicsShape::MESH == shape.GetType() );
200   }
201   else
202   {
203     // cannot create dynamics world, log failure and exit
204     DALI_TEST_CHECK( false );
205   }
206   END_TEST;
207 }
208
209 int UtcDaliDynamicsShapeNewSphere(void)
210 {
211   tet_infoline("UtcDaliDynamicsShapeNewSphere - DynamicsShape::NewSphere");
212
213   TestApplication application;
214
215   // start up
216   application.SendNotification();
217   application.Render();
218   application.Render();
219
220   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
221   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
222
223   if( world )
224   {
225     DynamicsShape shape( DynamicsShape::NewSphere( 1.0f ) );
226
227     DALI_TEST_CHECK( shape );
228     DALI_TEST_CHECK( DynamicsShape::SPHERE == shape.GetType() );
229   }
230   else
231   {
232     // cannot create dynamics world, log failure and exit
233     DALI_TEST_CHECK( false );
234   }
235   END_TEST;
236 }
237
238 int UtcDaliDynamicsShapeGetType(void)
239 {
240   tet_infoline("UtcDaliDynamicsShapeGetType - DynamicsShape::GetType");
241
242   TestApplication application;
243
244   // start up
245   application.SendNotification();
246   application.Render();
247   application.Render();
248
249   DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
250   DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
251
252   if( world )
253   {
254     DynamicsShape shape( DynamicsShape::NewSphere( 1.0f ) );
255
256     DALI_TEST_CHECK( shape );
257     DALI_TEST_CHECK( DynamicsShape::SPHERE == shape.GetType() );
258   }
259   else
260   {
261     // cannot create dynamics world, log failure and exit
262     DALI_TEST_CHECK( false );
263   }
264   END_TEST;
265 }