Allow to create ArrayBuffer with empty external user data (#3373)
JerryScript-DCO-1.0-Signed-off-by: Roland Takacs r.takacs2@partner.samsung.com
This commit is contained in:
committed by
Robert Fancsik
parent
35c0a6e299
commit
c5ed46f5ac
@@ -250,6 +250,23 @@ main (void)
|
||||
jerry_release_value (arraybuffer);
|
||||
}
|
||||
|
||||
/* Test zero length external ArrayBuffer */
|
||||
{
|
||||
const uint32_t length = 0;
|
||||
jerry_value_t arraybuffer = jerry_create_arraybuffer_external (length, NULL, NULL);
|
||||
TEST_ASSERT (!jerry_value_is_error (arraybuffer));
|
||||
TEST_ASSERT (jerry_value_is_arraybuffer (arraybuffer));
|
||||
TEST_ASSERT (jerry_get_arraybuffer_byte_length (arraybuffer) == length);
|
||||
|
||||
uint8_t data[20];
|
||||
memset (data, 11, 20);
|
||||
|
||||
jerry_length_t bytes_written = jerry_arraybuffer_write (arraybuffer, 0, data, 20);
|
||||
TEST_ASSERT (bytes_written == 0);
|
||||
|
||||
jerry_release_value (arraybuffer);
|
||||
}
|
||||
|
||||
/* Test ArrayBuffer with buffer allocated externally */
|
||||
{
|
||||
const uint32_t buffer_size = 15;
|
||||
@@ -346,14 +363,6 @@ main (void)
|
||||
jerry_release_value (buffer);
|
||||
}
|
||||
|
||||
/* Test ArrayBuffer external with invalid arguments */
|
||||
{
|
||||
jerry_value_t input_buffer = jerry_create_arraybuffer_external (0, NULL, NULL);
|
||||
TEST_ASSERT (jerry_value_is_error (input_buffer));
|
||||
TEST_ASSERT (jerry_get_error_type (input_buffer) == JERRY_ERROR_RANGE);
|
||||
jerry_release_value (input_buffer);
|
||||
}
|
||||
|
||||
/* Test ArrayBuffer detach */
|
||||
{
|
||||
const uint32_t length = 1;
|
||||
|
||||
Reference in New Issue
Block a user