Add test_dataview (#4677)
JerryScript-DCO-1.0-Signed-off-by: Gergo Csizi csgergo92@gmail.com
This commit is contained in:
@@ -40,6 +40,28 @@ test_ext_function (const jerry_call_info_t *call_info_p, /**< call information *
|
||||
return jerry_create_boolean (true);
|
||||
} /* test_ext_function */
|
||||
|
||||
static jerry_object_type_t
|
||||
test_namespace (const jerry_parse_options_t module_parse_options) /** module options */
|
||||
{
|
||||
jerry_value_t module = jerry_parse ((const jerry_char_t *) "", 0, &module_parse_options);
|
||||
jerry_value_t module_linked = jerry_module_link (module, NULL, NULL);
|
||||
jerry_object_type_t namespace = jerry_module_get_namespace (module);
|
||||
jerry_release_value (module_linked);
|
||||
jerry_release_value (module);
|
||||
return namespace;
|
||||
} /* test_namespace */
|
||||
|
||||
static jerry_value_t
|
||||
test_dataview (void)
|
||||
{
|
||||
jerry_value_t arraybuffer = jerry_create_arraybuffer (10);
|
||||
jerry_value_t dataview = jerry_create_dataview (arraybuffer, 0, 4);
|
||||
|
||||
jerry_release_value (arraybuffer);
|
||||
|
||||
return dataview;
|
||||
} /* test_dataview */
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
@@ -74,6 +96,7 @@ main (void)
|
||||
const jerry_char_t regexp_object[] = "new RegExp()";
|
||||
const jerry_char_t string_object[] = "new String('foo')";
|
||||
const jerry_char_t weak_ref_object[] = "new WeakRef({})";
|
||||
const jerry_char_t error_object[] = "new Error()";
|
||||
|
||||
jerry_parse_options_t module_parse_options;
|
||||
module_parse_options.options = JERRY_PARSE_MODULE;
|
||||
@@ -88,6 +111,7 @@ main (void)
|
||||
ENTRY (JERRY_OBJECT_TYPE_NONE, jerry_create_error (JERRY_ERROR_TYPE, (const jerry_char_t *) "error")),
|
||||
|
||||
ENTRY (JERRY_OBJECT_TYPE_GENERIC, jerry_create_object ()),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_MODULE_NAMESPACE, test_namespace (module_parse_options), JERRY_FEATURE_MODULE),
|
||||
ENTRY (JERRY_OBJECT_TYPE_ARRAY, jerry_create_array (10)),
|
||||
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_PROXY, EVALUATE (proxy_object), JERRY_FEATURE_PROXY),
|
||||
@@ -97,6 +121,8 @@ main (void)
|
||||
|
||||
ENTRY (JERRY_OBJECT_TYPE_SCRIPT, PARSE (NULL)),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_MODULE, PARSE (&module_parse_options), JERRY_FEATURE_MODULE),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_PROMISE, jerry_create_promise (), JERRY_FEATURE_PROMISE),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_DATAVIEW, test_dataview (), JERRY_FEATURE_DATAVIEW),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_FUNCTION, EVALUATE (arrow_function), JERRY_FEATURE_SYMBOL),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_FUNCTION, EVALUATE (async_arrow_function), JERRY_FEATURE_SYMBOL),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_FUNCTION, EVALUATE (generator_function), JERRY_FEATURE_SYMBOL),
|
||||
@@ -108,6 +134,8 @@ main (void)
|
||||
ENTRY (JERRY_OBJECT_TYPE_FUNCTION, jerry_create_external_function (test_ext_function)),
|
||||
ENTRY (JERRY_OBJECT_TYPE_FUNCTION, EVALUATE (getter_function)),
|
||||
ENTRY (JERRY_OBJECT_TYPE_FUNCTION, EVALUATE (setter_function)),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_ERROR, EVALUATE (error_object), JERRY_FEATURE_ERROR_MESSAGES),
|
||||
ENTRY_IF (JERRY_OBJECT_TYPE_ARRAYBUFFER, jerry_create_arraybuffer (10), JERRY_FEATURE_TYPEDARRAY),
|
||||
|
||||
ENTRY (JERRY_OBJECT_TYPE_ARGUMENTS, EVALUATE (mapped_arguments)),
|
||||
ENTRY (JERRY_OBJECT_TYPE_ARGUMENTS, EVALUATE (unmapped_arguments)),
|
||||
@@ -125,6 +153,7 @@ main (void)
|
||||
for (size_t idx = 0; idx < sizeof (entries) / sizeof (entries[0]); idx++)
|
||||
{
|
||||
jerry_object_type_t type_info = jerry_object_get_type (entries[idx].value);
|
||||
|
||||
TEST_ASSERT (!entries[idx].active || type_info == entries[idx].type_info);
|
||||
jerry_release_value (entries[idx].value);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user