sound: Intialize theme id by default value only when it hasn't been initialized
[platform/core/system/libsvi.git] / tests / main.c
1 #include <stdio.h>
2 #include <strings.h>
3
4 #include "test-feedback.h"
5 #include "test-feedback-internal.h"
6
7 #define LOG_RESULT(ret, func)   printf("[%s] %s\n", (ret)? "PASS": "FAIL", func)
8
9 void test_all()
10 {
11         printf("---------------- FEEDBACK TEST -----------------\n");
12         printf("  For more details,\n");
13         printf("  check dlog with 'FEEDBACK_TEST' tag.\n");
14         printf("------------------------------------------------\n");
15
16         LOG_RESULT(TEST_FEEDBACK_INITIALIZE(), "TEST_FEEDBACK_INITIALIZE");
17         LOG_RESULT(TEST_FEEDBACK_DEINITIALIZE(), "TEST_FEEDBACK_DEINITIALIZE");
18         LOG_RESULT(TEST_FEEDBACK_IS_SUPPORTED_PATTERN(), "TEST_FEEDBACK_IS_SUPPORTED_PATTERN");
19         LOG_RESULT(TEST_FEEDBACK_PLAY(), "TEST_FEEDBACK_PLAY");
20         LOG_RESULT(TEST_FEEDBACK_PLAY_TYPE(), "TEST_FEEDBACK_PLAY_TYPE");
21         LOG_RESULT(TEST_FEEDBACK_STOP(), "TEST_FEEDBACK_STOP");
22
23         TEST_INTERNAL_INIT();
24
25         LOG_RESULT(TEST_FEEDBACK_PLAY_TYPE_BY_NAME(), "TEST_FEEDBACK_PLAY_TYPE_BY_NAME");
26         LOG_RESULT(TEST_FEEDBACK_PLAY_INTERNAL(), "TEST_FEEDBACK_PLAY_INTERNAL");
27         LOG_RESULT(TEST_FEEDBACK_PLAY_SOUNDPATH_INTERNAL(), "TEST_FEEDBACK_PLAY_SOUNDPATH_INTERNAL");
28         LOG_RESULT(TEST_FEEDBACK_PLAY_TYPE_INTERNAL(), "TEST_FEEDBACK_PLAY_TYPE_INTERNAL");
29         LOG_RESULT(TEST_FEEDBACK_PLAY_TYPE_SOUNDPATH_INTERNAL(), "TEST_FEEDBACK_PLAY_TYPE_SOUNDPATH_INTERNAL");
30         LOG_RESULT(TEST_FEEDBACK_GET_COUNT_OF_SOUND_THEME_INTERNAL(), "TEST_FEEDBACK_GET_COUNT_OF_SOUND_THEME_INTERNAL");
31         LOG_RESULT(TEST_FEEDBACK_GET_SOUND_THEME_ID_INTERNAL(), "TEST_FEEDBACK_GET_SOUND_THEME_ID_INTERNAL");
32         LOG_RESULT(TEST_FEEDBACK_SET_SOUND_THEME_ID_INTERNAL(), "TEST_FEEDBACK_SET_SOUND_THEME_ID_INTERNAL");
33         LOG_RESULT(TEST_FEEDBACK_GET_SOUND_THEME_IDS_INTERNAL(), "TEST_FEEDBACK_GET_SOUND_THEME_IDS_INTERNAL");
34         LOG_RESULT(TEST_FEEDBACK_PUT_SOUND_THEME_IDS_INTERNAL(), "TEST_FEEDBACK_PUT_SOUND_THEME_IDS_INTERNAL");
35         LOG_RESULT(TEST_FEEDBACK_PLAY_TYPE_WITH_FLAGS_INTERNAL(), "TEST_FEEDBACK_PLAY_TYPE_WITH_FLAGS_INTERNAL");
36 }
37
38 void show_usage()
39 {
40         printf("Usage: feedback-test [OPTION] ...\n");
41         printf("OPTION: \n");
42         printf("  -a\t\t\tTest all APIs\n");
43         printf("  -p <pattern name>\tPlay feedback with pattern name\n");
44         printf("  \t-s\t\tfeedback type sound\n");
45         printf("  \t-v\t\tfeedback type vibration\n");
46 }
47
48 void test_play(int argc, char **argv)
49 {
50         int index = 1;
51         const char *name = NULL;
52         bool sound = false, vibration = false;
53
54         while(index < argc) {
55                 if (0 == strcasecmp(argv[index], "-p")) {
56                         if (name) {
57                                 show_usage();
58                                 break;
59                         }
60                         index++;
61                         name = argv[index];
62                 } else if (0 == strcasecmp(argv[index], "-s"))
63                         sound = true;
64                 else if (0 == strcasecmp(argv[index], "-v"))
65                         vibration = true;
66                 else {
67                         show_usage();
68                         return ;
69                 }
70
71                 index++;
72         }
73
74         if (!name) {
75                 show_usage();
76                 return;
77         }
78
79         if (!sound && !vibration)
80                 feedback_play_by_name(name);
81         else if (sound)
82                 printf("return: %s\n", feedback_play_sound_by_name(name));
83         else if (vibration)
84                 printf("return: %s\n", feedback_play_vibration_by_name(name));
85
86 }
87
88 int main(int argc, char **argv)
89 {
90         if (argc < 2) {
91                 show_usage();
92                 return 0;
93         }
94
95         if ((argc == 2) && (0 == strcasecmp(argv[1], "-a"))) {
96                 test_all();
97                 return 0;
98         }
99
100         if (argc >= 3)
101                 test_play(argc, argv);
102         else
103                 show_usage();
104
105         return 0;
106 }