Formatting automated-tests
[platform/core/uifw/dali-core.git] / automated-tests / src / dali-internal / utc-Dali-Internal-LongPressGesture.cpp
1 /*
2  * Copyright (c) 2020 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 <dali-test-suite-utils.h>
19 #include <dali/devel-api/events/long-press-gesture-devel.h>
20 #include <dali/internal/event/events/long-press-gesture/long-press-gesture-impl.h>
21 #include <dali/public-api/dali-core.h>
22 #include <stdlib.h>
23
24 #include <iostream>
25
26 using namespace Dali;
27
28 void utc_dali_internal_long_press_gesture_startup(void)
29 {
30   test_return_value = TET_UNDEF;
31 }
32
33 void utc_dali_internal_long_press_gesture_cleanup(void)
34 {
35   test_return_value = TET_PASS;
36 }
37
38 int UtcDaliLongPressGestureConstructorP(void)
39 {
40   TestApplication application;
41
42   LongPressGesture gesture = DevelLongPressGesture::New(GestureState::STARTED);
43   DALI_TEST_EQUALS(1u, gesture.GetNumberOfTouches(), TEST_LOCATION);
44   DALI_TEST_EQUALS(GestureType::LONG_PRESS, gesture.GetType(), TEST_LOCATION);
45
46   // Test Copy constructor
47   GetImplementation(gesture).SetNumberOfTouches(5u);
48
49   LongPressGesture gesture2(gesture);
50   DALI_TEST_EQUALS(5u, gesture2.GetNumberOfTouches(), TEST_LOCATION);
51   DALI_TEST_EQUALS(GestureType::LONG_PRESS, gesture2.GetType(), TEST_LOCATION);
52   DALI_TEST_EQUALS(GestureState::STARTED, gesture2.GetState(), TEST_LOCATION);
53
54   // Test move constructor
55   const auto       refCount = gesture.GetObjectPtr()->ReferenceCount();
56   LongPressGesture gesture3(std::move(gesture));
57   DALI_TEST_EQUALS(gesture, LongPressGesture(), TEST_LOCATION);
58   DALI_TEST_EQUALS(GestureType::LONG_PRESS, gesture3.GetType(), TEST_LOCATION);
59   DALI_TEST_EQUALS(gesture3.GetBaseObject().ReferenceCount(), refCount, TEST_LOCATION);
60
61   END_TEST;
62 }
63
64 int UtcDaliLongPressGestureAssignmentP(void)
65 {
66   // Test Assignment operator
67   LongPressGesture gesture = DevelLongPressGesture::New(GestureState::STARTED);
68   DALI_TEST_EQUALS(1u, gesture.GetNumberOfTouches(), TEST_LOCATION);
69   DALI_TEST_EQUALS(GestureType::LONG_PRESS, gesture.GetType(), TEST_LOCATION);
70
71   GetImplementation(gesture).SetNumberOfTouches(5u);
72
73   LongPressGesture gesture2 = DevelLongPressGesture::New(GestureState::FINISHED);
74   DALI_TEST_EQUALS(GestureState::FINISHED, gesture2.GetState(), TEST_LOCATION);
75   gesture2 = gesture;
76   DALI_TEST_EQUALS(5u, gesture2.GetNumberOfTouches(), TEST_LOCATION);
77   DALI_TEST_EQUALS(GestureType::LONG_PRESS, gesture2.GetType(), TEST_LOCATION);
78   DALI_TEST_EQUALS(GestureState::STARTED, gesture2.GetState(), TEST_LOCATION);
79
80   // Move assignment
81   const auto       refCount = gesture.GetObjectPtr()->ReferenceCount();
82   LongPressGesture gesture3;
83   DALI_TEST_EQUALS(gesture3, Gesture(), TEST_LOCATION);
84   gesture3 = std::move(gesture);
85   DALI_TEST_EQUALS(gesture, Gesture(), TEST_LOCATION);
86   DALI_TEST_EQUALS(GestureType::LONG_PRESS, gesture3.GetType(), TEST_LOCATION);
87   DALI_TEST_EQUALS(gesture3.GetBaseObject().ReferenceCount(), refCount, TEST_LOCATION);
88
89   END_TEST;
90 }
91
92 int UtcDaliLongPressGestureGetNumberOfTouchesP(void)
93 {
94   TestApplication application;
95
96   LongPressGesture gesture = DevelLongPressGesture::New(GestureState::STARTED);
97   DALI_TEST_EQUALS(gesture.GetNumberOfTouches(), 1, TEST_LOCATION);
98
99   GetImplementation(gesture).SetNumberOfTouches(4);
100   DALI_TEST_EQUALS(gesture.GetNumberOfTouches(), 4, TEST_LOCATION);
101
102   END_TEST;
103 }
104
105 int UtcDaliLongPressGestureGetScreenPointP(void)
106 {
107   TestApplication application;
108
109   LongPressGesture gesture = DevelLongPressGesture::New(GestureState::STARTED);
110   DALI_TEST_EQUALS(gesture.GetScreenPoint(), Vector2::ZERO, TEST_LOCATION);
111   DALI_TEST_EQUALS(gesture.GetLocalPoint(), Vector2::ZERO, TEST_LOCATION);
112
113   GetImplementation(gesture).SetScreenPoint(Vector2(100.0f, 300.0f));
114   DALI_TEST_EQUALS(gesture.GetScreenPoint(), Vector2(100.0f, 300.0f), TEST_LOCATION);
115   DALI_TEST_EQUALS(gesture.GetLocalPoint(), Vector2::ZERO, TEST_LOCATION);
116
117   END_TEST;
118 }
119
120 int UtcDaliLongPressGestureGetLocalPointP(void)
121 {
122   TestApplication application;
123
124   LongPressGesture gesture = DevelLongPressGesture::New(GestureState::STARTED);
125   DALI_TEST_EQUALS(gesture.GetLocalPoint(), Vector2::ZERO, TEST_LOCATION);
126   DALI_TEST_EQUALS(gesture.GetScreenPoint(), Vector2::ZERO, TEST_LOCATION);
127
128   GetImplementation(gesture).SetLocalPoint(Vector2(100.0f, 300.0f));
129   DALI_TEST_EQUALS(gesture.GetLocalPoint(), Vector2(100.0f, 300.0f), TEST_LOCATION);
130   DALI_TEST_EQUALS(gesture.GetScreenPoint(), Vector2::ZERO, TEST_LOCATION);
131
132   END_TEST;
133 }