3 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
4 * PROPRIETARY/CONFIDENTIAL
6 * This software is the confidential and proprietary information of SAMSUNG
7 * ELECTRONICS ("Confidential Information"). You agree and acknowledge that
8 * this software is owned by Samsung and you shall not disclose such
9 * Confidential Information and shall use it only in accordance with the terms
10 * of the license agreement you entered into with SAMSUNG ELECTRONICS. SAMSUNG
11 * make no representations or warranties about the suitability of the software,
12 * either express or implied, including but not limited to the implied
13 * warranties of merchantability, fitness for a particular purpose, or
14 * non-infringement. SAMSUNG shall not be liable for any damages suffered by
15 * licensee arising out of or related to this software.
21 #define API_NAME_FEEDBACK_INITIALIZE "feedback_initialize"
22 #define API_NAME_FEEDBACK_DEINITIALIZE "feedback_deinitialize"
23 #define API_NAME_FEEDBACK_PLAY "feedback_play"
24 #define API_NAME_FEEDBACK_PLAY_TYPE "feedback_play_type"
25 #define API_NAME_FEEDBACK_GET_RESOURCE_PATH "feedback_get_resource_path"
26 #define API_NAME_FEEDBACK_SET_RESOURCE_PATH "feedback_set_resource_path"
28 static void startup(void);
29 static void cleanup(void);
31 void (*tet_startup)(void) = startup;
32 void (*tet_cleanup)(void) = cleanup;
35 static void utc_system_feedback_initialize_p(void);
36 static void utc_system_feedback_deinitialize_p(void);
37 static void utc_system_feedback_play_p(void);
38 static void utc_system_feedback_play_n(void);
39 static void utc_system_feedback_play_type_p(void);
40 static void utc_system_feedback_play_type_n_1(void);
41 static void utc_system_feedback_play_type_n_2(void);
42 static void utc_system_feedback_get_resource_path_p(void);
43 static void utc_system_feedback_get_resource_path_n_1(void);
44 static void utc_system_feedback_get_resource_path_n_2(void);
45 static void utc_system_feedback_get_resource_path_n_3(void);
46 static void utc_system_feedback_set_resource_path_p(void);
47 static void utc_system_feedback_set_resource_path_n_1(void);
48 static void utc_system_feedback_set_resource_path_n_2(void);
49 static void utc_system_feedback_set_resource_path_n_3(void);
50 static void utc_system_feedback_set_resource_path_n_4(void);
53 POSITIVE_TC_IDX = 0x01,
57 struct tet_testlist tet_testlist[] = {
58 { utc_system_feedback_initialize_p, POSITIVE_TC_IDX },
59 { utc_system_feedback_deinitialize_p, POSITIVE_TC_IDX },
60 { utc_system_feedback_play_p, POSITIVE_TC_IDX },
61 { utc_system_feedback_play_n, NEGATIVE_TC_IDX },
62 { utc_system_feedback_play_type_p, POSITIVE_TC_IDX },
63 { utc_system_feedback_play_type_n_1, NEGATIVE_TC_IDX },
64 { utc_system_feedback_play_type_n_2, NEGATIVE_TC_IDX },
65 { utc_system_feedback_get_resource_path_p, POSITIVE_TC_IDX },
66 { utc_system_feedback_get_resource_path_n_1, NEGATIVE_TC_IDX },
67 { utc_system_feedback_get_resource_path_n_2, NEGATIVE_TC_IDX },
68 { utc_system_feedback_get_resource_path_n_3, NEGATIVE_TC_IDX },
69 { utc_system_feedback_set_resource_path_p, POSITIVE_TC_IDX },
70 { utc_system_feedback_set_resource_path_n_1, NEGATIVE_TC_IDX },
71 { utc_system_feedback_set_resource_path_n_2, NEGATIVE_TC_IDX },
72 { utc_system_feedback_set_resource_path_n_3, NEGATIVE_TC_IDX },
73 { utc_system_feedback_set_resource_path_n_4, NEGATIVE_TC_IDX },
77 #define SOUND_FILE_PATH "/usr/share/feedback/sound/touch/touch.ogg"
78 #define VIBRATION_FILE_PATH "/usr/share/deviced/HW_touch_30ms_sharp.ivt"
80 static void startup(void)
84 static void cleanup(void)
89 * @brief Positive test case of feedback_initialize()
91 static void utc_system_feedback_initialize_p(void)
95 ret = feedback_initialize();
96 dts_check_eq(API_NAME_FEEDBACK_INITIALIZE, ret, FEEDBACK_ERROR_NONE);
100 * @brief Positive test case of feedback_deinitialize()
102 static void utc_system_feedback_deinitialize_p(void)
106 ret = feedback_deinitialize();
107 dts_check_eq(API_NAME_FEEDBACK_DEINITIALIZE, ret, FEEDBACK_ERROR_NONE);
111 * @brief Positive test case of feedback_play()
113 static void utc_system_feedback_play_p(void)
117 for (i = 0; i < FEEDBACK_PATTERN_END; ++i) {
118 dts_message(API_NAME_FEEDBACK_PLAY, "Play [%d] pattern", i);
120 ret = feedback_play(i);
121 dts_check_eq(API_NAME_FEEDBACK_PLAY, ret, FEEDBACK_ERROR_NONE);
126 * @brief Negative test case of feedback_play()
128 static void utc_system_feedback_play_n(void)
132 ret = feedback_play(-1);
133 dts_check_ne(API_NAME_FEEDBACK_PLAY, ret, FEEDBACK_ERROR_NONE);
137 * @brief Positive test case of feedback_play_type()
139 static void utc_system_feedback_play_type_p(void)
143 for (i = 0; i < FEEDBACK_PATTERN_END; ++i) {
144 dts_message(API_NAME_FEEDBACK_PLAY_TYPE, "Play [%d] pattern", i);
146 ret = feedback_play_type(FEEDBACK_TYPE_SOUND, i);
147 dts_check_eq(API_NAME_FEEDBACK_PLAY_TYPE, ret, FEEDBACK_ERROR_NONE, "Sound Test");
149 ret = feedback_play_type(FEEDBACK_TYPE_VIBRATION, i);
150 dts_check_eq(API_NAME_FEEDBACK_PLAY_TYPE, ret, FEEDBACK_ERROR_NONE, "Vibration Test");
155 * @brief Negative test case of feedback_play_type()
157 static void utc_system_feedback_play_type_n_1(void)
161 ret = feedback_play_type(-1, FEEDBACK_PATTERN_TAP);
162 dts_check_ne(API_NAME_FEEDBACK_PLAY_TYPE, ret, FEEDBACK_ERROR_NONE);
166 * @brief Negative test case of feedback_play_type()
168 static void utc_system_feedback_play_type_n_2(void)
172 ret = feedback_play_type(FEEDBACK_TYPE_SOUND, -1);
173 dts_check_ne(API_NAME_FEEDBACK_PLAY_TYPE, ret, FEEDBACK_ERROR_NONE);
177 * @brief Positive test case of feedback_get_resource_path()
179 static void utc_system_feedback_get_resource_path_p(void)
184 for (i = 0; i < FEEDBACK_PATTERN_END; ++i) {
185 dts_message(API_NAME_FEEDBACK_GET_RESOURCE_PATH, "Get [%d] pattern path", i);
187 ret = feedback_get_resource_path(FEEDBACK_TYPE_SOUND, i, &str);
188 dts_check_eq(API_NAME_FEEDBACK_GET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE,
189 "[%d] sound file path : %s", i, str);
193 ret = feedback_get_resource_path(FEEDBACK_TYPE_VIBRATION, i, &str);
194 dts_check_eq(API_NAME_FEEDBACK_GET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE,
195 "[%d] vibration file path : %s", i, str);
202 * @brief Negative test case of feedback_get_resource_path()
204 static void utc_system_feedback_get_resource_path_n_1(void)
209 ret = feedback_get_resource_path(-1, FEEDBACK_PATTERN_TAP, &str);
210 dts_check_ne(API_NAME_FEEDBACK_GET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
214 * @brief Negative test case of feedback_get_resource_path()
216 static void utc_system_feedback_get_resource_path_n_2(void)
221 ret = feedback_get_resource_path(FEEDBACK_TYPE_SOUND, -1, &str);
222 dts_check_ne(API_NAME_FEEDBACK_GET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
226 * @brief Negative test case of feedback_get_resource_path()
228 static void utc_system_feedback_get_resource_path_n_3(void)
232 ret = feedback_get_resource_path(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_TAP, NULL);
233 dts_check_ne(API_NAME_FEEDBACK_GET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
237 * @brief Positive test case of feedback_set_resource_path()
239 static void utc_system_feedback_set_resource_path_p(void)
243 for (i = 0; i < FEEDBACK_PATTERN_END; ++i) {
244 dts_message(API_NAME_FEEDBACK_SET_RESOURCE_PATH, "Set [%d] pattern path", i);
246 ret = feedback_set_resource_path(FEEDBACK_TYPE_SOUND, i, SOUND_FILE_PATH);
247 dts_check_eq(API_NAME_FEEDBACK_SET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
249 ret = feedback_set_resource_path(FEEDBACK_TYPE_VIBRATION, i, VIBRATION_FILE_PATH);
250 dts_check_eq(API_NAME_FEEDBACK_SET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
255 * @brief Negative test case of feedback_set_resource_path()
257 static void utc_system_feedback_set_resource_path_n_1(void)
261 ret = feedback_set_resource_path(-1, FEEDBACK_PATTERN_TAP, SOUND_FILE_PATH);
262 dts_check_ne(API_NAME_FEEDBACK_SET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
266 * @brief Negative test case of feedback_set_resource_path()
268 static void utc_system_feedback_set_resource_path_n_2(void)
272 ret = feedback_set_resource_path(FEEDBACK_TYPE_SOUND, -1, SOUND_FILE_PATH);
273 dts_check_ne(API_NAME_FEEDBACK_SET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
277 * @brief Negative test case of feedback_set_resource_path()
279 static void utc_system_feedback_set_resource_path_n_3(void)
283 ret = feedback_set_resource_path(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_TAP, NULL);
284 dts_check_ne(API_NAME_FEEDBACK_SET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);
288 * @brief Negative test case of feedback_set_resource_path()
290 static void utc_system_feedback_set_resource_path_n_4(void)
294 ret = feedback_set_resource_path(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_TAP, "/usr/share/no_file");
295 dts_check_ne(API_NAME_FEEDBACK_SET_RESOURCE_PATH, ret, FEEDBACK_ERROR_NONE);