diff --git a/CMakeLists.txt b/CMakeLists.txt index 609c2b4f94..6d2a3eb69b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -421,7 +421,7 @@ project (Jerry CXX C ASM) foreach(SOURCE_UNIT_TEST_MAIN ${SOURCE_UNIT_TEST_MAIN_MODULES}) get_filename_component(TARGET_NAME ${SOURCE_UNIT_TEST_MAIN} NAME_WE) - set(TARGET_NAME unit_${TARGET_NAME}) + set(TARGET_NAME unit-${TARGET_NAME}) set(CORE_TARGET_NAME unittests.jerry-core) set(FDLIBM_TARGET_NAME unittests.jerry-fdlibm${SUFFIX_THIRD_PARTY_LIB}) diff --git a/Makefile b/Makefile index e303e0c224..e1909f42c9 100644 --- a/Makefile +++ b/Makefile @@ -207,7 +207,7 @@ unittests: $(BUILD_DIR)/native (echo "cppcheck run failed. See $(OUT_DIR)/$@/cppcheck.log for details."; exit 1;) @ $(MAKE) -C $(BUILD_DIR)/native VERBOSE=1 $@ &>$(OUT_DIR)/$@/make.log || \ (echo "Build failed. See $(OUT_DIR)/$@/make.log for details."; exit 1;) - @ cp $(BUILD_DIR)/native/unit_test_* $(OUT_DIR)/$@ + @ cp $(BUILD_DIR)/native/unit-test-* $(OUT_DIR)/$@ $(BUILD_ALL)_native: $(BUILD_DIRS_NATIVE) @ mkdir -p $(OUT_DIR)/$@ diff --git a/tests/unit/common.h b/tests/unit/common.h deleted file mode 100644 index c3800e0c7b..0000000000 --- a/tests/unit/common.h +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2014-2015 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef COMMON_H -#define COMMON_H - -#define NAME_TO_ID(op) (__op__idx_##op) - -#define __OPCODE_SIZE(name, arg1, arg2, arg3) \ - (uint8_t) (sizeof (__op_##name) + 1), - -static uint8_t opcode_sizes[] = -{ - OP_LIST (OPCODE_SIZE) - 0 -}; - -static bool opcodes_equal (const opcode_t *, opcode_t *, uint16_t) __attr_unused___; - -static bool -opcodes_equal (const opcode_t *opcodes1, opcode_t *opcodes2, uint16_t size) -{ - uint16_t i; - for (i = 0; i < size; i++) - { - uint8_t opcode_num1 = opcodes1[i].op_idx, opcode_num2 = opcodes2[i].op_idx; - uint8_t j; - - if (opcode_num1 != opcode_num2) - { - return false; - } - - if (opcode_num1 == NAME_TO_ID (nop) || opcode_num1 == NAME_TO_ID (ret)) - { - return true; - } - - for (j = 1; j < opcode_sizes[opcode_num1]; j++) - { - if (((uint8_t*)&opcodes1[i])[j] != ((uint8_t*)&opcodes2[i])[j]) - { - return false; - } - } - } - - return true; -} - -#endif // COMMON_H diff --git a/tests/unit/test_api.cpp b/tests/unit/test-api.cpp similarity index 79% rename from tests/unit/test_api.cpp rename to tests/unit/test-api.cpp index ada2e6de13..ddd8977d00 100644 --- a/tests/unit/test_api.cpp +++ b/tests/unit/test-api.cpp @@ -13,14 +13,11 @@ * limitations under the License. */ -#include -#include -#include -#include - #include "jerry.h" #include "jerry-api.h" +#include "test-common.h" + const char *test_source = ( "this.t = 1; " "function f () { " @@ -111,17 +108,17 @@ handler (const jerry_api_object_t *function_obj_p, printf ("ok %p %p %p %d %p\n", function_obj_p, this_p, args_p, args_cnt, ret_val_p); - assert (args_cnt == 2); + JERRY_ASSERT (args_cnt == 2); - assert (args_p[0].type == JERRY_API_DATA_TYPE_STRING); + JERRY_ASSERT (args_p[0].type == JERRY_API_DATA_TYPE_STRING); sz = jerry_api_string_to_char_buffer (args_p[0].v_string, NULL, 0); - assert (sz == -2); + JERRY_ASSERT (sz == -2); sz = jerry_api_string_to_char_buffer (args_p[0].v_string, buffer, -sz); - assert (sz == 2); - assert (!strcmp (buffer, "1")); + JERRY_ASSERT (sz == 2); + JERRY_ASSERT (!strcmp (buffer, "1")); - assert (args_p[1].type == JERRY_API_DATA_TYPE_BOOLEAN); - assert (args_p[1].v_bool == true); + JERRY_ASSERT (args_p[1].type == JERRY_API_DATA_TYPE_BOOLEAN); + JERRY_ASSERT (args_p[1].v_bool == true); test_api_init_api_value_string (ret_val_p, "string from handler"); @@ -149,7 +146,7 @@ handler_throw_test (const jerry_api_object_t *function_obj_p, static void handler_construct_freecb (uintptr_t native_p) { - assert (native_p == (uintptr_t) 0x0012345678abcdefull); + JERRY_ASSERT (native_p == (uintptr_t) 0x0012345678abcdefull); printf ("ok object free callback\n"); test_api_is_free_callback_was_called = true; @@ -164,12 +161,12 @@ handler_construct (const jerry_api_object_t *function_obj_p, { printf ("ok construct %p %p %p %d %p\n", function_obj_p, this_p, args_p, args_cnt, ret_val_p); - assert (this_p != NULL); - assert (this_p->type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (this_p != NULL); + JERRY_ASSERT (this_p->type == JERRY_API_DATA_TYPE_OBJECT); - assert (args_cnt == 1); - assert (args_p[0].type == JERRY_API_DATA_TYPE_BOOLEAN); - assert (args_p[0].v_bool == true); + JERRY_ASSERT (args_cnt == 1); + JERRY_ASSERT (args_p[0].type == JERRY_API_DATA_TYPE_BOOLEAN); + JERRY_ASSERT (args_p[0].v_bool == true); jerry_api_set_object_field_value (this_p->v_object, "value_field", &args_p[0]); @@ -234,44 +231,44 @@ main (void) char buffer[32]; is_ok = jerry_parse (test_source, strlen (test_source)); - assert (is_ok); + JERRY_ASSERT (is_ok); is_ok = (jerry_run () == JERRY_COMPLETION_CODE_OK); - assert (is_ok); + JERRY_ASSERT (is_ok); global_obj_p = jerry_api_get_global (); // Get global.t is_ok = jerry_api_get_object_field_value (global_obj_p, "t", &val_t); - assert (is_ok - && val_t.type == JERRY_API_DATA_TYPE_FLOAT64 - && val_t.v_float64 == 1.0); + JERRY_ASSERT (is_ok + && val_t.type == JERRY_API_DATA_TYPE_FLOAT64 + && val_t.v_float64 == 1.0); jerry_api_release_value (&val_t); // Get global.foo is_ok = jerry_api_get_object_field_value (global_obj_p, "foo", &val_foo); - assert (is_ok - && val_foo.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_foo.type == JERRY_API_DATA_TYPE_OBJECT); // Call foo (4, 2) test_api_init_api_value_float64 (&args[0], 4); test_api_init_api_value_float64 (&args[1], 2); is_ok = jerry_api_call_function (val_foo.v_object, NULL, &res, args, 2); - assert (is_ok - && res.type == JERRY_API_DATA_TYPE_FLOAT64 - && res.v_float64 == 1.0); + JERRY_ASSERT (is_ok + && res.type == JERRY_API_DATA_TYPE_FLOAT64 + && res.v_float64 == 1.0); jerry_api_release_value (&res); // Get global.bar is_ok = jerry_api_get_object_field_value (global_obj_p, "bar", &val_bar); - assert (is_ok - && val_bar.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_bar.type == JERRY_API_DATA_TYPE_OBJECT); // Call bar (4, 2) is_ok = jerry_api_call_function (val_bar.v_object, NULL, &res, args, 2); - assert (is_ok - && res.type == JERRY_API_DATA_TYPE_FLOAT64 - && res.v_float64 == 5.0); + JERRY_ASSERT (is_ok + && res.type == JERRY_API_DATA_TYPE_FLOAT64 + && res.v_float64 == 5.0); jerry_api_release_value (&res); jerry_api_release_value (&val_bar); @@ -280,65 +277,65 @@ main (void) is_ok = jerry_api_set_object_field_value (global_obj_p, "t", &args[0]); - assert (is_ok); + JERRY_ASSERT (is_ok); jerry_api_release_value (&args[0]); // Call foo (4, 2) is_ok = jerry_api_call_function (val_foo.v_object, NULL, &res, args, 2); - assert (is_ok - && res.type == JERRY_API_DATA_TYPE_STRING); + JERRY_ASSERT (is_ok + && res.type == JERRY_API_DATA_TYPE_STRING); sz = jerry_api_string_to_char_buffer (res.v_string, NULL, 0); - assert (sz == -5); + JERRY_ASSERT (sz == -5); sz = jerry_api_string_to_char_buffer (res.v_string, buffer, -sz); - assert (sz == 5); + JERRY_ASSERT (sz == 5); jerry_api_release_value (&res); - assert (!strcmp (buffer, "abcd")); + JERRY_ASSERT (!strcmp (buffer, "abcd")); // Get global.A is_ok = jerry_api_get_object_field_value (global_obj_p, "A", &val_A); - assert (is_ok - && val_A.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_A.type == JERRY_API_DATA_TYPE_OBJECT); // Get A.prototype is_ok = jerry_api_is_constructor (val_A.v_object); - assert (is_ok); + JERRY_ASSERT (is_ok); is_ok = jerry_api_get_object_field_value (val_A.v_object, "prototype", &val_A_prototype); - assert (is_ok - && val_A_prototype.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_A_prototype.type == JERRY_API_DATA_TYPE_OBJECT); jerry_api_release_value (&val_A); // Set A.prototype.foo = global.foo is_ok = jerry_api_set_object_field_value (val_A_prototype.v_object, "foo", &val_foo); - assert (is_ok); + JERRY_ASSERT (is_ok); jerry_api_release_value (&val_A_prototype); jerry_api_release_value (&val_foo); // Get global.a is_ok = jerry_api_get_object_field_value (global_obj_p, "a", &val_a); - assert (is_ok - && val_a.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_a.type == JERRY_API_DATA_TYPE_OBJECT); // Get a.t is_ok = jerry_api_get_object_field_value (val_a.v_object, "t", &res); - assert (is_ok - && res.type == JERRY_API_DATA_TYPE_FLOAT64 - && res.v_float64 == 12.0); + JERRY_ASSERT (is_ok + && res.type == JERRY_API_DATA_TYPE_FLOAT64 + && res.v_float64 == 12.0); jerry_api_release_value (&res); // Get a.foo is_ok = jerry_api_get_object_field_value (val_a.v_object, "foo", &val_a_foo); - assert (is_ok - && val_a_foo.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_a_foo.type == JERRY_API_DATA_TYPE_OBJECT); // Call a.foo () is_ok = jerry_api_call_function (val_a_foo.v_object, val_a.v_object, &res, NULL, 0); - assert (is_ok - && res.type == JERRY_API_DATA_TYPE_FLOAT64 - && res.v_float64 == 12.0); + JERRY_ASSERT (is_ok + && res.type == JERRY_API_DATA_TYPE_FLOAT64 + && res.v_float64 == 12.0); jerry_api_release_value (&res); jerry_api_release_value (&val_a_foo); @@ -346,95 +343,95 @@ main (void) // Create native handler bound function object and set it to 'external' variable external_func_p = jerry_api_create_external_function (handler); - assert (external_func_p != NULL - && jerry_api_is_function (external_func_p) - && jerry_api_is_constructor (external_func_p)); + JERRY_ASSERT (external_func_p != NULL + && jerry_api_is_function (external_func_p) + && jerry_api_is_constructor (external_func_p)); test_api_init_api_value_object (&val_external, external_func_p); is_ok = jerry_api_set_object_field_value (global_obj_p, "external", &val_external); - assert (is_ok); + JERRY_ASSERT (is_ok); jerry_api_release_value (&val_external); jerry_api_release_object (external_func_p); // Call 'call_external' function that should call external function created above is_ok = jerry_api_get_object_field_value (global_obj_p, "call_external", &val_call_external); - assert (is_ok - && val_call_external.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_call_external.type == JERRY_API_DATA_TYPE_OBJECT); is_ok = jerry_api_call_function (val_call_external.v_object, global_obj_p, &res, NULL, 0); jerry_api_release_value (&val_call_external); - assert (is_ok - && res.type == JERRY_API_DATA_TYPE_STRING); + JERRY_ASSERT (is_ok + && res.type == JERRY_API_DATA_TYPE_STRING); sz = jerry_api_string_to_char_buffer (res.v_string, NULL, 0); - assert (sz == -20); + JERRY_ASSERT (sz == -20); sz = jerry_api_string_to_char_buffer (res.v_string, buffer, -sz); - assert (sz == 20); + JERRY_ASSERT (sz == 20); jerry_api_release_value (&res); - assert (!strcmp (buffer, "string from handler")); + JERRY_ASSERT (!strcmp (buffer, "string from handler")); // Create native handler bound function object and set it to 'external_construct' variable external_construct_p = jerry_api_create_external_function (handler_construct); - assert (external_construct_p != NULL - && jerry_api_is_function (external_construct_p) - && jerry_api_is_constructor (external_construct_p)); + JERRY_ASSERT (external_construct_p != NULL + && jerry_api_is_function (external_construct_p) + && jerry_api_is_constructor (external_construct_p)); test_api_init_api_value_object (&val_external_construct, external_construct_p); is_ok = jerry_api_set_object_field_value (global_obj_p, "external_construct", &val_external_construct); - assert (is_ok); + JERRY_ASSERT (is_ok); jerry_api_release_value (&val_external_construct); jerry_api_release_object (external_construct_p); // Call external function created above, as constructor test_api_init_api_value_bool (&args[0], true); is_ok = jerry_api_construct_object (external_construct_p, &res, args, 1); - assert (is_ok - && res.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && res.type == JERRY_API_DATA_TYPE_OBJECT); is_ok = jerry_api_get_object_field_value (res.v_object, "value_field", &val_value_field); // Get 'value_field' of constructed object - assert (is_ok - && val_value_field.type == JERRY_API_DATA_TYPE_BOOLEAN - && val_value_field.v_bool == true); + JERRY_ASSERT (is_ok + && val_value_field.type == JERRY_API_DATA_TYPE_BOOLEAN + && val_value_field.v_bool == true); jerry_api_release_value (&val_value_field); uintptr_t ptr; is_ok = jerry_api_get_object_native_handle (res.v_object, &ptr); - assert (is_ok - && ptr == (uintptr_t) 0x0012345678abcdefull); + JERRY_ASSERT (is_ok + && ptr == (uintptr_t) 0x0012345678abcdefull); jerry_api_release_value (&res); // Test: Throwing exception from native handler. throw_test_handler_p = jerry_api_create_external_function (handler_throw_test); - assert (throw_test_handler_p != NULL - && jerry_api_is_function (throw_test_handler_p)); + JERRY_ASSERT (throw_test_handler_p != NULL + && jerry_api_is_function (throw_test_handler_p)); test_api_init_api_value_object (&val_t, throw_test_handler_p); is_ok = jerry_api_set_object_field_value (global_obj_p, "throw_test", &val_t); - assert (is_ok); + JERRY_ASSERT (is_ok); jerry_api_release_value (&val_t); jerry_api_release_object (throw_test_handler_p); is_ok = jerry_api_get_object_field_value (global_obj_p, "call_throw_test", &val_t); - assert (is_ok - && val_t.type == JERRY_API_DATA_TYPE_OBJECT); + JERRY_ASSERT (is_ok + && val_t.type == JERRY_API_DATA_TYPE_OBJECT); is_ok = jerry_api_call_function (val_t.v_object, global_obj_p, &res, NULL, 0); - assert (is_ok); + JERRY_ASSERT (is_ok); jerry_api_release_value (&val_t); jerry_api_release_value (&res); @@ -444,7 +441,7 @@ main (void) jerry_cleanup (); - assert (test_api_is_free_callback_was_called); + JERRY_ASSERT (test_api_is_free_callback_was_called); // External Magic String jerry_init (JERRY_FLAG_SHOW_OPCODES); @@ -456,10 +453,10 @@ main (void) const char *ms_code_src_p = "var global = {}; var console = [1]; var process = 1;"; is_ok = jerry_parse (ms_code_src_p, strlen (ms_code_src_p)); - assert (is_ok); + JERRY_ASSERT (is_ok); is_ok = (jerry_run () == JERRY_COMPLETION_CODE_OK); - assert (is_ok); + JERRY_ASSERT (is_ok); jerry_cleanup (); diff --git a/tests/unit/test-common.h b/tests/unit/test-common.h new file mode 100644 index 0000000000..c56f71c048 --- /dev/null +++ b/tests/unit/test-common.h @@ -0,0 +1,46 @@ +/* Copyright 2014-2015 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef TEST_COMMON_H +#define TEST_COMMON_H + +#include "jrt.h" + +#include +#include +#include +#include +#include + +using namespace std; + +#define TEST_RANDOMIZE() \ +do \ +{ \ + struct timeval current_time; \ + gettimeofday (¤t_time, NULL); \ + \ + time_t seconds = current_time.tv_sec; \ + suseconds_t microseconds = current_time.tv_usec; \ + \ + uint32_t seed = (uint32_t) (seconds + microseconds); \ + \ + printf ("TEST_RANDOMIZE: seed is %u\n", seed); \ + \ + srand (seed); \ +} \ +while (0) + +#endif /* TEST_COMMON_H */ diff --git a/tests/unit/test_heap.cpp b/tests/unit/test-heap.cpp similarity index 91% rename from tests/unit/test_heap.cpp rename to tests/unit/test-heap.cpp index 46830fecaf..78700d6b01 100644 --- a/tests/unit/test_heap.cpp +++ b/tests/unit/test-heap.cpp @@ -13,17 +13,9 @@ * limitations under the License. */ -#include "jrt.h" #include "mem-allocator.h" -extern "C" -{ - extern void srand (unsigned int __seed); - extern int rand (void); - extern long int time (long int *__timer); - extern int printf (__const char *__restrict __format, ...); - extern void *memset (void *__s, int __c, size_t __n); -} +#include "test-common.h" // Heap size is 32K #define test_heap_size (32 * 1024) @@ -90,12 +82,9 @@ int main (int __attr_unused___ argc, char __attr_unused___ **argv) { - mem_heap_init (test_native_heap, sizeof (test_native_heap)); + TEST_RANDOMIZE (); - srand ((unsigned int) time (NULL)); - int k = rand (); - printf ("seed=%d\n", k); - srand ((unsigned int) k); + mem_heap_init (test_native_heap, sizeof (test_native_heap)); mem_register_a_try_give_memory_back_callback (test_heap_give_some_memory_back); diff --git a/tests/unit/test_literal_storage.cpp b/tests/unit/test-literal-storage.cpp similarity index 90% rename from tests/unit/test_literal_storage.cpp rename to tests/unit/test-literal-storage.cpp index d052d08cfc..28b9a2cccc 100644 --- a/tests/unit/test_literal_storage.cpp +++ b/tests/unit/test-literal-storage.cpp @@ -16,17 +16,7 @@ #include "ecma-helpers.h" #include "lit-literal.h" -extern "C" -{ - extern void srand (unsigned int __seed); - extern int rand (void); - extern long int time (long int *__timer); - extern int printf (__const char *__restrict __format, ...); - extern void *memset (void *__s, int __c, size_t __n); -} - -// Heap size is 32K -#define test_heap_size (32 * 1024) +#include "test-common.h" // Iterations count #define test_iters 64 @@ -68,6 +58,8 @@ int main (int __attr_unused___ argc, char __attr_unused___ **argv) { + TEST_RANDOMIZE (); + const ecma_char_t *ptrs[test_sub_iters]; ecma_number_t numbers[test_sub_iters]; ecma_char_t strings[test_sub_iters][max_characters_in_string + 1]; @@ -76,10 +68,6 @@ main (int __attr_unused___ argc, mem_init (); lit_init (); - srand ((unsigned int) time (NULL)); - int k = rand (); - printf ("seed=%d\n", k); - srand ((unsigned int) k); for (uint32_t i = 0; i < test_iters; i++) { diff --git a/tests/unit/test_number_to_string.cpp b/tests/unit/test-number-to-string.cpp similarity index 97% rename from tests/unit/test_number_to_string.cpp rename to tests/unit/test-number-to-string.cpp index fafc290d55..e736a02fda 100644 --- a/tests/unit/test_number_to_string.cpp +++ b/tests/unit/test-number-to-string.cpp @@ -13,12 +13,10 @@ * limitations under the License. */ -#include -#include - #include "ecma-globals.h" #include "ecma-helpers.h" -#include "jrt.h" + +#include "test-common.h" /** * Unit test's main function. diff --git a/tests/unit/test_preparser.cpp b/tests/unit/test-parser.cpp similarity index 68% rename from tests/unit/test_preparser.cpp rename to tests/unit/test-parser.cpp index d551bb8aec..48f9963f4e 100644 --- a/tests/unit/test_preparser.cpp +++ b/tests/unit/test-parser.cpp @@ -13,15 +13,55 @@ * limitations under the License. */ -#include - -#include "jrt.h" #include "mem-allocator.h" #include "opcodes.h" -#include "common.h" #include "parser.h" #include "serializer.h" +#include "test-common.h" + +#define NAME_TO_ID(op) (__op__idx_##op) + +#define __OPCODE_SIZE(name, arg1, arg2, arg3) \ + (uint8_t) (sizeof (__op_##name) + 1), + +static uint8_t opcode_sizes[] = +{ + OP_LIST (OPCODE_SIZE) + 0 +}; + +static bool +opcodes_equal (const opcode_t *opcodes1, opcode_t *opcodes2, uint16_t size) +{ + uint16_t i; + for (i = 0; i < size; i++) + { + uint8_t opcode_num1 = opcodes1[i].op_idx, opcode_num2 = opcodes2[i].op_idx; + uint8_t j; + + if (opcode_num1 != opcode_num2) + { + return false; + } + + if (opcode_num1 == NAME_TO_ID (nop) || opcode_num1 == NAME_TO_ID (ret)) + { + return true; + } + + for (j = 1; j < opcode_sizes[opcode_num1]; j++) + { + if (((uint8_t*)&opcodes1[i])[j] != ((uint8_t*)&opcodes2[i])[j]) + { + return false; + } + } + } + + return true; +} + /** * Unit test's main function. */ diff --git a/tests/unit/test_pool.cpp b/tests/unit/test-pool.cpp similarity index 85% rename from tests/unit/test_pool.cpp rename to tests/unit/test-pool.cpp index 2e2e2dd950..d22d190a6f 100644 --- a/tests/unit/test_pool.cpp +++ b/tests/unit/test-pool.cpp @@ -15,19 +15,11 @@ #define JERRY_MEM_POOL_INTERNAL -#include "jrt.h" #include "mem-allocator.h" #include "mem-pool.h" #include "mem-poolman.h" -extern "C" -{ - extern void srand (unsigned int __seed); - extern int rand (void); - extern long int time (long int *__timer); - extern int printf (__const char *__restrict __format, ...); - extern void *memset (void *__s, int __c, size_t __n); -} +#include "test-common.h" // Iterations count const uint32_t test_iters = 64; @@ -45,10 +37,7 @@ int main (int __attr_unused___ argc, char __attr_unused___ **argv) { - srand ((unsigned int) time (NULL)); - int k = rand (); - printf ("seed=%d\n", k); - srand ((unsigned int) k); + TEST_RANDOMIZE (); for (uint32_t i = 0; i < test_iters; i++) { diff --git a/tests/unit/test_poolman.cpp b/tests/unit/test-poolman.cpp similarity index 90% rename from tests/unit/test_poolman.cpp rename to tests/unit/test-poolman.cpp index 7527bb23f9..2076bd6761 100644 --- a/tests/unit/test_poolman.cpp +++ b/tests/unit/test-poolman.cpp @@ -17,18 +17,14 @@ * Unit test for pool manager. */ -#include -#include -#include -#include - #define JERRY_MEM_POOL_INTERNAL -#include "jrt.h" #include "mem-allocator.h" #include "mem-pool.h" #include "mem-poolman.h" +#include "test-common.h" + // Iterations count const uint32_t test_iters = 16384; @@ -41,12 +37,9 @@ int main (int __attr_unused___ argc, char __attr_unused___ **argv) { - mem_init (); + TEST_RANDOMIZE (); - srand ((unsigned int) time (NULL)); - unsigned int seed = (unsigned int) rand (); - printf ("seed=%u\n", seed); - srand (seed); + mem_init (); for (uint32_t i = 0; i < test_iters; i++) { diff --git a/tests/unit/test_recordset.cpp b/tests/unit/test-recordset.cpp similarity index 96% rename from tests/unit/test_recordset.cpp rename to tests/unit/test-recordset.cpp index 7089e9b549..86e4b93777 100644 --- a/tests/unit/test_recordset.cpp +++ b/tests/unit/test-recordset.cpp @@ -13,18 +13,10 @@ * limitations under the License. */ -#include "jrt.h" #include "mem-allocator.h" #include "rcs-recordset.h" -extern "C" -{ - extern void srand (unsigned int __seed); - extern int rand (void); - extern long int time (long int *__timer); - extern int printf (__const char *__restrict __format, ...); - extern void *memset (void *__s, int __c, size_t __n); -} +#include "test-common.h" // Heap size is 32K #define test_heap_size (32 * 1024) @@ -221,10 +213,7 @@ int main (int __attr_unused___ argc, char __attr_unused___ **argv) { - srand ((unsigned int) time (NULL)); - int k = rand (); - printf ("seed=%d\n", k); - srand ((unsigned int) k); + TEST_RANDOMIZE (); mem_init (); diff --git a/tests/unit/test_string_to_number.cpp b/tests/unit/test-string-to-number.cpp similarity index 98% rename from tests/unit/test_string_to_number.cpp rename to tests/unit/test-string-to-number.cpp index cafdd1f43f..fd46982077 100644 --- a/tests/unit/test_string_to_number.cpp +++ b/tests/unit/test-string-to-number.cpp @@ -13,11 +13,10 @@ * limitations under the License. */ -#include - #include "ecma-globals.h" #include "ecma-helpers.h" -#include "jrt.h" + +#include "test-common.h" /** * Unit test's main function. diff --git a/tools/runners/run-unittests.sh b/tools/runners/run-unittests.sh index 51d8e743ee..f2c389675d 100755 --- a/tools/runners/run-unittests.sh +++ b/tools/runners/run-unittests.sh @@ -30,7 +30,7 @@ done rm -f $DIR/unit_tests_run.log -UNITTESTS=$(ls $DIR/unit_*) +UNITTESTS=$(ls $DIR/unit-*) for unit_test in $UNITTESTS; do