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/public-api/dali-core.h>
21 #include <dali-test-suite-utils.h>
26 int UtcDaliDynamicsShapeConstructor(void)
28 tet_infoline("UtcDaliDynamicsShapeConstructor - DynamicsShape::DynamicsShape");
30 TestApplication application;
33 application.SendNotification();
37 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
38 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
43 // Default constructor - create an uninitialized handle
45 DALI_TEST_CHECK( !shape );
48 shape = DynamicsShape::NewCube(Vector3::ONE);
50 DALI_TEST_CHECK( shape );
54 // cannot create dynamics world, log failure and exit
55 DALI_TEST_CHECK( false );
61 int UtcDaliDynamicsShapeNewCapsule(void)
63 tet_infoline("UtcDaliDynamicsShapeNewCapsule - DynamicsShape::NewCapsule");
65 TestApplication application;
68 application.SendNotification();
72 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
73 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
78 DynamicsShape shape( DynamicsShape::NewCapsule( 1.0f, 2.0f ) );
80 DALI_TEST_CHECK( shape );
81 DALI_TEST_CHECK( DynamicsShape::CAPSULE == shape.GetType() );
85 // cannot create dynamics world, log failure and exit
86 DALI_TEST_CHECK( false );
92 int UtcDaliDynamicsShapeNewCone(void)
94 tet_infoline("UtcDaliDynamicsShapeNewCone - DynamicsShape::NewCone");
96 TestApplication application;
99 application.SendNotification();
100 application.Render();
101 application.Render();
103 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
104 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
108 DynamicsShape shape( DynamicsShape::NewCone( 1.0f, 2.0f ) );
110 DALI_TEST_CHECK( shape );
111 DALI_TEST_CHECK( DynamicsShape::CONE == shape.GetType() );
115 // cannot create dynamics world, log failure and exit
116 DALI_TEST_CHECK( false );
122 int UtcDaliDynamicsShapeNewCube(void)
124 tet_infoline("UtcDaliDynamicsShapeNewCube - DynamicsShape::NewCube");
126 TestApplication application;
129 application.SendNotification();
130 application.Render();
131 application.Render();
133 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
134 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
138 DynamicsShape shape( DynamicsShape::NewCube( Vector3::ONE ) );
140 DALI_TEST_CHECK( shape );
141 DALI_TEST_CHECK( DynamicsShape::CUBE == shape.GetType() );
145 // cannot create dynamics world, log failure and exit
146 DALI_TEST_CHECK( false );
151 int UtcDaliDynamicsShapeNewCylinder(void)
153 tet_infoline("UtcDaliDynamicsShapeNewCylinder - DynamicsShape::NewCylinder");
155 TestApplication application;
158 application.SendNotification();
159 application.Render();
160 application.Render();
162 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
163 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
167 DynamicsShape shape( DynamicsShape::NewCylinder( 1.0f, 2.0f ) );
169 DALI_TEST_CHECK( shape );
170 DALI_TEST_CHECK( DynamicsShape::CYLINDER == shape.GetType() );
174 // cannot create dynamics world, log failure and exit
175 DALI_TEST_CHECK( false );
180 int UtcDaliDynamicsShapeNewMesh(void)
182 tet_infoline("UtcDaliDynamicsShapeNewMesh - DynamicsShape::NewMesh");
184 TestApplication application;
187 application.SendNotification();
188 application.Render();
189 application.Render();
191 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
192 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
196 DynamicsShape shape( DynamicsShape::NewMesh( Cloth::New(10.0f, 10.0f, 10, 10)) );
198 DALI_TEST_CHECK( shape );
199 DALI_TEST_CHECK( DynamicsShape::MESH == shape.GetType() );
203 // cannot create dynamics world, log failure and exit
204 DALI_TEST_CHECK( false );
209 int UtcDaliDynamicsShapeNewSphere(void)
211 tet_infoline("UtcDaliDynamicsShapeNewSphere - DynamicsShape::NewSphere");
213 TestApplication application;
216 application.SendNotification();
217 application.Render();
218 application.Render();
220 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
221 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
225 DynamicsShape shape( DynamicsShape::NewSphere( 1.0f ) );
227 DALI_TEST_CHECK( shape );
228 DALI_TEST_CHECK( DynamicsShape::SPHERE == shape.GetType() );
232 // cannot create dynamics world, log failure and exit
233 DALI_TEST_CHECK( false );
238 int UtcDaliDynamicsShapeGetType(void)
240 tet_infoline("UtcDaliDynamicsShapeGetType - DynamicsShape::GetType");
242 TestApplication application;
245 application.SendNotification();
246 application.Render();
247 application.Render();
249 DynamicsWorldConfig worldConfig(DynamicsWorldConfig::New());
250 DynamicsWorld world( Stage::GetCurrent().InitializeDynamics(worldConfig) );
254 DynamicsShape shape( DynamicsShape::NewSphere( 1.0f ) );
256 DALI_TEST_CHECK( shape );
257 DALI_TEST_CHECK( DynamicsShape::SPHERE == shape.GetType() );
261 // cannot create dynamics world, log failure and exit
262 DALI_TEST_CHECK( false );