@@ -29,7 +29,7 @@ napi_value testGetVersion(napi_env env, napi_callback_info info) {
29
29
uint32_t version ;
30
30
napi_value result ;
31
31
NAPI_CALL (env , napi_get_version (env , & version ));
32
- NAPI_CALL (env , napi_create_number (env , version , & result ));
32
+ NAPI_CALL (env , napi_create_number (env , version , & result ));
33
33
return result ;
34
34
}
35
35
@@ -90,6 +90,35 @@ napi_value testNapiErrorCleanup(napi_env env, napi_callback_info info) {
90
90
return result ;
91
91
}
92
92
93
+ napi_value testNapiTypeof (napi_env env , napi_callback_info info ) {
94
+ size_t argc = 1 ;
95
+ napi_value args [1 ];
96
+ NAPI_CALL (env , napi_get_cb_info (env , info , & argc , args , NULL , NULL ));
97
+
98
+ napi_valuetype argument_type ;
99
+ NAPI_CALL (env , napi_typeof (env , args [0 ], & argument_type ));
100
+
101
+ napi_value result ;
102
+ if (argument_type == napi_number ) {
103
+ NAPI_CALL (env , napi_create_string_utf8 (env , "number" , -1 , & result ));
104
+ } else if (argument_type == napi_string ) {
105
+ NAPI_CALL (env , napi_create_string_utf8 (env , "string" , -1 , & result ));
106
+ } else if (argument_type == napi_function ) {
107
+ NAPI_CALL (env , napi_create_string_utf8 (env , "function" , -1 , & result ));
108
+ } else if (argument_type == napi_object ) {
109
+ NAPI_CALL (env , napi_create_string_utf8 (env , "object" , -1 , & result ));
110
+ } else if (argument_type == napi_boolean ) {
111
+ NAPI_CALL (env , napi_create_string_utf8 (env , "boolean" , -1 , & result ));
112
+ } else if (argument_type == napi_undefined ) {
113
+ NAPI_CALL (env , napi_create_string_utf8 (env , "undefined" , -1 , & result ));
114
+ } else if (argument_type == napi_symbol ) {
115
+ NAPI_CALL (env , napi_create_string_utf8 (env , "symbol" , -1 , & result ));
116
+ } else if (argument_type == napi_null ) {
117
+ NAPI_CALL (env , napi_create_string_utf8 (env , "null" , -1 , & result ));
118
+ }
119
+ return result ;
120
+ }
121
+
93
122
void Init (napi_env env , napi_value exports , napi_value module , void * priv ) {
94
123
napi_property_descriptor descriptors [] = {
95
124
DECLARE_NAPI_PROPERTY ("testStrictEquals" , testStrictEquals ),
@@ -100,6 +129,7 @@ void Init(napi_env env, napi_value exports, napi_value module, void* priv) {
100
129
DECLARE_NAPI_PROPERTY ("getNull" , getNull ),
101
130
DECLARE_NAPI_PROPERTY ("createNapiError" , createNapiError ),
102
131
DECLARE_NAPI_PROPERTY ("testNapiErrorCleanup" , testNapiErrorCleanup ),
132
+ DECLARE_NAPI_PROPERTY ("testNapiTypeof" , testNapiTypeof ),
103
133
};
104
134
105
135
NAPI_CALL_RETURN_VOID (env , napi_define_properties (
0 commit comments