X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-scene3d%2Futc-Dali-Model.cpp;h=c219f9379c6dd16722aec08eed97e586caf094d2;hb=469fdeab34b1f319e0d9a73a799f1a48732a0410;hp=30b755d89a6c2a17acc58154bfb87fd2a1e832ee;hpb=850ba75b1ce1c35fed34396e84ee4bfe7ed0ade1;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-scene3d/utc-Dali-Model.cpp b/automated-tests/src/dali-scene3d/utc-Dali-Model.cpp index 30b755d..c219f93 100644 --- a/automated-tests/src/dali-scene3d/utc-Dali-Model.cpp +++ b/automated-tests/src/dali-scene3d/utc-Dali-Model.cpp @@ -17,7 +17,6 @@ #include #include -#include #include #include @@ -28,10 +27,6 @@ #include #include -#include -#include -#include - #include using namespace Dali; @@ -58,9 +53,7 @@ const bool DEFAULT_MODEL_CHILDREN_FOCUSABLE = false; */ const char* TEST_GLTF_FILE_NAME = TEST_RESOURCE_DIR "/AnimatedCube.gltf"; const char* TEST_GLTF_ANIMATION_TEST_FILE_NAME = TEST_RESOURCE_DIR "/animationTest.gltf"; -const char* TEST_GLTF_EXTRAS_FILE_NAME = TEST_RESOURCE_DIR "/AnimatedMorphCubeAnimateNonZeroFrame.gltf"; const char* TEST_GLTF_MULTIPLE_PRIMITIVE_FILE_NAME = TEST_RESOURCE_DIR "/simpleMultiplePrimitiveTest.gltf"; -const char* TEST_GLTF_MORPH_FILE_NAME = TEST_RESOURCE_DIR "/AnimatedMorphCube.gltf"; const char* TEST_DLI_FILE_NAME = TEST_RESOURCE_DIR "/arc.dli"; const char* TEST_DLI_EXERCISE_FILE_NAME = TEST_RESOURCE_DIR "/exercise.dli"; @@ -1142,7 +1135,8 @@ int UtcDaliModelCameraGenerate02(void) CameraActor appliedCamera; DALI_TEST_EQUALS(model.ApplyCamera(0u, appliedCamera), false, TEST_LOCATION); // Cannot apply into empty camera. - auto CompareCameraProperties = [](CameraActor lhs, CameraActor rhs, const char* location) { + auto CompareCameraProperties = [](CameraActor lhs, CameraActor rhs, const char* location) + { DALI_TEST_EQUALS(lhs.GetProperty(Dali::CameraActor::Property::PROJECTION_MODE), rhs.GetProperty(Dali::CameraActor::Property::PROJECTION_MODE), TEST_LOCATION); DALI_TEST_EQUALS(lhs.GetProperty(Dali::CameraActor::Property::NEAR_PLANE_DISTANCE), rhs.GetProperty(Dali::CameraActor::Property::NEAR_PLANE_DISTANCE), TEST_LOCATION); @@ -1494,196 +1488,3 @@ int UtcDaliModelSizeChange2(void) END_TEST; } - -int UtcDaliModelRetrieveBlendShapeNames(void) -{ - tet_infoline(" UtcDaliModelRetrieveBlendShapeByName."); - - ToolkitTestApplication application; - - Scene3D::Model model = Scene3D::Model::New(TEST_GLTF_EXTRAS_FILE_NAME); - model.SetProperty(Dali::Actor::Property::SIZE, Vector3(300, 300, 300)); - application.GetScene().Add(model); - - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(Test::WaitForEventThreadTrigger(1), true, TEST_LOCATION); - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(model.GetChildCount(), 1u, TEST_LOCATION); - - // Get target ModelNode that has extras - Scene3D::ModelNode expectNode = model.FindChildModelNodeByName("AnimatedMorphCube"); - - // Pair of expected blend shape index from expectNode. - std::map expectBlendShapeNames = { - {"Target_0", 0u}, - {"Target_1", 1u}, - }; - - std::vector blendShapeNameList; - model.RetrieveBlendShapeNames(blendShapeNameList); - - DALI_TEST_EQUALS(blendShapeNameList.size(), expectBlendShapeNames.size(), TEST_LOCATION); - for(auto i = 0u; i < blendShapeNameList.size(); ++i) - { - const auto& name = blendShapeNameList[i]; - tet_printf("Check retrieved blendshape name : %s\n", name.c_str()); - - const auto& iter = expectBlendShapeNames.find(name); - DALI_TEST_CHECK(iter != expectBlendShapeNames.end()); - - std::vector nodeList; - model.RetrieveModelNodesByBlendShapeName(name, nodeList); - DALI_TEST_EQUALS(nodeList.size(), 1u, TEST_LOCATION); - DALI_TEST_EQUALS(nodeList[0], expectNode, TEST_LOCATION); - DALI_TEST_EQUALS(nodeList[0].GetBlendShapeIndexByName(name), iter->second, TEST_LOCATION); - } - - END_TEST; -} - -int UtcDaliModelGenerateMotionDataAnimation01(void) -{ - ToolkitTestApplication application; - - Scene3D::Model model = Scene3D::Model::New(TEST_GLTF_MORPH_FILE_NAME); - model.SetProperty(Dali::Actor::Property::SIZE, Vector2(50, 50)); - application.GetScene().Add(model); - - gResourceReadyCalled = false; - model.ResourceReadySignal().Connect(&OnResourceReady); - DALI_TEST_EQUALS(gResourceReadyCalled, false, TEST_LOCATION); - - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(Test::WaitForEventThreadTrigger(1), true, TEST_LOCATION); - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(gResourceReadyCalled, true, TEST_LOCATION); - - KeyFrames floatKeyFrames = KeyFrames::New(); - floatKeyFrames.Add(0.0f, 1.0f); - floatKeyFrames.Add(1.0f, 0.5f); - - float duration = 3.0f; - Scene3D::MotionData motionData = Scene3D::MotionData::New(duration); - motionData.Add(Scene3D::MotionTransformIndex::New("AnimatedMorphCube", Scene3D::MotionTransformIndex::TransformType::SCALE_Y), Scene3D::MotionValue::New(2.0f)); - motionData.Add(Scene3D::MotionTransformIndex::New("AnimatedMorphCube", Scene3D::MotionTransformIndex::TransformType::SCALE_Z), Scene3D::MotionValue::New(floatKeyFrames)); - motionData.Add(Scene3D::BlendShapeIndex::New("AnimatedMorphCube", 0), Scene3D::MotionValue::New(0.5f)); - motionData.Add(Scene3D::BlendShapeIndex::New("AnimatedMorphCube", 1), Scene3D::MotionValue::New(floatKeyFrames)); - - Animation generatedAnimation = model.GenerateMotionDataAnimation(motionData); - DALI_TEST_CHECK(generatedAnimation); - DALI_TEST_EQUALS(generatedAnimation.GetDuration(), duration, TEST_LOCATION); - - Scene3D::MotionData invalidMotionData = Scene3D::MotionData::New(duration); - invalidMotionData.Add(Scene3D::MotionTransformIndex::New("NotAnimatedMorphCube", Scene3D::MotionTransformIndex::TransformType::SCALE_Y), Scene3D::MotionValue::New(2.0f)); - invalidMotionData.Add(Scene3D::MotionTransformIndex::New("NotAnimatedMorphCube", Scene3D::MotionTransformIndex::TransformType::SCALE_Z), Scene3D::MotionValue::New(floatKeyFrames)); - invalidMotionData.Add(Scene3D::BlendShapeIndex::New("NotAnimatedMorphCube", 0), Scene3D::MotionValue::New(0.5f)); - invalidMotionData.Add(Scene3D::BlendShapeIndex::New("NotAnimatedMorphCube", 1), Scene3D::MotionValue::New(floatKeyFrames)); - - generatedAnimation = model.GenerateMotionDataAnimation(invalidMotionData); - DALI_TEST_CHECK(!generatedAnimation); // Animation should be empty if motion data have invalid index. - - END_TEST; -} - -int UtcDaliModelSetMotionData(void) -{ - ToolkitTestApplication application; - - Scene3D::Model model = Scene3D::Model::New(TEST_GLTF_MORPH_FILE_NAME); - model.SetProperty(Dali::Actor::Property::SIZE, Vector2(50, 50)); - application.GetScene().Add(model); - - gResourceReadyCalled = false; - model.ResourceReadySignal().Connect(&OnResourceReady); - DALI_TEST_EQUALS(gResourceReadyCalled, false, TEST_LOCATION); - - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(Test::WaitForEventThreadTrigger(1), true, TEST_LOCATION); - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(gResourceReadyCalled, true, TEST_LOCATION); - - KeyFrames floatKeyFrames = KeyFrames::New(); - floatKeyFrames.Add(0.0f, 1.0f); - floatKeyFrames.Add(1.0f, 0.5f); - - float duration = 3.0f; - Scene3D::MotionData motionData = Scene3D::MotionData::New(duration); - motionData.Add(Scene3D::MotionTransformIndex::New("AnimatedMorphCube", Scene3D::MotionTransformIndex::TransformType::SCALE_Y), Scene3D::MotionValue::New(2.0f)); - motionData.Add(Scene3D::MotionTransformIndex::New("AnimatedMorphCube", Scene3D::MotionTransformIndex::TransformType::SCALE_Z), Scene3D::MotionValue::New(floatKeyFrames)); - motionData.Add(Scene3D::BlendShapeIndex::New("AnimatedMorphCube", 0), Scene3D::MotionValue::New(0.5f)); - motionData.Add(Scene3D::BlendShapeIndex::New("AnimatedMorphCube", 1), Scene3D::MotionValue::New(floatKeyFrames)); - - auto cubeModelNode = model.FindChildModelNodeByName("AnimatedMorphCube"); - - float expectScaleX = cubeModelNode.GetProperty(Actor::Property::SCALE_X); - - model.SetMotionData(motionData); - - DALI_TEST_EQUALS(cubeModelNode.GetProperty(Actor::Property::SCALE_X), expectScaleX, TEST_LOCATION); - DALI_TEST_EQUALS(cubeModelNode.GetProperty(Actor::Property::SCALE_Y), 2.0f, TEST_LOCATION); - DALI_TEST_EQUALS(cubeModelNode.GetProperty(Actor::Property::SCALE_Z), 0.5f, TEST_LOCATION); ///< Last value of keyframes - - END_TEST; -} - -int UtcDaliModelBlendShapeMotionDataByName(void) -{ - ToolkitTestApplication application; - - Scene3D::Model model = Scene3D::Model::New(TEST_GLTF_EXTRAS_FILE_NAME); - model.SetProperty(Dali::Actor::Property::SIZE, Vector2(50, 50)); - application.GetScene().Add(model); - - gResourceReadyCalled = false; - model.ResourceReadySignal().Connect(&OnResourceReady); - DALI_TEST_EQUALS(gResourceReadyCalled, false, TEST_LOCATION); - - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(Test::WaitForEventThreadTrigger(1), true, TEST_LOCATION); - application.SendNotification(); - application.Render(); - - DALI_TEST_EQUALS(gResourceReadyCalled, true, TEST_LOCATION); - - KeyFrames floatKeyFrames = KeyFrames::New(); - floatKeyFrames.Add(0.0f, 0.5f); - floatKeyFrames.Add(1.0f, 1.0f); - - float duration = 3.0f; - Scene3D::MotionData motionData = Scene3D::MotionData::New(duration); - motionData.Add(Scene3D::BlendShapeIndex::New("Target_0"), Scene3D::MotionValue::New(0.5f)); - motionData.Add(Scene3D::BlendShapeIndex::New("Target_1"), Scene3D::MotionValue::New(floatKeyFrames)); - - Animation generatedAnimation = model.GenerateMotionDataAnimation(motionData); - DALI_TEST_CHECK(generatedAnimation); - DALI_TEST_EQUALS(generatedAnimation.GetDuration(), duration, TEST_LOCATION); - - model.SetMotionData(motionData); - - // Get target ModelNode that has extras - Scene3D::ModelNode expectNode = model.FindChildModelNodeByName("AnimatedMorphCube"); - auto propertyIndex = expectNode.GetPropertyIndex(motionData.GetIndex(0u).GetPropertyName(expectNode)); - - DALI_TEST_CHECK(propertyIndex != Property::INVALID_INDEX); - DALI_TEST_EQUALS(expectNode.GetProperty(propertyIndex), 0.5f, TEST_LOCATION); - - propertyIndex = expectNode.GetPropertyIndex(motionData.GetIndex(1u).GetPropertyName(expectNode)); - DALI_TEST_CHECK(propertyIndex != Property::INVALID_INDEX); - DALI_TEST_EQUALS(expectNode.GetProperty(propertyIndex), 1.0f, TEST_LOCATION); - - END_TEST; -}