• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "napi/native_api.h"
17 #include "hilog/log.h"
18 #include "BasicServicesKit/oh_commonevent.h"
19 #include "BasicServicesKit/oh_commonevent_support.h"
20 #include "common.h"
21 
CreateParameters(napi_env env,napi_callback_info info)22 static napi_value CreateParameters(napi_env env, napi_callback_info info)
23 {
24     parameters = OH_CommonEvent_CreateParameters();
25     OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "CreateParameters",
26         "OH_CommonEvent_CreateParameters: %{public}p", parameters);
27     ASSERT_OBJNE(parameters, nullptr);
28     NAPI_END;
29 }
30 
DestroyParameters(napi_env env,napi_callback_info info)31 static napi_value DestroyParameters(napi_env env, napi_callback_info info)
32 {
33     if (parameters != nullptr) {
34         OH_CommonEvent_DestroyParameters(parameters);
35         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
36             "OH_CommonEvent_DestroyParameters success");
37         parameters = nullptr;
38     }
39     NAPI_END;
40 }
41 
SetIntToParameters(napi_env env,napi_callback_info info)42 static napi_value SetIntToParameters(napi_env env, napi_callback_info info)
43 {
44     parameters = OH_CommonEvent_CreateParameters();
45     int value = PARAM_1;
46     ASSERT_EQ(OH_CommonEvent_SetIntToParameters(parameters, KEY_INT, value), COMMONEVENT_ERR_OK);
47     OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "SetIntToParameters",
48         "OH_CommonEvent_SetIntToParameters: %{public}d", value);
49     int ret = OH_CommonEvent_GetIntFromParameters(parameters, KEY_INT, PARAM_1);
50     OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "SetIntToParameters",
51         "OH_CommonEvent_GetIntFromParameters: %{public}d", ret);
52     ASSERT_EQ(ret, value);
53     if (parameters != nullptr) {
54         OH_CommonEvent_DestroyParameters(parameters);
55         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
56             "OH_CommonEvent_DestroyParameters success");
57         parameters = nullptr;
58     }
59     NAPI_END;
60 }
61 
SetIntArrayToParameters(napi_env env,napi_callback_info info)62 static napi_value SetIntArrayToParameters(napi_env env, napi_callback_info info)
63 {
64     parameters = OH_CommonEvent_CreateParameters();
65     int value[] = {PARAM_1, PARAM_4, PARAM_6};
66     size_t num = sizeof(value) / sizeof(int);
67     ASSERT_EQ(OH_CommonEvent_SetIntArrayToParameters(parameters, KEY_INT_ARRAY, value, num),
68               COMMONEVENT_ERR_OK);
69     OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "SetIntArrayToParameters",
70         "OH_CommonEvent_SetIntArrayToParameters: %{public}d", num);
71     int* ptr = nullptr;
72     size_t ret = OH_CommonEvent_GetIntArrayFromParameters(parameters, KEY_INT_ARRAY, &ptr);
73     OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "SetIntArrayToParameters",
74         "OH_CommonEvent_GetIntArrayFromParameters: %{public}d", ret);
75     ASSERT_EQ(ret, num);
76     if (parameters != nullptr) {
77         OH_CommonEvent_DestroyParameters(parameters);
78         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
79             "OH_CommonEvent_DestroyParameters success");
80         parameters = nullptr;
81     }
82     NAPI_END;
83 }
84 
SetLongToParameters(napi_env env,napi_callback_info info)85 static napi_value SetLongToParameters(napi_env env, napi_callback_info info)
86 {
87     parameters = OH_CommonEvent_CreateParameters();
88     long value = PARAM_1;
89     ASSERT_EQ(OH_CommonEvent_SetLongToParameters(parameters, KEY_LONG, value), COMMONEVENT_ERR_OK);
90     ASSERT_EQ(OH_CommonEvent_GetLongFromParameters(parameters, KEY_LONG, PARAM_0), value);
91     if (parameters != nullptr) {
92         OH_CommonEvent_DestroyParameters(parameters);
93         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
94             "OH_CommonEvent_DestroyParameters success");
95         parameters = nullptr;
96     }
97     NAPI_END;
98 }
99 
SetLongArrayToParameters(napi_env env,napi_callback_info info)100 static napi_value SetLongArrayToParameters(napi_env env, napi_callback_info info)
101 {
102     parameters = OH_CommonEvent_CreateParameters();
103     long value[] = {PARAM_1, PARAM_4, PARAM_6};
104     size_t num = sizeof(value) / sizeof(long);
105     ASSERT_EQ(OH_CommonEvent_SetLongArrayToParameters(parameters, KEY_LONG_ARRAY, value, num),
106               COMMONEVENT_ERR_OK);
107     long* ptr = nullptr;
108     size_t ret = OH_CommonEvent_GetLongArrayFromParameters(parameters, KEY_LONG_ARRAY, &ptr);
109     ASSERT_EQ(ret, num);
110     if (parameters != nullptr) {
111         OH_CommonEvent_DestroyParameters(parameters);
112         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
113             "OH_CommonEvent_DestroyParameters success");
114         parameters = nullptr;
115     }
116     NAPI_END;
117 }
118 
SetDoubleToParameters(napi_env env,napi_callback_info info)119 static napi_value SetDoubleToParameters(napi_env env, napi_callback_info info)
120 {
121     parameters = OH_CommonEvent_CreateParameters();
122     double  value = PARAM_1;
123     ASSERT_EQ(OH_CommonEvent_SetDoubleToParameters(parameters, KEY_DOUBLE, value), COMMONEVENT_ERR_OK);
124     ASSERT_EQ(OH_CommonEvent_GetDoubleFromParameters(parameters, KEY_DOUBLE, PARAM_0), value);
125     if (parameters != nullptr) {
126         OH_CommonEvent_DestroyParameters(parameters);
127         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
128             "OH_CommonEvent_DestroyParameters success");
129         parameters = nullptr;
130     }
131     NAPI_END;
132 }
133 
SetDoubleArrayToParameters(napi_env env,napi_callback_info info)134 static napi_value SetDoubleArrayToParameters(napi_env env, napi_callback_info info)
135 {
136     parameters = OH_CommonEvent_CreateParameters();
137     double  value[] = {PARAM_1, PARAM_4, PARAM_6};
138     size_t num = sizeof(value) / sizeof(double);
139     ASSERT_EQ(OH_CommonEvent_SetDoubleArrayToParameters(parameters, KEY_DOUBLE_ARRAY, value, num),
140               COMMONEVENT_ERR_OK);
141     double * ptr = nullptr;
142     size_t ret = OH_CommonEvent_GetDoubleArrayFromParameters(parameters, KEY_DOUBLE_ARRAY, &ptr);
143     ASSERT_EQ(ret, num);
144     if (parameters != nullptr) {
145         OH_CommonEvent_DestroyParameters(parameters);
146         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
147             "OH_CommonEvent_DestroyParameters success");
148         parameters = nullptr;
149     }
150     NAPI_END;
151 }
152 
SetBoolToParameters(napi_env env,napi_callback_info info)153 static napi_value SetBoolToParameters(napi_env env, napi_callback_info info)
154 {
155     parameters = OH_CommonEvent_CreateParameters();
156     bool value = true;
157     ASSERT_EQ(OH_CommonEvent_SetBoolToParameters(parameters, KEY_BOOL, value), COMMONEVENT_ERR_OK);
158     ASSERT_EQ(OH_CommonEvent_GetBoolFromParameters(parameters, KEY_BOOL, false), value);
159     if (parameters != nullptr) {
160         OH_CommonEvent_DestroyParameters(parameters);
161         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
162             "OH_CommonEvent_DestroyParameters success");
163         parameters = nullptr;
164     }
165     NAPI_END;
166 }
167 
SetBoolArrayToParameters(napi_env env,napi_callback_info info)168 static napi_value SetBoolArrayToParameters(napi_env env, napi_callback_info info)
169 {
170     parameters = OH_CommonEvent_CreateParameters();
171     bool value[] = {true, false, true};
172     size_t num = sizeof(value) / sizeof(bool);
173     ASSERT_EQ(OH_CommonEvent_SetBoolArrayToParameters(parameters, KEY_BOOL_ARRAY, value, num),
174               COMMONEVENT_ERR_OK);
175     bool* ptr = nullptr;
176     size_t ret = OH_CommonEvent_GetBoolArrayFromParameters(parameters, KEY_BOOL_ARRAY, &ptr);
177     ASSERT_EQ(ret, num);
178     if (parameters != nullptr) {
179         OH_CommonEvent_DestroyParameters(parameters);
180         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
181             "OH_CommonEvent_DestroyParameters success");
182         parameters = nullptr;
183     }
184     NAPI_END;
185 }
186 
SetCharToParameters(napi_env env,napi_callback_info info)187 static napi_value SetCharToParameters(napi_env env, napi_callback_info info)
188 {
189     parameters = OH_CommonEvent_CreateParameters();
190     char value = 'a';
191     ASSERT_EQ(OH_CommonEvent_SetCharToParameters(parameters, KEY_CHAR, value), COMMONEVENT_ERR_OK);
192     ASSERT_EQ(OH_CommonEvent_GetCharFromParameters(parameters, KEY_CHAR, 'b'), value);
193     if (parameters != nullptr) {
194         OH_CommonEvent_DestroyParameters(parameters);
195         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
196             "OH_CommonEvent_DestroyParameters success");
197         parameters = nullptr;
198     }
199     NAPI_END;
200 }
201 
SetCharArrayToParameters(napi_env env,napi_callback_info info)202 static napi_value SetCharArrayToParameters(napi_env env, napi_callback_info info)
203 {
204     parameters = OH_CommonEvent_CreateParameters();
205     char value[] = {'a', 'b', 'c'};
206     size_t num = sizeof(value) / sizeof(char);
207     ASSERT_EQ(OH_CommonEvent_SetCharArrayToParameters(parameters, KEY_CHAR_ARRAY, value, num),
208               COMMONEVENT_ERR_OK);
209     char* ptr = nullptr;
210     size_t ret = OH_CommonEvent_GetCharArrayFromParameters(parameters, KEY_CHAR_ARRAY, &ptr);
211     ASSERT_EQ(ret, num + 1);
212     if (parameters != nullptr) {
213         OH_CommonEvent_DestroyParameters(parameters);
214         OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "DestroyParameters",
215             "OH_CommonEvent_DestroyParameters success");
216         parameters = nullptr;
217     }
218     NAPI_END;
219 }
220 
221 
222 
223