diff --git a/.github/workflows/linux_ci.yml b/.github/workflows/linux_ci.yml index 18b476a667..cb3299dc98 100644 --- a/.github/workflows/linux_ci.yml +++ b/.github/workflows/linux_ci.yml @@ -176,7 +176,7 @@ jobs: - name: Build blog tutorial with -autofree run: v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog - name: Build option_test.c.v with -autofree - run: v -autofree vlib/v/tests/option_test.c.v + run: v -autofree vlib/v/tests/options/option_test.c.v - name: V self compilation with -parallel-cc run: | v -o v2 -parallel-cc cmd/v diff --git a/.github/workflows/windows_ci.yml b/.github/workflows/windows_ci.yml index cce99218b8..0045e91b6a 100644 --- a/.github/workflows/windows_ci.yml +++ b/.github/workflows/windows_ci.yml @@ -62,7 +62,7 @@ jobs: # - name: Test # run: v test-all - name: Build option_test.c.v with -autofree - run: v -autofree vlib/v/tests/option_test.c.v + run: v -autofree vlib/v/tests/options/option_test.c.v - name: Test v->js run: v -o hi.js examples/hello_v_js.v && node hi.js - name: Test v binaries diff --git a/cmd/tools/modules/testing/common.v b/cmd/tools/modules/testing/common.v index 58a1838780..294da9b96c 100644 --- a/cmd/tools/modules/testing/common.v +++ b/cmd/tools/modules/testing/common.v @@ -225,7 +225,7 @@ pub fn new_test_session(_vargs string, will_compile bool) TestSession { skip_files << 'examples/coroutines/simple_coroutines.v' skip_files << 'examples/coroutines/coroutines_bench.v' $if msvc { - skip_files << 'vlib/v/tests/const_comptime_eval_before_vinit_test.v' // _constructor used + skip_files << 'vlib/v/tests/consts/const_comptime_eval_before_vinit_test.v' // _constructor used skip_files << 'vlib/v/tests/project_with_cpp_code/compiling_cpp_files_with_a_cplusplus_compiler_test.c.v' } $if solaris { diff --git a/cmd/tools/vtest-self.v b/cmd/tools/vtest-self.v index 01421369cd..17eeefac8f 100644 --- a/cmd/tools/vtest-self.v +++ b/cmd/tools/vtest-self.v @@ -186,7 +186,7 @@ const skip_with_fsanitize_memory = [ 'vlib/net/websocket/websocket_test.v', 'vlib/net/smtp/smtp_test.v', 'vlib/v/tests/websocket_logger_interface_should_compile_test.v', - 'vlib/v/tests/fn_literal_type_test.v', + 'vlib/v/tests/fns/fn_literal_type_test.v', 'vlib/x/sessions/tests/db_store_test.v', ] const skip_with_fsanitize_address = [ @@ -280,7 +280,7 @@ const skip_on_ubuntu_musl = [ 'vlib/builtin/js/array_test.js.v', 'vlib/net/smtp/smtp_test.v', 'vlib/v/tests/websocket_logger_interface_should_compile_test.v', - 'vlib/v/tests/fn_literal_type_test.v', + 'vlib/v/tests/fns/fn_literal_type_test.v', 'vlib/x/sessions/tests/db_store_test.v', 'vlib/x/vweb/tests/vweb_test.v', 'vlib/x/vweb/tests/vweb_app_test.v', @@ -294,10 +294,10 @@ const skip_on_non_linux = [ ] const skip_on_windows_msvc = [ 'do_not_remove', - 'vlib/v/tests/const_fixed_array_containing_references_to_itself_test.v', // error C2099: initializer is not a constant - 'vlib/v/tests/const_and_global_with_same_name_test.v', // error C2099: initializer is not a constant - 'vlib/v/tests/sumtype_as_cast_1_test.v', // error: cannot support compound statement expression ({expr; expr; expr;}) - 'vlib/v/tests/sumtype_as_cast_2_test.v', // error: cannot support compound statement expression ({expr; expr; expr;}) + 'vlib/v/tests/consts/const_fixed_array_containing_references_to_itself_test.v', // error C2099: initializer is not a constant + 'vlib/v/tests/consts/const_and_global_with_same_name_test.v', // error C2099: initializer is not a constant + 'vlib/v/tests/sumtypes/sumtype_as_cast_1_test.v', // error: cannot support compound statement expression ({expr; expr; expr;}) + 'vlib/v/tests/sumtypes/sumtype_as_cast_2_test.v', // error: cannot support compound statement expression ({expr; expr; expr;}) 'vlib/v/tests/project_with_cpp_code/compiling_cpp_files_with_a_cplusplus_compiler_test.c.v', // TODO ] const skip_on_windows = [ @@ -317,7 +317,7 @@ const skip_on_windows = [ 'vlib/sync/many_times_test.v', 'vlib/sync/once_test.v', 'vlib/v/tests/websocket_logger_interface_should_compile_test.v', - 'vlib/v/tests/fn_literal_type_test.v', + 'vlib/v/tests/fns/fn_literal_type_test.v', ] const skip_on_non_windows = [ 'do_not_remove', @@ -337,7 +337,7 @@ const skip_on_arm64 = [ const skip_on_non_amd64_or_arm64 = [ 'do_not_remove', // closures aren't implemented yet: - 'vlib/v/tests/closure_test.v', + 'vlib/v/tests/fns/closure_test.v', // native aren't implemented: 'vlib/v/gen/native/tests/native_test.v', 'vlib/context/cancel_test.v', diff --git a/vlib/v/tests/alias_array_built_in_methods_test.v b/vlib/v/tests/aliases/alias_array_built_in_methods_test.v similarity index 100% rename from vlib/v/tests/alias_array_built_in_methods_test.v rename to vlib/v/tests/aliases/alias_array_built_in_methods_test.v diff --git a/vlib/v/tests/alias_array_has_method_test.v b/vlib/v/tests/aliases/alias_array_has_method_test.v similarity index 100% rename from vlib/v/tests/alias_array_has_method_test.v rename to vlib/v/tests/aliases/alias_array_has_method_test.v diff --git a/vlib/v/tests/alias_array_no_cast_init_test.v b/vlib/v/tests/aliases/alias_array_no_cast_init_test.v similarity index 100% rename from vlib/v/tests/alias_array_no_cast_init_test.v rename to vlib/v/tests/aliases/alias_array_no_cast_init_test.v diff --git a/vlib/v/tests/alias_array_operator_overloading_test.v b/vlib/v/tests/aliases/alias_array_operator_overloading_test.v similarity index 100% rename from vlib/v/tests/alias_array_operator_overloading_test.v rename to vlib/v/tests/aliases/alias_array_operator_overloading_test.v diff --git a/vlib/v/tests/alias_array_plus_operator_test.v b/vlib/v/tests/aliases/alias_array_plus_operator_test.v similarity index 100% rename from vlib/v/tests/alias_array_plus_operator_test.v rename to vlib/v/tests/aliases/alias_array_plus_operator_test.v diff --git a/vlib/v/tests/alias_assigned_in_increment_part_of_for_c_loop_test.v b/vlib/v/tests/aliases/alias_assigned_in_increment_part_of_for_c_loop_test.v similarity index 100% rename from vlib/v/tests/alias_assigned_in_increment_part_of_for_c_loop_test.v rename to vlib/v/tests/aliases/alias_assigned_in_increment_part_of_for_c_loop_test.v diff --git a/vlib/v/tests/alias_basic_types_test.v b/vlib/v/tests/aliases/alias_basic_types_test.v similarity index 100% rename from vlib/v/tests/alias_basic_types_test.v rename to vlib/v/tests/aliases/alias_basic_types_test.v diff --git a/vlib/v/tests/alias_bool_not_op_test.v b/vlib/v/tests/aliases/alias_bool_not_op_test.v similarity index 100% rename from vlib/v/tests/alias_bool_not_op_test.v rename to vlib/v/tests/aliases/alias_bool_not_op_test.v diff --git a/vlib/v/tests/alias_char_type_reference_test.v b/vlib/v/tests/aliases/alias_char_type_reference_test.v similarity index 100% rename from vlib/v/tests/alias_char_type_reference_test.v rename to vlib/v/tests/aliases/alias_char_type_reference_test.v diff --git a/vlib/v/tests/alias_compare_non_alias_test.v b/vlib/v/tests/aliases/alias_compare_non_alias_test.v similarity index 100% rename from vlib/v/tests/alias_compare_non_alias_test.v rename to vlib/v/tests/aliases/alias_compare_non_alias_test.v diff --git a/vlib/v/tests/alias_custom_type_map_test.v b/vlib/v/tests/aliases/alias_custom_type_map_test.v similarity index 100% rename from vlib/v/tests/alias_custom_type_map_test.v rename to vlib/v/tests/aliases/alias_custom_type_map_test.v diff --git a/vlib/v/tests/alias_fixed_arr_test.v b/vlib/v/tests/aliases/alias_fixed_arr_test.v similarity index 100% rename from vlib/v/tests/alias_fixed_arr_test.v rename to vlib/v/tests/aliases/alias_fixed_arr_test.v diff --git a/vlib/v/tests/alias_fixed_array_init_test.v b/vlib/v/tests/aliases/alias_fixed_array_init_test.v similarity index 100% rename from vlib/v/tests/alias_fixed_array_init_test.v rename to vlib/v/tests/aliases/alias_fixed_array_init_test.v diff --git a/vlib/v/tests/alias_fixed_array_of_struct_test.v b/vlib/v/tests/aliases/alias_fixed_array_of_struct_test.v similarity index 100% rename from vlib/v/tests/alias_fixed_array_of_struct_test.v rename to vlib/v/tests/aliases/alias_fixed_array_of_struct_test.v diff --git a/vlib/v/tests/alias_fixed_array_test.v b/vlib/v/tests/aliases/alias_fixed_array_test.v similarity index 100% rename from vlib/v/tests/alias_fixed_array_test.v rename to vlib/v/tests/aliases/alias_fixed_array_test.v diff --git a/vlib/v/tests/alias_in_a_struct_field_autostr_test.v b/vlib/v/tests/aliases/alias_in_a_struct_field_autostr_test.v similarity index 100% rename from vlib/v/tests/alias_in_a_struct_field_autostr_test.v rename to vlib/v/tests/aliases/alias_in_a_struct_field_autostr_test.v diff --git a/vlib/v/tests/alias_map_clone_test.v b/vlib/v/tests/aliases/alias_map_clone_test.v similarity index 100% rename from vlib/v/tests/alias_map_clone_test.v rename to vlib/v/tests/aliases/alias_map_clone_test.v diff --git a/vlib/v/tests/alias_map_keys_test.v b/vlib/v/tests/aliases/alias_map_keys_test.v similarity index 100% rename from vlib/v/tests/alias_map_keys_test.v rename to vlib/v/tests/aliases/alias_map_keys_test.v diff --git a/vlib/v/tests/alias_map_operator_overloading_test.v b/vlib/v/tests/aliases/alias_map_operator_overloading_test.v similarity index 100% rename from vlib/v/tests/alias_map_operator_overloading_test.v rename to vlib/v/tests/aliases/alias_map_operator_overloading_test.v diff --git a/vlib/v/tests/alias_operator_overloading_test.v b/vlib/v/tests/aliases/alias_operator_overloading_test.v similarity index 100% rename from vlib/v/tests/alias_operator_overloading_test.v rename to vlib/v/tests/aliases/alias_operator_overloading_test.v diff --git a/vlib/v/tests/alias_primitive_operator_overloading_test.v b/vlib/v/tests/aliases/alias_primitive_operator_overloading_test.v similarity index 100% rename from vlib/v/tests/alias_primitive_operator_overloading_test.v rename to vlib/v/tests/aliases/alias_primitive_operator_overloading_test.v diff --git a/vlib/v/tests/alias_string_match_test.v b/vlib/v/tests/aliases/alias_string_match_test.v similarity index 100% rename from vlib/v/tests/alias_string_match_test.v rename to vlib/v/tests/aliases/alias_string_match_test.v diff --git a/vlib/v/tests/alias_sumtype_method_call_test.v b/vlib/v/tests/aliases/alias_sumtype_method_call_test.v similarity index 100% rename from vlib/v/tests/alias_sumtype_method_call_test.v rename to vlib/v/tests/aliases/alias_sumtype_method_call_test.v diff --git a/vlib/v/tests/alias_to_ptr_arg_test.v b/vlib/v/tests/aliases/alias_to_ptr_arg_test.v similarity index 100% rename from vlib/v/tests/alias_to_ptr_arg_test.v rename to vlib/v/tests/aliases/alias_to_ptr_arg_test.v diff --git a/vlib/v/tests/alias_to_sum_with_enum_test.v b/vlib/v/tests/aliases/alias_to_sum_with_enum_test.v similarity index 100% rename from vlib/v/tests/alias_to_sum_with_enum_test.v rename to vlib/v/tests/aliases/alias_to_sum_with_enum_test.v diff --git a/vlib/v/tests/aliased_array_method_call_test.v b/vlib/v/tests/aliases/aliased_array_method_call_test.v similarity index 100% rename from vlib/v/tests/aliased_array_method_call_test.v rename to vlib/v/tests/aliases/aliased_array_method_call_test.v diff --git a/vlib/v/tests/aliased_array_operations_test.v b/vlib/v/tests/aliases/aliased_array_operations_test.v similarity index 100% rename from vlib/v/tests/aliased_array_operations_test.v rename to vlib/v/tests/aliases/aliased_array_operations_test.v diff --git a/vlib/v/tests/aliased_field_access_test.v b/vlib/v/tests/aliases/aliased_field_access_test.v similarity index 100% rename from vlib/v/tests/aliased_field_access_test.v rename to vlib/v/tests/aliases/aliased_field_access_test.v diff --git a/vlib/v/tests/aliased_option_fn_call_test.v b/vlib/v/tests/aliases/aliased_option_fn_call_test.v similarity index 100% rename from vlib/v/tests/aliased_option_fn_call_test.v rename to vlib/v/tests/aliases/aliased_option_fn_call_test.v diff --git a/vlib/v/tests/aliases/modules/geometry/geometry.v b/vlib/v/tests/aliases/modules/geometry/geometry.v new file mode 100644 index 0000000000..cdb423ca80 --- /dev/null +++ b/vlib/v/tests/aliases/modules/geometry/geometry.v @@ -0,0 +1,48 @@ +module geometry + +const module_name = 'geometry' + +pub enum Shape { + circle + rectangle + triangle +} + +pub type ShapeMap = map[Shape]string + +// used by vlib/v/tests/map_enum_keys_test.v +pub enum Form3D { + sphere + cylinder + cone + cube + invalid +} + +pub struct Point { +pub mut: + x int + y int +} + +pub struct Line { +pub mut: + ps []Point +} + +pub fn (a Point) + (b Point) Point { + return Point{ + x: a.x + b.x + y: a.y + b.y + } +} + +pub fn (a Point) str() string { + return '${a.x} ${a.y}' +} + +pub fn point_str(a Point) string { + return a.str() +} + +pub type PointCond = fn (p Point) bool diff --git a/vlib/v/tests/type_alias_of_fn_with_mut_args_test.v b/vlib/v/tests/aliases/type_alias_of_fn_with_mut_args_test.v similarity index 100% rename from vlib/v/tests/type_alias_of_fn_with_mut_args_test.v rename to vlib/v/tests/aliases/type_alias_of_fn_with_mut_args_test.v diff --git a/vlib/v/tests/type_alias_of_pointer_types_test.v b/vlib/v/tests/aliases/type_alias_of_pointer_types_test.v similarity index 100% rename from vlib/v/tests/type_alias_of_pointer_types_test.v rename to vlib/v/tests/aliases/type_alias_of_pointer_types_test.v diff --git a/vlib/v/tests/type_alias_str_method_override_test.v b/vlib/v/tests/aliases/type_alias_str_method_override_test.v similarity index 100% rename from vlib/v/tests/type_alias_str_method_override_test.v rename to vlib/v/tests/aliases/type_alias_str_method_override_test.v diff --git a/vlib/v/tests/type_alias_test.v b/vlib/v/tests/aliases/type_alias_test.v similarity index 100% rename from vlib/v/tests/type_alias_test.v rename to vlib/v/tests/aliases/type_alias_test.v diff --git a/vlib/v/tests/unaliased_typ_checking_test.v b/vlib/v/tests/aliases/unaliased_typ_checking_test.v similarity index 100% rename from vlib/v/tests/unaliased_typ_checking_test.v rename to vlib/v/tests/aliases/unaliased_typ_checking_test.v diff --git a/vlib/v/tests/assert_fn_call_with_parentheses_test.v b/vlib/v/tests/assign/assert_fn_call_with_parentheses_test.v similarity index 100% rename from vlib/v/tests/assert_fn_call_with_parentheses_test.v rename to vlib/v/tests/assign/assert_fn_call_with_parentheses_test.v diff --git a/vlib/v/tests/assert_fn_ret_option_test.v b/vlib/v/tests/assign/assert_fn_ret_option_test.v similarity index 100% rename from vlib/v/tests/assert_fn_ret_option_test.v rename to vlib/v/tests/assign/assert_fn_ret_option_test.v diff --git a/vlib/v/tests/assert_if_guard_expr_test.v b/vlib/v/tests/assign/assert_if_guard_expr_test.v similarity index 100% rename from vlib/v/tests/assert_if_guard_expr_test.v rename to vlib/v/tests/assign/assert_if_guard_expr_test.v diff --git a/vlib/v/tests/assert_should_evaluate_args_just_once_test.v b/vlib/v/tests/assign/assert_should_evaluate_args_just_once_test.v similarity index 100% rename from vlib/v/tests/assert_should_evaluate_args_just_once_test.v rename to vlib/v/tests/assign/assert_should_evaluate_args_just_once_test.v diff --git a/vlib/v/tests/assert_sumtype_test.v b/vlib/v/tests/assign/assert_sumtype_test.v similarity index 100% rename from vlib/v/tests/assert_sumtype_test.v rename to vlib/v/tests/assign/assert_sumtype_test.v diff --git a/vlib/v/tests/assert_with_array_ref_test.v b/vlib/v/tests/assign/assert_with_array_ref_test.v similarity index 100% rename from vlib/v/tests/assert_with_array_ref_test.v rename to vlib/v/tests/assign/assert_with_array_ref_test.v diff --git a/vlib/v/tests/assert_with_newlines_test.v b/vlib/v/tests/assign/assert_with_newlines_test.v similarity index 100% rename from vlib/v/tests/assert_with_newlines_test.v rename to vlib/v/tests/assign/assert_with_newlines_test.v diff --git a/vlib/v/tests/assign_array_of_aliases_test.v b/vlib/v/tests/assign/assign_array_of_aliases_test.v similarity index 100% rename from vlib/v/tests/assign_array_of_aliases_test.v rename to vlib/v/tests/assign/assign_array_of_aliases_test.v diff --git a/vlib/v/tests/assign_bitops_with_type_aliases_test.v b/vlib/v/tests/assign/assign_bitops_with_type_aliases_test.v similarity index 100% rename from vlib/v/tests/assign_bitops_with_type_aliases_test.v rename to vlib/v/tests/assign/assign_bitops_with_type_aliases_test.v diff --git a/vlib/v/tests/assign_literal_with_closure_test.v b/vlib/v/tests/assign/assign_literal_with_closure_test.v similarity index 100% rename from vlib/v/tests/assign_literal_with_closure_test.v rename to vlib/v/tests/assign/assign_literal_with_closure_test.v diff --git a/vlib/v/tests/assign_map_value_of_fixed_array_test.v b/vlib/v/tests/assign/assign_map_value_of_fixed_array_test.v similarity index 100% rename from vlib/v/tests/assign_map_value_of_fixed_array_test.v rename to vlib/v/tests/assign/assign_map_value_of_fixed_array_test.v diff --git a/vlib/v/tests/assign_option_of_multi_return_with_heap_test.v b/vlib/v/tests/assign/assign_option_of_multi_return_with_heap_test.v similarity index 100% rename from vlib/v/tests/assign_option_of_multi_return_with_heap_test.v rename to vlib/v/tests/assign/assign_option_of_multi_return_with_heap_test.v diff --git a/vlib/v/tests/assign_option_of_struct_fntype_field_test.v b/vlib/v/tests/assign/assign_option_of_struct_fntype_field_test.v similarity index 100% rename from vlib/v/tests/assign_option_of_struct_fntype_field_test.v rename to vlib/v/tests/assign/assign_option_of_struct_fntype_field_test.v diff --git a/vlib/v/tests/assign_shared_test.v b/vlib/v/tests/assign/assign_shared_test.v similarity index 100% rename from vlib/v/tests/assign_shared_test.v rename to vlib/v/tests/assign/assign_shared_test.v diff --git a/vlib/v/tests/assign_static_method_to_anon_fn_test.v b/vlib/v/tests/assign/assign_static_method_to_anon_fn_test.v similarity index 100% rename from vlib/v/tests/assign_static_method_to_anon_fn_test.v rename to vlib/v/tests/assign/assign_static_method_to_anon_fn_test.v diff --git a/vlib/v/tests/assign_type_checking_with_generics_test.v b/vlib/v/tests/assign/assign_type_checking_with_generics_test.v similarity index 100% rename from vlib/v/tests/assign_type_checking_with_generics_test.v rename to vlib/v/tests/assign/assign_type_checking_with_generics_test.v diff --git a/vlib/v/tests/assign_with_in_module_sumtype_test.v b/vlib/v/tests/assign/assign_with_in_module_sumtype_test.v similarity index 100% rename from vlib/v/tests/assign_with_in_module_sumtype_test.v rename to vlib/v/tests/assign/assign_with_in_module_sumtype_test.v diff --git a/vlib/v/tests/bool_assign_operator_test.v b/vlib/v/tests/assign/bool_assign_operator_test.v similarity index 100% rename from vlib/v/tests/bool_assign_operator_test.v rename to vlib/v/tests/assign/bool_assign_operator_test.v diff --git a/vlib/v/tests/complex_assign_test.v b/vlib/v/tests/assign/complex_assign_test.v similarity index 100% rename from vlib/v/tests/complex_assign_test.v rename to vlib/v/tests/assign/complex_assign_test.v diff --git a/vlib/v/tests/cross_assign_aliased_array_test.v b/vlib/v/tests/assign/cross_assign_aliased_array_test.v similarity index 100% rename from vlib/v/tests/cross_assign_aliased_array_test.v rename to vlib/v/tests/assign/cross_assign_aliased_array_test.v diff --git a/vlib/v/tests/cross_assign_fixed_array_test.v b/vlib/v/tests/assign/cross_assign_fixed_array_test.v similarity index 100% rename from vlib/v/tests/cross_assign_fixed_array_test.v rename to vlib/v/tests/assign/cross_assign_fixed_array_test.v diff --git a/vlib/v/tests/cross_assign_test.v b/vlib/v/tests/assign/cross_assign_test.v similarity index 100% rename from vlib/v/tests/cross_assign_test.v rename to vlib/v/tests/assign/cross_assign_test.v diff --git a/vlib/v/tests/cross_assign_with_generic_fn_call_test.v b/vlib/v/tests/assign/cross_assign_with_generic_fn_call_test.v similarity index 100% rename from vlib/v/tests/cross_assign_with_generic_fn_call_test.v rename to vlib/v/tests/assign/cross_assign_with_generic_fn_call_test.v diff --git a/vlib/v/tests/cross_assign_with_parentheses_test.v b/vlib/v/tests/assign/cross_assign_with_parentheses_test.v similarity index 100% rename from vlib/v/tests/cross_assign_with_parentheses_test.v rename to vlib/v/tests/assign/cross_assign_with_parentheses_test.v diff --git a/vlib/v/tests/modules/aa/aa.v b/vlib/v/tests/assign/modules/aa/aa.v similarity index 100% rename from vlib/v/tests/modules/aa/aa.v rename to vlib/v/tests/assign/modules/aa/aa.v diff --git a/vlib/v/tests/multiple_assign_array_index_test.v b/vlib/v/tests/assign/multiple_assign_array_index_test.v similarity index 100% rename from vlib/v/tests/multiple_assign_array_index_test.v rename to vlib/v/tests/assign/multiple_assign_array_index_test.v diff --git a/vlib/v/tests/multiple_assign_test.v b/vlib/v/tests/assign/multiple_assign_test.v similarity index 100% rename from vlib/v/tests/multiple_assign_test.v rename to vlib/v/tests/assign/multiple_assign_test.v diff --git a/vlib/v/tests/array_access_optimisation_test.v b/vlib/v/tests/builtin_arrays/array_access_optimisation_test.v similarity index 100% rename from vlib/v/tests/array_access_optimisation_test.v rename to vlib/v/tests/builtin_arrays/array_access_optimisation_test.v diff --git a/vlib/v/tests/array_append_short_struct_test.v b/vlib/v/tests/builtin_arrays/array_append_short_struct_test.v similarity index 100% rename from vlib/v/tests/array_append_short_struct_test.v rename to vlib/v/tests/builtin_arrays/array_append_short_struct_test.v diff --git a/vlib/v/tests/array_as_interface_test.v b/vlib/v/tests/builtin_arrays/array_as_interface_test.v similarity index 100% rename from vlib/v/tests/array_as_interface_test.v rename to vlib/v/tests/builtin_arrays/array_as_interface_test.v diff --git a/vlib/v/tests/array_cast_test.v b/vlib/v/tests/builtin_arrays/array_cast_test.v similarity index 100% rename from vlib/v/tests/array_cast_test.v rename to vlib/v/tests/builtin_arrays/array_cast_test.v diff --git a/vlib/v/tests/array_clear_test.v b/vlib/v/tests/builtin_arrays/array_clear_test.v similarity index 100% rename from vlib/v/tests/array_clear_test.v rename to vlib/v/tests/builtin_arrays/array_clear_test.v diff --git a/vlib/v/tests/array_delete_last_test.v b/vlib/v/tests/builtin_arrays/array_delete_last_test.v similarity index 100% rename from vlib/v/tests/array_delete_last_test.v rename to vlib/v/tests/builtin_arrays/array_delete_last_test.v diff --git a/vlib/v/tests/array_elements_with_option_test.v b/vlib/v/tests/builtin_arrays/array_elements_with_option_test.v similarity index 100% rename from vlib/v/tests/array_elements_with_option_test.v rename to vlib/v/tests/builtin_arrays/array_elements_with_option_test.v diff --git a/vlib/v/tests/array_equality_test.v b/vlib/v/tests/builtin_arrays/array_equality_test.v similarity index 100% rename from vlib/v/tests/array_equality_test.v rename to vlib/v/tests/builtin_arrays/array_equality_test.v diff --git a/vlib/v/tests/array_filter_of_fn_mut_arg_test.v b/vlib/v/tests/builtin_arrays/array_filter_of_fn_mut_arg_test.v similarity index 100% rename from vlib/v/tests/array_filter_of_fn_mut_arg_test.v rename to vlib/v/tests/builtin_arrays/array_filter_of_fn_mut_arg_test.v diff --git a/vlib/v/tests/array_filter_using_direct_closure_test.v b/vlib/v/tests/builtin_arrays/array_filter_using_direct_closure_test.v similarity index 100% rename from vlib/v/tests/array_filter_using_direct_closure_test.v rename to vlib/v/tests/builtin_arrays/array_filter_using_direct_closure_test.v diff --git a/vlib/v/tests/array_fixed_auto_clone_test.v b/vlib/v/tests/builtin_arrays/array_fixed_auto_clone_test.v similarity index 100% rename from vlib/v/tests/array_fixed_auto_clone_test.v rename to vlib/v/tests/builtin_arrays/array_fixed_auto_clone_test.v diff --git a/vlib/v/tests/array_fixed_c_test.v b/vlib/v/tests/builtin_arrays/array_fixed_c_test.v similarity index 100% rename from vlib/v/tests/array_fixed_c_test.v rename to vlib/v/tests/builtin_arrays/array_fixed_c_test.v diff --git a/vlib/v/tests/array_fixed_empty_struct_test.v b/vlib/v/tests/builtin_arrays/array_fixed_empty_struct_test.v similarity index 100% rename from vlib/v/tests/array_fixed_empty_struct_test.v rename to vlib/v/tests/builtin_arrays/array_fixed_empty_struct_test.v diff --git a/vlib/v/tests/array_fixed_for_loop_test.v b/vlib/v/tests/builtin_arrays/array_fixed_for_loop_test.v similarity index 100% rename from vlib/v/tests/array_fixed_for_loop_test.v rename to vlib/v/tests/builtin_arrays/array_fixed_for_loop_test.v diff --git a/vlib/v/tests/array_fixed_ptr_test.v b/vlib/v/tests/builtin_arrays/array_fixed_ptr_test.v similarity index 100% rename from vlib/v/tests/array_fixed_ptr_test.v rename to vlib/v/tests/builtin_arrays/array_fixed_ptr_test.v diff --git a/vlib/v/tests/array_fixed_struct_field_test.v b/vlib/v/tests/builtin_arrays/array_fixed_struct_field_test.v similarity index 100% rename from vlib/v/tests/array_fixed_struct_field_test.v rename to vlib/v/tests/builtin_arrays/array_fixed_struct_field_test.v diff --git a/vlib/v/tests/array_get_anon_fn_value_test.v b/vlib/v/tests/builtin_arrays/array_get_anon_fn_value_test.v similarity index 100% rename from vlib/v/tests/array_get_anon_fn_value_test.v rename to vlib/v/tests/builtin_arrays/array_get_anon_fn_value_test.v diff --git a/vlib/v/tests/array_index_option_test.v b/vlib/v/tests/builtin_arrays/array_index_option_test.v similarity index 100% rename from vlib/v/tests/array_index_option_test.v rename to vlib/v/tests/builtin_arrays/array_index_option_test.v diff --git a/vlib/v/tests/array_init_element_size_equal_array_size_test.v b/vlib/v/tests/builtin_arrays/array_init_element_size_equal_array_size_test.v similarity index 100% rename from vlib/v/tests/array_init_element_size_equal_array_size_test.v rename to vlib/v/tests/builtin_arrays/array_init_element_size_equal_array_size_test.v diff --git a/vlib/v/tests/array_init_fixed_test.v b/vlib/v/tests/builtin_arrays/array_init_fixed_test.v similarity index 100% rename from vlib/v/tests/array_init_fixed_test.v rename to vlib/v/tests/builtin_arrays/array_init_fixed_test.v diff --git a/vlib/v/tests/array_init_test.v b/vlib/v/tests/builtin_arrays/array_init_test.v similarity index 100% rename from vlib/v/tests/array_init_test.v rename to vlib/v/tests/builtin_arrays/array_init_test.v diff --git a/vlib/v/tests/array_init_with_fields_test.v b/vlib/v/tests/builtin_arrays/array_init_with_fields_test.v similarity index 100% rename from vlib/v/tests/array_init_with_fields_test.v rename to vlib/v/tests/builtin_arrays/array_init_with_fields_test.v diff --git a/vlib/v/tests/array_insert_as_mut_receiver_test.v b/vlib/v/tests/builtin_arrays/array_insert_as_mut_receiver_test.v similarity index 100% rename from vlib/v/tests/array_insert_as_mut_receiver_test.v rename to vlib/v/tests/builtin_arrays/array_insert_as_mut_receiver_test.v diff --git a/vlib/v/tests/array_insert_variadic_arg_variable_test.v b/vlib/v/tests/builtin_arrays/array_insert_variadic_arg_variable_test.v similarity index 100% rename from vlib/v/tests/array_insert_variadic_arg_variable_test.v rename to vlib/v/tests/builtin_arrays/array_insert_variadic_arg_variable_test.v diff --git a/vlib/v/tests/array_map_or_test.v b/vlib/v/tests/builtin_arrays/array_map_or_test.v similarity index 100% rename from vlib/v/tests/array_map_or_test.v rename to vlib/v/tests/builtin_arrays/array_map_or_test.v diff --git a/vlib/v/tests/array_map_ref_test.v b/vlib/v/tests/builtin_arrays/array_map_ref_test.v similarity index 100% rename from vlib/v/tests/array_map_ref_test.v rename to vlib/v/tests/builtin_arrays/array_map_ref_test.v diff --git a/vlib/v/tests/array_method_using_it_in_defer_test.v b/vlib/v/tests/builtin_arrays/array_method_using_it_in_defer_test.v similarity index 100% rename from vlib/v/tests/array_method_using_it_in_defer_test.v rename to vlib/v/tests/builtin_arrays/array_method_using_it_in_defer_test.v diff --git a/vlib/v/tests/array_methods_test.v b/vlib/v/tests/builtin_arrays/array_methods_test.v similarity index 100% rename from vlib/v/tests/array_methods_test.v rename to vlib/v/tests/builtin_arrays/array_methods_test.v diff --git a/vlib/v/tests/array_nested_call_test.v b/vlib/v/tests/builtin_arrays/array_nested_call_test.v similarity index 100% rename from vlib/v/tests/array_nested_call_test.v rename to vlib/v/tests/builtin_arrays/array_nested_call_test.v diff --git a/vlib/v/tests/array_of_alias_pop_test.v b/vlib/v/tests/builtin_arrays/array_of_alias_pop_test.v similarity index 100% rename from vlib/v/tests/array_of_alias_pop_test.v rename to vlib/v/tests/builtin_arrays/array_of_alias_pop_test.v diff --git a/vlib/v/tests/array_of_alias_slice_test.v b/vlib/v/tests/builtin_arrays/array_of_alias_slice_test.v similarity index 100% rename from vlib/v/tests/array_of_alias_slice_test.v rename to vlib/v/tests/builtin_arrays/array_of_alias_slice_test.v diff --git a/vlib/v/tests/array_of_anon_fn_call_test.v b/vlib/v/tests/builtin_arrays/array_of_anon_fn_call_test.v similarity index 100% rename from vlib/v/tests/array_of_anon_fn_call_test.v rename to vlib/v/tests/builtin_arrays/array_of_anon_fn_call_test.v diff --git a/vlib/v/tests/array_of_fixed_array_map_test.v b/vlib/v/tests/builtin_arrays/array_of_fixed_array_map_test.v similarity index 100% rename from vlib/v/tests/array_of_fixed_array_map_test.v rename to vlib/v/tests/builtin_arrays/array_of_fixed_array_map_test.v diff --git a/vlib/v/tests/array_of_fixed_array_test.v b/vlib/v/tests/builtin_arrays/array_of_fixed_array_test.v similarity index 100% rename from vlib/v/tests/array_of_fixed_array_test.v rename to vlib/v/tests/builtin_arrays/array_of_fixed_array_test.v diff --git a/vlib/v/tests/array_of_fns_index_call_with_direct_array_access_test.v b/vlib/v/tests/builtin_arrays/array_of_fns_index_call_with_direct_array_access_test.v similarity index 100% rename from vlib/v/tests/array_of_fns_index_call_with_direct_array_access_test.v rename to vlib/v/tests/builtin_arrays/array_of_fns_index_call_with_direct_array_access_test.v diff --git a/vlib/v/tests/array_of_functions_direct_call_test.v b/vlib/v/tests/builtin_arrays/array_of_functions_direct_call_test.v similarity index 100% rename from vlib/v/tests/array_of_functions_direct_call_test.v rename to vlib/v/tests/builtin_arrays/array_of_functions_direct_call_test.v diff --git a/vlib/v/tests/array_of_interface_init_test.v b/vlib/v/tests/builtin_arrays/array_of_interface_init_test.v similarity index 100% rename from vlib/v/tests/array_of_interface_init_test.v rename to vlib/v/tests/builtin_arrays/array_of_interface_init_test.v diff --git a/vlib/v/tests/array_of_interfaces_builtin_method_test.v b/vlib/v/tests/builtin_arrays/array_of_interfaces_builtin_method_test.v similarity index 100% rename from vlib/v/tests/array_of_interfaces_builtin_method_test.v rename to vlib/v/tests/builtin_arrays/array_of_interfaces_builtin_method_test.v diff --git a/vlib/v/tests/array_of_interfaces_equality_test.v b/vlib/v/tests/builtin_arrays/array_of_interfaces_equality_test.v similarity index 100% rename from vlib/v/tests/array_of_interfaces_equality_test.v rename to vlib/v/tests/builtin_arrays/array_of_interfaces_equality_test.v diff --git a/vlib/v/tests/array_of_map_with_default_test.v b/vlib/v/tests/builtin_arrays/array_of_map_with_default_test.v similarity index 100% rename from vlib/v/tests/array_of_map_with_default_test.v rename to vlib/v/tests/builtin_arrays/array_of_map_with_default_test.v diff --git a/vlib/v/tests/array_of_ptrs_test.v b/vlib/v/tests/builtin_arrays/array_of_ptrs_test.v similarity index 100% rename from vlib/v/tests/array_of_ptrs_test.v rename to vlib/v/tests/builtin_arrays/array_of_ptrs_test.v diff --git a/vlib/v/tests/array_of_reference_sumtype_test.v b/vlib/v/tests/builtin_arrays/array_of_reference_sumtype_test.v similarity index 100% rename from vlib/v/tests/array_of_reference_sumtype_test.v rename to vlib/v/tests/builtin_arrays/array_of_reference_sumtype_test.v diff --git a/vlib/v/tests/array_of_sumtype_append_aggregate_type_test.v b/vlib/v/tests/builtin_arrays/array_of_sumtype_append_aggregate_type_test.v similarity index 100% rename from vlib/v/tests/array_of_sumtype_append_aggregate_type_test.v rename to vlib/v/tests/builtin_arrays/array_of_sumtype_append_aggregate_type_test.v diff --git a/vlib/v/tests/array_of_sumtype_append_alias_test.v b/vlib/v/tests/builtin_arrays/array_of_sumtype_append_alias_test.v similarity index 100% rename from vlib/v/tests/array_of_sumtype_append_alias_test.v rename to vlib/v/tests/builtin_arrays/array_of_sumtype_append_alias_test.v diff --git a/vlib/v/tests/array_of_sumtype_append_array_of_sumtype_test.v b/vlib/v/tests/builtin_arrays/array_of_sumtype_append_array_of_sumtype_test.v similarity index 100% rename from vlib/v/tests/array_of_sumtype_append_array_of_sumtype_test.v rename to vlib/v/tests/builtin_arrays/array_of_sumtype_append_array_of_sumtype_test.v diff --git a/vlib/v/tests/array_of_sumtype_append_literal_type_test.v b/vlib/v/tests/builtin_arrays/array_of_sumtype_append_literal_type_test.v similarity index 100% rename from vlib/v/tests/array_of_sumtype_append_literal_type_test.v rename to vlib/v/tests/builtin_arrays/array_of_sumtype_append_literal_type_test.v diff --git a/vlib/v/tests/array_of_sumtype_init_test.v b/vlib/v/tests/builtin_arrays/array_of_sumtype_init_test.v similarity index 100% rename from vlib/v/tests/array_of_sumtype_init_test.v rename to vlib/v/tests/builtin_arrays/array_of_sumtype_init_test.v diff --git a/vlib/v/tests/array_of_sumtype_with_default_test.v b/vlib/v/tests/builtin_arrays/array_of_sumtype_with_default_test.v similarity index 100% rename from vlib/v/tests/array_of_sumtype_with_default_test.v rename to vlib/v/tests/builtin_arrays/array_of_sumtype_with_default_test.v diff --git a/vlib/v/tests/array_of_sumtypes_test.v b/vlib/v/tests/builtin_arrays/array_of_sumtypes_test.v similarity index 100% rename from vlib/v/tests/array_of_sumtypes_test.v rename to vlib/v/tests/builtin_arrays/array_of_sumtypes_test.v diff --git a/vlib/v/tests/array_of_threads_wait_test.v b/vlib/v/tests/builtin_arrays/array_of_threads_wait_test.v similarity index 100% rename from vlib/v/tests/array_of_threads_wait_test.v rename to vlib/v/tests/builtin_arrays/array_of_threads_wait_test.v diff --git a/vlib/v/tests/array_ops_create_just_one_closure_test.c.v b/vlib/v/tests/builtin_arrays/array_ops_create_just_one_closure_test.c.v similarity index 100% rename from vlib/v/tests/array_ops_create_just_one_closure_test.c.v rename to vlib/v/tests/builtin_arrays/array_ops_create_just_one_closure_test.c.v diff --git a/vlib/v/tests/array_ptr_compare_test.v b/vlib/v/tests/builtin_arrays/array_ptr_compare_test.v similarity index 100% rename from vlib/v/tests/array_ptr_compare_test.v rename to vlib/v/tests/builtin_arrays/array_ptr_compare_test.v diff --git a/vlib/v/tests/array_slice_assign_test.v b/vlib/v/tests/builtin_arrays/array_slice_assign_test.v similarity index 100% rename from vlib/v/tests/array_slice_assign_test.v rename to vlib/v/tests/builtin_arrays/array_slice_assign_test.v diff --git a/vlib/v/tests/array_slice_test.v b/vlib/v/tests/builtin_arrays/array_slice_test.v similarity index 100% rename from vlib/v/tests/array_slice_test.v rename to vlib/v/tests/builtin_arrays/array_slice_test.v diff --git a/vlib/v/tests/array_sort_lt_overload_test.v b/vlib/v/tests/builtin_arrays/array_sort_lt_overload_test.v similarity index 100% rename from vlib/v/tests/array_sort_lt_overload_test.v rename to vlib/v/tests/builtin_arrays/array_sort_lt_overload_test.v diff --git a/vlib/v/tests/array_sort_with_fn_call_test.v b/vlib/v/tests/builtin_arrays/array_sort_with_fn_call_test.v similarity index 100% rename from vlib/v/tests/array_sort_with_fn_call_test.v rename to vlib/v/tests/builtin_arrays/array_sort_with_fn_call_test.v diff --git a/vlib/v/tests/array_string_test.v b/vlib/v/tests/builtin_arrays/array_string_test.v similarity index 100% rename from vlib/v/tests/array_string_test.v rename to vlib/v/tests/builtin_arrays/array_string_test.v diff --git a/vlib/v/tests/array_test.v b/vlib/v/tests/builtin_arrays/array_test.v similarity index 100% rename from vlib/v/tests/array_test.v rename to vlib/v/tests/builtin_arrays/array_test.v diff --git a/vlib/v/tests/array_to_string_test.v b/vlib/v/tests/builtin_arrays/array_to_string_test.v similarity index 100% rename from vlib/v/tests/array_to_string_test.v rename to vlib/v/tests/builtin_arrays/array_to_string_test.v diff --git a/vlib/v/tests/array_type_alias_test.v b/vlib/v/tests/builtin_arrays/array_type_alias_test.v similarity index 100% rename from vlib/v/tests/array_type_alias_test.v rename to vlib/v/tests/builtin_arrays/array_type_alias_test.v diff --git a/vlib/v/tests/array_with_fixed_array_test.v b/vlib/v/tests/builtin_arrays/array_with_fixed_array_test.v similarity index 100% rename from vlib/v/tests/array_with_fixed_array_test.v rename to vlib/v/tests/builtin_arrays/array_with_fixed_array_test.v diff --git a/vlib/v/tests/array_with_it_test.v b/vlib/v/tests/builtin_arrays/array_with_it_test.v similarity index 100% rename from vlib/v/tests/array_with_it_test.v rename to vlib/v/tests/builtin_arrays/array_with_it_test.v diff --git a/vlib/v/tests/arraydecompose_nonvariadic_test.v b/vlib/v/tests/builtin_arrays/arraydecompose_nonvariadic_test.v similarity index 100% rename from vlib/v/tests/arraydecompose_nonvariadic_test.v rename to vlib/v/tests/builtin_arrays/arraydecompose_nonvariadic_test.v diff --git a/vlib/v/tests/arrays_and_maps_of_empty_structs_should_work_test.v b/vlib/v/tests/builtin_arrays/arrays_and_maps_of_empty_structs_should_work_test.v similarity index 100% rename from vlib/v/tests/arrays_and_maps_of_empty_structs_should_work_test.v rename to vlib/v/tests/builtin_arrays/arrays_and_maps_of_empty_structs_should_work_test.v diff --git a/vlib/v/tests/fixed_array_2_test.v b/vlib/v/tests/builtin_arrays/fixed_array_2_test.v similarity index 100% rename from vlib/v/tests/fixed_array_2_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_2_test.v diff --git a/vlib/v/tests/fixed_array_chan_test.v b/vlib/v/tests/builtin_arrays/fixed_array_chan_test.v similarity index 100% rename from vlib/v/tests/fixed_array_chan_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_chan_test.v diff --git a/vlib/v/tests/fixed_array_const_size_test.v b/vlib/v/tests/builtin_arrays/fixed_array_const_size_test.v similarity index 100% rename from vlib/v/tests/fixed_array_const_size_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_const_size_test.v diff --git a/vlib/v/tests/fixed_array_explicit_decompose_test.v b/vlib/v/tests/builtin_arrays/fixed_array_explicit_decompose_test.v similarity index 100% rename from vlib/v/tests/fixed_array_explicit_decompose_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_explicit_decompose_test.v diff --git a/vlib/v/tests/fixed_array_generic_ini_test.v b/vlib/v/tests/builtin_arrays/fixed_array_generic_ini_test.v similarity index 100% rename from vlib/v/tests/fixed_array_generic_ini_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_generic_ini_test.v diff --git a/vlib/v/tests/fixed_array_generic_ret_test.v b/vlib/v/tests/builtin_arrays/fixed_array_generic_ret_test.v similarity index 100% rename from vlib/v/tests/fixed_array_generic_ret_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_generic_ret_test.v diff --git a/vlib/v/tests/fixed_array_in_op_test.v b/vlib/v/tests/builtin_arrays/fixed_array_in_op_test.v similarity index 100% rename from vlib/v/tests/fixed_array_in_op_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_in_op_test.v diff --git a/vlib/v/tests/fixed_array_init_test.v b/vlib/v/tests/builtin_arrays/fixed_array_init_test.v similarity index 100% rename from vlib/v/tests/fixed_array_init_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_init_test.v diff --git a/vlib/v/tests/fixed_array_literal_index_test.v b/vlib/v/tests/builtin_arrays/fixed_array_literal_index_test.v similarity index 100% rename from vlib/v/tests/fixed_array_literal_index_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_literal_index_test.v diff --git a/vlib/v/tests/fixed_array_literal_range_index_test.v b/vlib/v/tests/builtin_arrays/fixed_array_literal_range_index_test.v similarity index 100% rename from vlib/v/tests/fixed_array_literal_range_index_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_literal_range_index_test.v diff --git a/vlib/v/tests/fixed_array_map_test.v b/vlib/v/tests/builtin_arrays/fixed_array_map_test.v similarity index 100% rename from vlib/v/tests/fixed_array_map_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_map_test.v diff --git a/vlib/v/tests/fixed_array_of_alias_struct_test.v b/vlib/v/tests/builtin_arrays/fixed_array_of_alias_struct_test.v similarity index 100% rename from vlib/v/tests/fixed_array_of_alias_struct_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_of_alias_struct_test.v diff --git a/vlib/v/tests/fixed_array_of_fn_test.v b/vlib/v/tests/builtin_arrays/fixed_array_of_fn_test.v similarity index 100% rename from vlib/v/tests/fixed_array_of_fn_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_of_fn_test.v diff --git a/vlib/v/tests/fixed_array_of_interfaces_equality_test.v b/vlib/v/tests/builtin_arrays/fixed_array_of_interfaces_equality_test.v similarity index 100% rename from vlib/v/tests/fixed_array_of_interfaces_equality_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_of_interfaces_equality_test.v diff --git a/vlib/v/tests/fixed_array_of_option_test.v b/vlib/v/tests/builtin_arrays/fixed_array_of_option_test.v similarity index 100% rename from vlib/v/tests/fixed_array_of_option_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_of_option_test.v diff --git a/vlib/v/tests/fixed_array_of_threads_test.v b/vlib/v/tests/builtin_arrays/fixed_array_of_threads_test.v similarity index 100% rename from vlib/v/tests/fixed_array_of_threads_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_of_threads_test.v diff --git a/vlib/v/tests/fixed_array_of_threads_wait_test.v b/vlib/v/tests/builtin_arrays/fixed_array_of_threads_wait_test.v similarity index 100% rename from vlib/v/tests/fixed_array_of_threads_wait_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_of_threads_wait_test.v diff --git a/vlib/v/tests/fixed_array_op_overload_test.v b/vlib/v/tests/builtin_arrays/fixed_array_op_overload_test.v similarity index 100% rename from vlib/v/tests/fixed_array_op_overload_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_op_overload_test.v diff --git a/vlib/v/tests/fixed_array_return_decl_test.v b/vlib/v/tests/builtin_arrays/fixed_array_return_decl_test.v similarity index 100% rename from vlib/v/tests/fixed_array_return_decl_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_return_decl_test.v diff --git a/vlib/v/tests/fixed_array_test.v b/vlib/v/tests/builtin_arrays/fixed_array_test.v similarity index 100% rename from vlib/v/tests/fixed_array_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_test.v diff --git a/vlib/v/tests/fixed_array_to_string_test.v b/vlib/v/tests/builtin_arrays/fixed_array_to_string_test.v similarity index 100% rename from vlib/v/tests/fixed_array_to_string_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_to_string_test.v diff --git a/vlib/v/tests/fixed_array_with_map_test.v b/vlib/v/tests/builtin_arrays/fixed_array_with_map_test.v similarity index 100% rename from vlib/v/tests/fixed_array_with_map_test.v rename to vlib/v/tests/builtin_arrays/fixed_array_with_map_test.v diff --git a/vlib/v/tests/mixed_fixed_array_and_array_init_test.v b/vlib/v/tests/builtin_arrays/mixed_fixed_array_and_array_init_test.v similarity index 100% rename from vlib/v/tests/mixed_fixed_array_and_array_init_test.v rename to vlib/v/tests/builtin_arrays/mixed_fixed_array_and_array_init_test.v diff --git a/vlib/v/tests/multiple_arr_fixed_test.v b/vlib/v/tests/builtin_arrays/multiple_arr_fixed_test.v similarity index 100% rename from vlib/v/tests/multiple_arr_fixed_test.v rename to vlib/v/tests/builtin_arrays/multiple_arr_fixed_test.v diff --git a/vlib/v/tests/multiple_fixed_array_var_init_test.v b/vlib/v/tests/builtin_arrays/multiple_fixed_array_var_init_test.v similarity index 100% rename from vlib/v/tests/multiple_fixed_array_var_init_test.v rename to vlib/v/tests/builtin_arrays/multiple_fixed_array_var_init_test.v diff --git a/vlib/v/tests/slice_rval_test.v b/vlib/v/tests/builtin_arrays/slice_rval_test.v similarity index 100% rename from vlib/v/tests/slice_rval_test.v rename to vlib/v/tests/builtin_arrays/slice_rval_test.v diff --git a/vlib/v/tests/sorting_by_different_criteria_test.v b/vlib/v/tests/builtin_arrays/sorting_by_different_criteria_test.v similarity index 100% rename from vlib/v/tests/sorting_by_different_criteria_test.v rename to vlib/v/tests/builtin_arrays/sorting_by_different_criteria_test.v diff --git a/vlib/v/tests/sorting_by_references_test.v b/vlib/v/tests/builtin_arrays/sorting_by_references_test.v similarity index 100% rename from vlib/v/tests/sorting_by_references_test.v rename to vlib/v/tests/builtin_arrays/sorting_by_references_test.v diff --git a/vlib/v/tests/sorting_compare_fn_with_mut_reference_test.v b/vlib/v/tests/builtin_arrays/sorting_compare_fn_with_mut_reference_test.v similarity index 100% rename from vlib/v/tests/sorting_compare_fn_with_mut_reference_test.v rename to vlib/v/tests/builtin_arrays/sorting_compare_fn_with_mut_reference_test.v diff --git a/vlib/v/tests/static_arrays_using_const_for_size_test.v b/vlib/v/tests/builtin_arrays/static_arrays_using_const_for_size_test.v similarity index 100% rename from vlib/v/tests/static_arrays_using_const_for_size_test.v rename to vlib/v/tests/builtin_arrays/static_arrays_using_const_for_size_test.v diff --git a/vlib/v/tests/swap_array_test.v b/vlib/v/tests/builtin_arrays/swap_array_test.v similarity index 100% rename from vlib/v/tests/swap_array_test.v rename to vlib/v/tests/builtin_arrays/swap_array_test.v diff --git a/vlib/v/tests/unsafe_fixed_array_test.v b/vlib/v/tests/builtin_arrays/unsafe_fixed_array_test.v similarity index 100% rename from vlib/v/tests/unsafe_fixed_array_test.v rename to vlib/v/tests/builtin_arrays/unsafe_fixed_array_test.v diff --git a/vlib/v/tests/buitlin_fn_var_test.v b/vlib/v/tests/builtin_fn_var_test.v similarity index 100% rename from vlib/v/tests/buitlin_fn_var_test.v rename to vlib/v/tests/builtin_fn_var_test.v diff --git a/vlib/v/tests/complex_map_op_test.v b/vlib/v/tests/builtin_maps/complex_map_op_test.v similarity index 100% rename from vlib/v/tests/complex_map_op_test.v rename to vlib/v/tests/builtin_maps/complex_map_op_test.v diff --git a/vlib/v/tests/map_alias_key_test.v b/vlib/v/tests/builtin_maps/map_alias_key_test.v similarity index 100% rename from vlib/v/tests/map_alias_key_test.v rename to vlib/v/tests/builtin_maps/map_alias_key_test.v diff --git a/vlib/v/tests/map_and_array_with_fns_test.v b/vlib/v/tests/builtin_maps/map_and_array_with_fns_test.v similarity index 100% rename from vlib/v/tests/map_and_array_with_fns_test.v rename to vlib/v/tests/builtin_maps/map_and_array_with_fns_test.v diff --git a/vlib/v/tests/map_assign_array_of_interface_test.v b/vlib/v/tests/builtin_maps/map_assign_array_of_interface_test.v similarity index 100% rename from vlib/v/tests/map_assign_array_of_interface_test.v rename to vlib/v/tests/builtin_maps/map_assign_array_of_interface_test.v diff --git a/vlib/v/tests/map_assign_interface_values_with_implicit_casts_test.v b/vlib/v/tests/builtin_maps/map_assign_interface_values_with_implicit_casts_test.v similarity index 100% rename from vlib/v/tests/map_assign_interface_values_with_implicit_casts_test.v rename to vlib/v/tests/builtin_maps/map_assign_interface_values_with_implicit_casts_test.v diff --git a/vlib/v/tests/map_auto_str_ptr_test.v b/vlib/v/tests/builtin_maps/map_auto_str_ptr_test.v similarity index 100% rename from vlib/v/tests/map_auto_str_ptr_test.v rename to vlib/v/tests/builtin_maps/map_auto_str_ptr_test.v diff --git a/vlib/v/tests/map_builtin_call_test.v b/vlib/v/tests/builtin_maps/map_builtin_call_test.v similarity index 100% rename from vlib/v/tests/map_builtin_call_test.v rename to vlib/v/tests/builtin_maps/map_builtin_call_test.v diff --git a/vlib/v/tests/map_clear_test.v b/vlib/v/tests/builtin_maps/map_clear_test.v similarity index 100% rename from vlib/v/tests/map_clear_test.v rename to vlib/v/tests/builtin_maps/map_clear_test.v diff --git a/vlib/v/tests/map_complex_array_test.v b/vlib/v/tests/builtin_maps/map_complex_array_test.v similarity index 100% rename from vlib/v/tests/map_complex_array_test.v rename to vlib/v/tests/builtin_maps/map_complex_array_test.v diff --git a/vlib/v/tests/map_complex_fixed_array_test.v b/vlib/v/tests/builtin_maps/map_complex_fixed_array_test.v similarity index 100% rename from vlib/v/tests/map_complex_fixed_array_test.v rename to vlib/v/tests/builtin_maps/map_complex_fixed_array_test.v diff --git a/vlib/v/tests/map_enum_keys_test.v b/vlib/v/tests/builtin_maps/map_enum_keys_test.v similarity index 100% rename from vlib/v/tests/map_enum_keys_test.v rename to vlib/v/tests/builtin_maps/map_enum_keys_test.v diff --git a/vlib/v/tests/map_equality_test.v b/vlib/v/tests/builtin_maps/map_equality_test.v similarity index 100% rename from vlib/v/tests/map_equality_test.v rename to vlib/v/tests/builtin_maps/map_equality_test.v diff --git a/vlib/v/tests/map_fn_test.v b/vlib/v/tests/builtin_maps/map_fn_test.v similarity index 100% rename from vlib/v/tests/map_fn_test.v rename to vlib/v/tests/builtin_maps/map_fn_test.v diff --git a/vlib/v/tests/map_generic_call_test.v b/vlib/v/tests/builtin_maps/map_generic_call_test.v similarity index 100% rename from vlib/v/tests/map_generic_call_test.v rename to vlib/v/tests/builtin_maps/map_generic_call_test.v diff --git a/vlib/v/tests/map_get_anon_fn_value_test.v b/vlib/v/tests/builtin_maps/map_get_anon_fn_value_test.v similarity index 100% rename from vlib/v/tests/map_get_anon_fn_value_test.v rename to vlib/v/tests/builtin_maps/map_get_anon_fn_value_test.v diff --git a/vlib/v/tests/map_get_anon_fn_value_with_mut_arg_test.v b/vlib/v/tests/builtin_maps/map_get_anon_fn_value_with_mut_arg_test.v similarity index 100% rename from vlib/v/tests/map_get_anon_fn_value_with_mut_arg_test.v rename to vlib/v/tests/builtin_maps/map_get_anon_fn_value_with_mut_arg_test.v diff --git a/vlib/v/tests/map_get_assign_blank_test.v b/vlib/v/tests/builtin_maps/map_get_assign_blank_test.v similarity index 100% rename from vlib/v/tests/map_get_assign_blank_test.v rename to vlib/v/tests/builtin_maps/map_get_assign_blank_test.v diff --git a/vlib/v/tests/map_high_order_assign_test.v b/vlib/v/tests/builtin_maps/map_high_order_assign_test.v similarity index 100% rename from vlib/v/tests/map_high_order_assign_test.v rename to vlib/v/tests/builtin_maps/map_high_order_assign_test.v diff --git a/vlib/v/tests/map_init_with_enum_keys_test.v b/vlib/v/tests/builtin_maps/map_init_with_enum_keys_test.v similarity index 100% rename from vlib/v/tests/map_init_with_enum_keys_test.v rename to vlib/v/tests/builtin_maps/map_init_with_enum_keys_test.v diff --git a/vlib/v/tests/map_init_with_multi_enum_keys_test.v b/vlib/v/tests/builtin_maps/map_init_with_multi_enum_keys_test.v similarity index 100% rename from vlib/v/tests/map_init_with_multi_enum_keys_test.v rename to vlib/v/tests/builtin_maps/map_init_with_multi_enum_keys_test.v diff --git a/vlib/v/tests/map_init_with_update_test.v b/vlib/v/tests/builtin_maps/map_init_with_update_test.v similarity index 100% rename from vlib/v/tests/map_init_with_update_test.v rename to vlib/v/tests/builtin_maps/map_init_with_update_test.v diff --git a/vlib/v/tests/map_key_alias_test.v b/vlib/v/tests/builtin_maps/map_key_alias_test.v similarity index 100% rename from vlib/v/tests/map_key_alias_test.v rename to vlib/v/tests/builtin_maps/map_key_alias_test.v diff --git a/vlib/v/tests/map_key_expr_test.v b/vlib/v/tests/builtin_maps/map_key_expr_test.v similarity index 100% rename from vlib/v/tests/map_key_expr_test.v rename to vlib/v/tests/builtin_maps/map_key_expr_test.v diff --git a/vlib/v/tests/map_literals_method_call_test.v b/vlib/v/tests/builtin_maps/map_literals_method_call_test.v similarity index 100% rename from vlib/v/tests/map_literals_method_call_test.v rename to vlib/v/tests/builtin_maps/map_literals_method_call_test.v diff --git a/vlib/v/tests/map_mut_fn_test.v b/vlib/v/tests/builtin_maps/map_mut_fn_test.v similarity index 100% rename from vlib/v/tests/map_mut_fn_test.v rename to vlib/v/tests/builtin_maps/map_mut_fn_test.v diff --git a/vlib/v/tests/map_reference_value_test.v b/vlib/v/tests/builtin_maps/map_reference_value_test.v similarity index 100% rename from vlib/v/tests/map_reference_value_test.v rename to vlib/v/tests/builtin_maps/map_reference_value_test.v diff --git a/vlib/v/tests/map_selector_assign_test.v b/vlib/v/tests/builtin_maps/map_selector_assign_test.v similarity index 100% rename from vlib/v/tests/map_selector_assign_test.v rename to vlib/v/tests/builtin_maps/map_selector_assign_test.v diff --git a/vlib/v/tests/map_sumtype_value_init_test.v b/vlib/v/tests/builtin_maps/map_sumtype_value_init_test.v similarity index 100% rename from vlib/v/tests/map_sumtype_value_init_test.v rename to vlib/v/tests/builtin_maps/map_sumtype_value_init_test.v diff --git a/vlib/v/tests/map_sumtype_values_test.v b/vlib/v/tests/builtin_maps/map_sumtype_values_test.v similarity index 100% rename from vlib/v/tests/map_sumtype_values_test.v rename to vlib/v/tests/builtin_maps/map_sumtype_values_test.v diff --git a/vlib/v/tests/map_to_string_test.v b/vlib/v/tests/builtin_maps/map_to_string_test.v similarity index 100% rename from vlib/v/tests/map_to_string_test.v rename to vlib/v/tests/builtin_maps/map_to_string_test.v diff --git a/vlib/v/tests/map_type_alias_test.v b/vlib/v/tests/builtin_maps/map_type_alias_test.v similarity index 100% rename from vlib/v/tests/map_type_alias_test.v rename to vlib/v/tests/builtin_maps/map_type_alias_test.v diff --git a/vlib/v/tests/map_value_init_test.v b/vlib/v/tests/builtin_maps/map_value_init_test.v similarity index 100% rename from vlib/v/tests/map_value_init_test.v rename to vlib/v/tests/builtin_maps/map_value_init_test.v diff --git a/vlib/v/tests/map_value_ref_interp_test.v b/vlib/v/tests/builtin_maps/map_value_ref_interp_test.v similarity index 100% rename from vlib/v/tests/map_value_ref_interp_test.v rename to vlib/v/tests/builtin_maps/map_value_ref_interp_test.v diff --git a/vlib/v/tests/map_value_with_option_result_test.v b/vlib/v/tests/builtin_maps/map_value_with_option_result_test.v similarity index 100% rename from vlib/v/tests/map_value_with_option_result_test.v rename to vlib/v/tests/builtin_maps/map_value_with_option_result_test.v diff --git a/vlib/v/tests/map_with_selector_test.v b/vlib/v/tests/builtin_maps/map_with_selector_test.v similarity index 100% rename from vlib/v/tests/map_with_selector_test.v rename to vlib/v/tests/builtin_maps/map_with_selector_test.v diff --git a/vlib/v/tests/maps_equal_test.v b/vlib/v/tests/builtin_maps/maps_equal_test.v similarity index 100% rename from vlib/v/tests/maps_equal_test.v rename to vlib/v/tests/builtin_maps/maps_equal_test.v diff --git a/vlib/v/tests/builtin_maps/modules/geometry/geometry.v b/vlib/v/tests/builtin_maps/modules/geometry/geometry.v new file mode 100644 index 0000000000..cdb423ca80 --- /dev/null +++ b/vlib/v/tests/builtin_maps/modules/geometry/geometry.v @@ -0,0 +1,48 @@ +module geometry + +const module_name = 'geometry' + +pub enum Shape { + circle + rectangle + triangle +} + +pub type ShapeMap = map[Shape]string + +// used by vlib/v/tests/map_enum_keys_test.v +pub enum Form3D { + sphere + cylinder + cone + cube + invalid +} + +pub struct Point { +pub mut: + x int + y int +} + +pub struct Line { +pub mut: + ps []Point +} + +pub fn (a Point) + (b Point) Point { + return Point{ + x: a.x + b.x + y: a.y + b.y + } +} + +pub fn (a Point) str() string { + return '${a.x} ${a.y}' +} + +pub fn point_str(a Point) string { + return a.str() +} + +pub type PointCond = fn (p Point) bool diff --git a/vlib/v/tests/cstrings_test.c.v b/vlib/v/tests/builtin_strings_and_interpolation/cstrings_test.c.v similarity index 100% rename from vlib/v/tests/cstrings_test.c.v rename to vlib/v/tests/builtin_strings_and_interpolation/cstrings_test.c.v diff --git a/vlib/v/tests/high_ascii_const_rune_test.v b/vlib/v/tests/builtin_strings_and_interpolation/high_ascii_const_rune_test.v similarity index 100% rename from vlib/v/tests/high_ascii_const_rune_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/high_ascii_const_rune_test.v diff --git a/vlib/v/tests/num_lit_call_method_test.v b/vlib/v/tests/builtin_strings_and_interpolation/num_lit_call_method_test.v similarity index 100% rename from vlib/v/tests/num_lit_call_method_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/num_lit_call_method_test.v diff --git a/vlib/v/tests/ptr_str_method_test.v b/vlib/v/tests/builtin_strings_and_interpolation/ptr_str_method_test.v similarity index 100% rename from vlib/v/tests/ptr_str_method_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/ptr_str_method_test.v diff --git a/vlib/v/tests/raw_string_test.v b/vlib/v/tests/builtin_strings_and_interpolation/raw_string_test.v similarity index 100% rename from vlib/v/tests/raw_string_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/raw_string_test.v diff --git a/vlib/v/tests/str_array_of_reference_test.v b/vlib/v/tests/builtin_strings_and_interpolation/str_array_of_reference_test.v similarity index 100% rename from vlib/v/tests/str_array_of_reference_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/str_array_of_reference_test.v diff --git a/vlib/v/tests/str_circular_test.v b/vlib/v/tests/builtin_strings_and_interpolation/str_circular_test.v similarity index 100% rename from vlib/v/tests/str_circular_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/str_circular_test.v diff --git a/vlib/v/tests/str_gen_test.v b/vlib/v/tests/builtin_strings_and_interpolation/str_gen_test.v similarity index 100% rename from vlib/v/tests/str_gen_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/str_gen_test.v diff --git a/vlib/v/tests/str_reference_struct_test.v b/vlib/v/tests/builtin_strings_and_interpolation/str_reference_struct_test.v similarity index 100% rename from vlib/v/tests/str_reference_struct_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/str_reference_struct_test.v diff --git a/vlib/v/tests/string_alias_of_struct_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_alias_of_struct_test.v similarity index 100% rename from vlib/v/tests/string_alias_of_struct_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_alias_of_struct_test.v diff --git a/vlib/v/tests/string_alias_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_alias_test.v similarity index 100% rename from vlib/v/tests/string_alias_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_alias_test.v diff --git a/vlib/v/tests/string_array_of_ref_type_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_array_of_ref_type_test.v similarity index 100% rename from vlib/v/tests/string_array_of_ref_type_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_array_of_ref_type_test.v diff --git a/vlib/v/tests/string_escape_backslash_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_escape_backslash_test.v similarity index 100% rename from vlib/v/tests/string_escape_backslash_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_escape_backslash_test.v diff --git a/vlib/v/tests/string_index_in_for_mut_in_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_index_in_for_mut_in_test.v similarity index 100% rename from vlib/v/tests/string_index_in_for_mut_in_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_index_in_for_mut_in_test.v diff --git a/vlib/v/tests/string_index_or_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_index_or_test.v similarity index 100% rename from vlib/v/tests/string_index_or_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_index_or_test.v diff --git a/vlib/v/tests/string_interpolation_alias_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_alias_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_alias_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_alias_test.v diff --git a/vlib/v/tests/string_interpolation_array_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_array_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_array_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_array_test.v diff --git a/vlib/v/tests/string_interpolation_custom_str_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_custom_str_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_custom_str_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_custom_str_test.v diff --git a/vlib/v/tests/string_interpolation_float_fmt_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_float_fmt_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_float_fmt_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_float_fmt_test.v diff --git a/vlib/v/tests/string_interpolation_floats_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_floats_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_floats_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_floats_test.v diff --git a/vlib/v/tests/string_interpolation_function_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_function_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_function_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_function_test.v diff --git a/vlib/v/tests/string_interpolation_inner_cbr_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_inner_cbr_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_inner_cbr_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_inner_cbr_test.v diff --git a/vlib/v/tests/string_interpolation_match_expr_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_match_expr_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_match_expr_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_match_expr_test.v diff --git a/vlib/v/tests/string_interpolation_multi_return_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_multi_return_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_multi_return_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_multi_return_test.v diff --git a/vlib/v/tests/string_interpolation_multistmt_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_multistmt_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_multistmt_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_multistmt_test.v diff --git a/vlib/v/tests/string_interpolation_of_array_of_structs_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_of_array_of_structs_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_of_array_of_structs_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_of_array_of_structs_test.v diff --git a/vlib/v/tests/string_interpolation_shared_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_shared_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_shared_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_shared_test.v diff --git a/vlib/v/tests/string_interpolation_string_args_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_string_args_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_string_args_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_string_args_test.v diff --git a/vlib/v/tests/string_interpolation_string_lit_with_fmt_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_string_lit_with_fmt_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_string_lit_with_fmt_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_string_lit_with_fmt_test.v diff --git a/vlib/v/tests/string_interpolation_struct_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_struct_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_struct_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_struct_test.v diff --git a/vlib/v/tests/string_interpolation_struct_with_usize_field_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_struct_with_usize_field_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_struct_with_usize_field_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_struct_with_usize_field_test.v diff --git a/vlib/v/tests/string_interpolation_sumtype_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_sumtype_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_sumtype_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_sumtype_test.v diff --git a/vlib/v/tests/string_interpolation_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_test.v diff --git a/vlib/v/tests/string_interpolation_variadic_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_variadic_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_variadic_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_variadic_test.v diff --git a/vlib/v/tests/string_interpolation_with_inner_quotes_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_with_inner_quotes_test.v similarity index 100% rename from vlib/v/tests/string_interpolation_with_inner_quotes_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_interpolation_with_inner_quotes_test.v diff --git a/vlib/v/tests/string_map_with_generic_struct_value_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_map_with_generic_struct_value_test.v similarity index 100% rename from vlib/v/tests/string_map_with_generic_struct_value_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_map_with_generic_struct_value_test.v diff --git a/vlib/v/tests/string_option_none_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_option_none_test.v similarity index 100% rename from vlib/v/tests/string_option_none_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_option_none_test.v diff --git a/vlib/v/tests/string_ref_struct_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_ref_struct_test.v similarity index 100% rename from vlib/v/tests/string_ref_struct_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_ref_struct_test.v diff --git a/vlib/v/tests/string_struct_interpolation_test.v b/vlib/v/tests/builtin_strings_and_interpolation/string_struct_interpolation_test.v similarity index 100% rename from vlib/v/tests/string_struct_interpolation_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/string_struct_interpolation_test.v diff --git a/vlib/v/tests/strings_builder_shift_array_reverse_test.v b/vlib/v/tests/builtin_strings_and_interpolation/strings_builder_shift_array_reverse_test.v similarity index 100% rename from vlib/v/tests/strings_builder_shift_array_reverse_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/strings_builder_shift_array_reverse_test.v diff --git a/vlib/v/tests/strings_unicode_test.v b/vlib/v/tests/builtin_strings_and_interpolation/strings_unicode_test.v similarity index 100% rename from vlib/v/tests/strings_unicode_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/strings_unicode_test.v diff --git a/vlib/v/tests/tag_autostr_allowrecurse_test.v b/vlib/v/tests/builtin_strings_and_interpolation/tag_autostr_allowrecurse_test.v similarity index 100% rename from vlib/v/tests/tag_autostr_allowrecurse_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/tag_autostr_allowrecurse_test.v diff --git a/vlib/v/tests/vargs_auto_str_method_and_println_test.v b/vlib/v/tests/builtin_strings_and_interpolation/vargs_auto_str_method_and_println_test.v similarity index 100% rename from vlib/v/tests/vargs_auto_str_method_and_println_test.v rename to vlib/v/tests/builtin_strings_and_interpolation/vargs_auto_str_method_and_println_test.v diff --git a/vlib/v/tests/as_cast_already_smartcast_sumtype_test.v b/vlib/v/tests/casts/as_cast_already_smartcast_sumtype_test.v similarity index 100% rename from vlib/v/tests/as_cast_already_smartcast_sumtype_test.v rename to vlib/v/tests/casts/as_cast_already_smartcast_sumtype_test.v diff --git a/vlib/v/tests/as_cast_is_expr_sumtype_fn_result_test.v b/vlib/v/tests/casts/as_cast_is_expr_sumtype_fn_result_test.v similarity index 100% rename from vlib/v/tests/as_cast_is_expr_sumtype_fn_result_test.v rename to vlib/v/tests/casts/as_cast_is_expr_sumtype_fn_result_test.v diff --git a/vlib/v/tests/as_cast_literal_test.v b/vlib/v/tests/casts/as_cast_literal_test.v similarity index 100% rename from vlib/v/tests/as_cast_literal_test.v rename to vlib/v/tests/casts/as_cast_literal_test.v diff --git a/vlib/v/tests/as_cast_selector_test.v b/vlib/v/tests/casts/as_cast_selector_test.v similarity index 100% rename from vlib/v/tests/as_cast_selector_test.v rename to vlib/v/tests/casts/as_cast_selector_test.v diff --git a/vlib/v/tests/autocast_in_if_conds_1_test.v b/vlib/v/tests/casts/autocast_in_if_conds_1_test.v similarity index 100% rename from vlib/v/tests/autocast_in_if_conds_1_test.v rename to vlib/v/tests/casts/autocast_in_if_conds_1_test.v diff --git a/vlib/v/tests/autocast_in_if_conds_2_test.v b/vlib/v/tests/casts/autocast_in_if_conds_2_test.v similarity index 100% rename from vlib/v/tests/autocast_in_if_conds_2_test.v rename to vlib/v/tests/casts/autocast_in_if_conds_2_test.v diff --git a/vlib/v/tests/autocast_in_if_conds_3_test.v b/vlib/v/tests/casts/autocast_in_if_conds_3_test.v similarity index 100% rename from vlib/v/tests/autocast_in_if_conds_3_test.v rename to vlib/v/tests/casts/autocast_in_if_conds_3_test.v diff --git a/vlib/v/tests/autocast_in_if_conds_4_test.v b/vlib/v/tests/casts/autocast_in_if_conds_4_test.v similarity index 100% rename from vlib/v/tests/autocast_in_if_conds_4_test.v rename to vlib/v/tests/casts/autocast_in_if_conds_4_test.v diff --git a/vlib/v/tests/autocast_in_if_conds_5_test.v b/vlib/v/tests/casts/autocast_in_if_conds_5_test.v similarity index 100% rename from vlib/v/tests/autocast_in_if_conds_5_test.v rename to vlib/v/tests/casts/autocast_in_if_conds_5_test.v diff --git a/vlib/v/tests/cast_bool_to_int_test.v b/vlib/v/tests/casts/cast_bool_to_int_test.v similarity index 100% rename from vlib/v/tests/cast_bool_to_int_test.v rename to vlib/v/tests/casts/cast_bool_to_int_test.v diff --git a/vlib/v/tests/cast_comptime_test.v b/vlib/v/tests/casts/cast_comptime_test.v similarity index 100% rename from vlib/v/tests/cast_comptime_test.v rename to vlib/v/tests/casts/cast_comptime_test.v diff --git a/vlib/v/tests/cast_fixed_array_to_ptr_ptr_test.v b/vlib/v/tests/casts/cast_fixed_array_to_ptr_ptr_test.v similarity index 100% rename from vlib/v/tests/cast_fixed_array_to_ptr_ptr_test.v rename to vlib/v/tests/casts/cast_fixed_array_to_ptr_ptr_test.v diff --git a/vlib/v/tests/cast_in_comptime_if_test.v b/vlib/v/tests/casts/cast_in_comptime_if_test.v similarity index 100% rename from vlib/v/tests/cast_in_comptime_if_test.v rename to vlib/v/tests/casts/cast_in_comptime_if_test.v diff --git a/vlib/v/tests/cast_in_index_of_ref_fixed_array_test.v b/vlib/v/tests/casts/cast_in_index_of_ref_fixed_array_test.v similarity index 100% rename from vlib/v/tests/cast_in_index_of_ref_fixed_array_test.v rename to vlib/v/tests/casts/cast_in_index_of_ref_fixed_array_test.v diff --git a/vlib/v/tests/cast_int_to_interface_test.v b/vlib/v/tests/casts/cast_int_to_interface_test.v similarity index 100% rename from vlib/v/tests/cast_int_to_interface_test.v rename to vlib/v/tests/casts/cast_int_to_interface_test.v diff --git a/vlib/v/tests/cast_interface_to_impl_test.v b/vlib/v/tests/casts/cast_interface_to_impl_test.v similarity index 100% rename from vlib/v/tests/cast_interface_to_impl_test.v rename to vlib/v/tests/casts/cast_interface_to_impl_test.v diff --git a/vlib/v/tests/cast_none_to_option_test.v b/vlib/v/tests/casts/cast_none_to_option_test.v similarity index 100% rename from vlib/v/tests/cast_none_to_option_test.v rename to vlib/v/tests/casts/cast_none_to_option_test.v diff --git a/vlib/v/tests/cast_option_to_interface_test.v b/vlib/v/tests/casts/cast_option_to_interface_test.v similarity index 100% rename from vlib/v/tests/cast_option_to_interface_test.v rename to vlib/v/tests/casts/cast_option_to_interface_test.v diff --git a/vlib/v/tests/cast_precedence_test.v b/vlib/v/tests/casts/cast_precedence_test.v similarity index 100% rename from vlib/v/tests/cast_precedence_test.v rename to vlib/v/tests/casts/cast_precedence_test.v diff --git a/vlib/v/tests/cast_sumtype_as_generic_test.v b/vlib/v/tests/casts/cast_sumtype_as_generic_test.v similarity index 100% rename from vlib/v/tests/cast_sumtype_as_generic_test.v rename to vlib/v/tests/casts/cast_sumtype_as_generic_test.v diff --git a/vlib/v/tests/cast_test.js.v b/vlib/v/tests/casts/cast_test.js.v similarity index 100% rename from vlib/v/tests/cast_test.js.v rename to vlib/v/tests/casts/cast_test.js.v diff --git a/vlib/v/tests/cast_to_alias_test.v b/vlib/v/tests/casts/cast_to_alias_test.v similarity index 100% rename from vlib/v/tests/cast_to_alias_test.v rename to vlib/v/tests/casts/cast_to_alias_test.v diff --git a/vlib/v/tests/cast_to_byte_test.v b/vlib/v/tests/casts/cast_to_byte_test.v similarity index 100% rename from vlib/v/tests/cast_to_byte_test.v rename to vlib/v/tests/casts/cast_to_byte_test.v diff --git a/vlib/v/tests/cast_to_empty_interface_test.v b/vlib/v/tests/casts/cast_to_empty_interface_test.v similarity index 100% rename from vlib/v/tests/cast_to_empty_interface_test.v rename to vlib/v/tests/casts/cast_to_empty_interface_test.v diff --git a/vlib/v/tests/cast_to_interface_test.v b/vlib/v/tests/casts/cast_to_interface_test.v similarity index 100% rename from vlib/v/tests/cast_to_interface_test.v rename to vlib/v/tests/casts/cast_to_interface_test.v diff --git a/vlib/v/tests/cast_to_interface_with_struct_field_default_test.v b/vlib/v/tests/casts/cast_to_interface_with_struct_field_default_test.v similarity index 100% rename from vlib/v/tests/cast_to_interface_with_struct_field_default_test.v rename to vlib/v/tests/casts/cast_to_interface_with_struct_field_default_test.v diff --git a/vlib/v/tests/cast_to_u8_test.v b/vlib/v/tests/casts/cast_to_u8_test.v similarity index 100% rename from vlib/v/tests/cast_to_u8_test.v rename to vlib/v/tests/casts/cast_to_u8_test.v diff --git a/vlib/v/tests/conversions_test.v b/vlib/v/tests/casts/conversions_test.v similarity index 100% rename from vlib/v/tests/conversions_test.v rename to vlib/v/tests/casts/conversions_test.v diff --git a/vlib/v/tests/voidptr_to_u64_cast_a_test.v b/vlib/v/tests/casts/voidptr_to_u64_cast_a_test.v similarity index 100% rename from vlib/v/tests/voidptr_to_u64_cast_a_test.v rename to vlib/v/tests/casts/voidptr_to_u64_cast_a_test.v diff --git a/vlib/v/tests/voidptr_to_u64_cast_b_test.v b/vlib/v/tests/casts/voidptr_to_u64_cast_b_test.v similarity index 100% rename from vlib/v/tests/voidptr_to_u64_cast_b_test.v rename to vlib/v/tests/casts/voidptr_to_u64_cast_b_test.v diff --git a/vlib/v/tests/comptime_arr_type_test.v b/vlib/v/tests/comptime/comptime_arr_type_test.v similarity index 100% rename from vlib/v/tests/comptime_arr_type_test.v rename to vlib/v/tests/comptime/comptime_arr_type_test.v diff --git a/vlib/v/tests/comptime_array_fixed_field_test.v b/vlib/v/tests/comptime/comptime_array_fixed_field_test.v similarity index 100% rename from vlib/v/tests/comptime_array_fixed_field_test.v rename to vlib/v/tests/comptime/comptime_array_fixed_field_test.v diff --git a/vlib/v/tests/comptime_at_test.v b/vlib/v/tests/comptime/comptime_at_test.v similarity index 100% rename from vlib/v/tests/comptime_at_test.v rename to vlib/v/tests/comptime/comptime_at_test.v diff --git a/vlib/v/tests/comptime_attr_test.v b/vlib/v/tests/comptime/comptime_attr_test.v similarity index 100% rename from vlib/v/tests/comptime_attr_test.v rename to vlib/v/tests/comptime/comptime_attr_test.v diff --git a/vlib/v/tests/comptime_attribute_selector_test.v b/vlib/v/tests/comptime/comptime_attribute_selector_test.v similarity index 100% rename from vlib/v/tests/comptime_attribute_selector_test.v rename to vlib/v/tests/comptime/comptime_attribute_selector_test.v diff --git a/vlib/v/tests/comptime_bittness_and_endianess_test.v b/vlib/v/tests/comptime/comptime_bittness_and_endianess_test.v similarity index 100% rename from vlib/v/tests/comptime_bittness_and_endianess_test.v rename to vlib/v/tests/comptime/comptime_bittness_and_endianess_test.v diff --git a/vlib/v/tests/comptime_branching_working_without_compile_error_test.v b/vlib/v/tests/comptime/comptime_branching_working_without_compile_error_test.v similarity index 100% rename from vlib/v/tests/comptime_branching_working_without_compile_error_test.v rename to vlib/v/tests/comptime/comptime_branching_working_without_compile_error_test.v diff --git a/vlib/v/tests/comptime_call_in_fn_call_test.v b/vlib/v/tests/comptime/comptime_call_in_fn_call_test.v similarity index 100% rename from vlib/v/tests/comptime_call_in_fn_call_test.v rename to vlib/v/tests/comptime/comptime_call_in_fn_call_test.v diff --git a/vlib/v/tests/comptime_call_or_block_test.v b/vlib/v/tests/comptime/comptime_call_or_block_test.v similarity index 100% rename from vlib/v/tests/comptime_call_or_block_test.v rename to vlib/v/tests/comptime/comptime_call_or_block_test.v diff --git a/vlib/v/tests/comptimecall_slice_arg_test.v b/vlib/v/tests/comptime/comptime_call_slice_arg_test.v similarity index 100% rename from vlib/v/tests/comptimecall_slice_arg_test.v rename to vlib/v/tests/comptime/comptime_call_slice_arg_test.v diff --git a/vlib/v/tests/comptime_call_test.v b/vlib/v/tests/comptime/comptime_call_test.v similarity index 100% rename from vlib/v/tests/comptime_call_test.v rename to vlib/v/tests/comptime/comptime_call_test.v diff --git a/vlib/v/tests/comptime_call_tmpl_variable_scope_test.tpl b/vlib/v/tests/comptime/comptime_call_tmpl_variable_scope_test.tpl similarity index 100% rename from vlib/v/tests/comptime_call_tmpl_variable_scope_test.tpl rename to vlib/v/tests/comptime/comptime_call_tmpl_variable_scope_test.tpl diff --git a/vlib/v/tests/comptime_call_tmpl_variable_scope_test.v b/vlib/v/tests/comptime/comptime_call_tmpl_variable_scope_test.v similarity index 100% rename from vlib/v/tests/comptime_call_tmpl_variable_scope_test.v rename to vlib/v/tests/comptime/comptime_call_tmpl_variable_scope_test.v diff --git a/vlib/v/tests/comptime_call_type_test.v b/vlib/v/tests/comptime/comptime_call_type_test.v similarity index 100% rename from vlib/v/tests/comptime_call_type_test.v rename to vlib/v/tests/comptime/comptime_call_type_test.v diff --git a/vlib/v/tests/comptime_concrete_type_register_test.v b/vlib/v/tests/comptime/comptime_concrete_type_register_test.v similarity index 100% rename from vlib/v/tests/comptime_concrete_type_register_test.v rename to vlib/v/tests/comptime/comptime_concrete_type_register_test.v diff --git a/vlib/v/tests/comptime_const_def_test.v b/vlib/v/tests/comptime/comptime_const_def_test.v similarity index 100% rename from vlib/v/tests/comptime_const_def_test.v rename to vlib/v/tests/comptime/comptime_const_def_test.v diff --git a/vlib/v/tests/comptime_deref_or_ref_test.v b/vlib/v/tests/comptime/comptime_deref_or_ref_test.v similarity index 100% rename from vlib/v/tests/comptime_deref_or_ref_test.v rename to vlib/v/tests/comptime/comptime_deref_or_ref_test.v diff --git a/vlib/v/tests/comptime_dump_test.v b/vlib/v/tests/comptime/comptime_dump_test.v similarity index 100% rename from vlib/v/tests/comptime_dump_test.v rename to vlib/v/tests/comptime/comptime_dump_test.v diff --git a/vlib/v/tests/comptime_enum_test.v b/vlib/v/tests/comptime/comptime_enum_test.v similarity index 100% rename from vlib/v/tests/comptime_enum_test.v rename to vlib/v/tests/comptime/comptime_enum_test.v diff --git a/vlib/v/tests/comptime_enum_values_test.v b/vlib/v/tests/comptime/comptime_enum_values_test.v similarity index 100% rename from vlib/v/tests/comptime_enum_values_test.v rename to vlib/v/tests/comptime/comptime_enum_values_test.v diff --git a/vlib/v/tests/comptime_eq_test.v b/vlib/v/tests/comptime/comptime_eq_test.v similarity index 100% rename from vlib/v/tests/comptime_eq_test.v rename to vlib/v/tests/comptime/comptime_eq_test.v diff --git a/vlib/v/tests/comptime_field_indirections_test.v b/vlib/v/tests/comptime/comptime_field_indirections_test.v similarity index 100% rename from vlib/v/tests/comptime_field_indirections_test.v rename to vlib/v/tests/comptime/comptime_field_indirections_test.v diff --git a/vlib/v/tests/comptime_field_name_check_test.v b/vlib/v/tests/comptime/comptime_field_name_check_test.v similarity index 100% rename from vlib/v/tests/comptime_field_name_check_test.v rename to vlib/v/tests/comptime/comptime_field_name_check_test.v diff --git a/vlib/v/tests/comptime_field_selector_test.v b/vlib/v/tests/comptime/comptime_field_selector_test.v similarity index 100% rename from vlib/v/tests/comptime_field_selector_test.v rename to vlib/v/tests/comptime/comptime_field_selector_test.v diff --git a/vlib/v/tests/forcomp_alias_type_test.v b/vlib/v/tests/comptime/comptime_for_alias_type_test.v similarity index 100% rename from vlib/v/tests/forcomp_alias_type_test.v rename to vlib/v/tests/comptime/comptime_for_alias_type_test.v diff --git a/vlib/v/tests/comptime_for_break_test.v b/vlib/v/tests/comptime/comptime_for_break_test.v similarity index 100% rename from vlib/v/tests/comptime_for_break_test.v rename to vlib/v/tests/comptime/comptime_for_break_test.v diff --git a/vlib/v/tests/comptime_for_in_field_selector_test.v b/vlib/v/tests/comptime/comptime_for_in_field_selector_test.v similarity index 100% rename from vlib/v/tests/comptime_for_in_field_selector_test.v rename to vlib/v/tests/comptime/comptime_for_in_field_selector_test.v diff --git a/vlib/v/tests/comptime_for_in_field_typeof_test.v b/vlib/v/tests/comptime/comptime_for_in_field_typeof_test.v similarity index 100% rename from vlib/v/tests/comptime_for_in_field_typeof_test.v rename to vlib/v/tests/comptime/comptime_for_in_field_typeof_test.v diff --git a/vlib/v/tests/comptime_for_in_field_with_generic_fn_test.v b/vlib/v/tests/comptime/comptime_for_in_field_with_generic_fn_test.v similarity index 100% rename from vlib/v/tests/comptime_for_in_field_with_generic_fn_test.v rename to vlib/v/tests/comptime/comptime_for_in_field_with_generic_fn_test.v diff --git a/vlib/v/tests/comptime_for_in_fields_FieldData_test.v b/vlib/v/tests/comptime/comptime_for_in_fields_FieldData_test.v similarity index 100% rename from vlib/v/tests/comptime_for_in_fields_FieldData_test.v rename to vlib/v/tests/comptime/comptime_for_in_fields_FieldData_test.v diff --git a/vlib/v/tests/comptime_for_map_arg_test.v b/vlib/v/tests/comptime/comptime_for_map_arg_test.v similarity index 100% rename from vlib/v/tests/comptime_for_map_arg_test.v rename to vlib/v/tests/comptime/comptime_for_map_arg_test.v diff --git a/vlib/v/tests/comptime_for_method_call_in_print_call_test.v b/vlib/v/tests/comptime/comptime_for_method_call_in_print_call_test.v similarity index 100% rename from vlib/v/tests/comptime_for_method_call_in_print_call_test.v rename to vlib/v/tests/comptime/comptime_for_method_call_in_print_call_test.v diff --git a/vlib/v/tests/comptime_for_method_call_test.v b/vlib/v/tests/comptime/comptime_for_method_call_test.v similarity index 100% rename from vlib/v/tests/comptime_for_method_call_test.v rename to vlib/v/tests/comptime/comptime_for_method_call_test.v diff --git a/vlib/v/tests/comptime_for_method_call_with_args_test.v b/vlib/v/tests/comptime/comptime_for_method_call_with_args_test.v similarity index 100% rename from vlib/v/tests/comptime_for_method_call_with_args_test.v rename to vlib/v/tests/comptime/comptime_for_method_call_with_args_test.v diff --git a/vlib/v/tests/comptime_for_mod_name_test.v b/vlib/v/tests/comptime/comptime_for_mod_name_test.v similarity index 100% rename from vlib/v/tests/comptime_for_mod_name_test.v rename to vlib/v/tests/comptime/comptime_for_mod_name_test.v diff --git a/vlib/v/tests/comptime_for_over_struct_with_C_reserved_word_fields_test.v b/vlib/v/tests/comptime/comptime_for_over_struct_with_C_reserved_word_fields_test.v similarity index 100% rename from vlib/v/tests/comptime_for_over_struct_with_C_reserved_word_fields_test.v rename to vlib/v/tests/comptime/comptime_for_over_struct_with_C_reserved_word_fields_test.v diff --git a/vlib/v/tests/for_comptime_selector_test.v b/vlib/v/tests/comptime/comptime_for_selector_test.v similarity index 100% rename from vlib/v/tests/for_comptime_selector_test.v rename to vlib/v/tests/comptime/comptime_for_selector_test.v diff --git a/vlib/v/tests/comptime_for_test.v b/vlib/v/tests/comptime/comptime_for_test.v similarity index 100% rename from vlib/v/tests/comptime_for_test.v rename to vlib/v/tests/comptime/comptime_for_test.v diff --git a/vlib/v/tests/comptime_generic_arg_test.v b/vlib/v/tests/comptime/comptime_generic_arg_test.v similarity index 100% rename from vlib/v/tests/comptime_generic_arg_test.v rename to vlib/v/tests/comptime/comptime_generic_arg_test.v diff --git a/vlib/v/tests/comptime_generic_ret_test.v b/vlib/v/tests/comptime/comptime_generic_ret_test.v similarity index 100% rename from vlib/v/tests/comptime_generic_ret_test.v rename to vlib/v/tests/comptime/comptime_generic_ret_test.v diff --git a/vlib/v/tests/comptime_generic_test.v b/vlib/v/tests/comptime/comptime_generic_test.v similarity index 100% rename from vlib/v/tests/comptime_generic_test.v rename to vlib/v/tests/comptime/comptime_generic_test.v diff --git a/vlib/v/tests/if_comptime_check_const_test.v b/vlib/v/tests/comptime/comptime_if_check_const_test.v similarity index 100% rename from vlib/v/tests/if_comptime_check_const_test.v rename to vlib/v/tests/comptime/comptime_if_check_const_test.v diff --git a/vlib/v/tests/ifcomp_expr_evaluate_test.v b/vlib/v/tests/comptime/comptime_if_expr_evaluate_test.v similarity index 100% rename from vlib/v/tests/ifcomp_expr_evaluate_test.v rename to vlib/v/tests/comptime/comptime_if_expr_evaluate_test.v diff --git a/vlib/v/tests/comptime_if_expr_generic_typ_is_type_test.v b/vlib/v/tests/comptime/comptime_if_expr_generic_typ_is_type_test.v similarity index 100% rename from vlib/v/tests/comptime_if_expr_generic_typ_is_type_test.v rename to vlib/v/tests/comptime/comptime_if_expr_generic_typ_is_type_test.v diff --git a/vlib/v/tests/comptime_if_expr_in_const_decl_test.v b/vlib/v/tests/comptime/comptime_if_expr_in_const_decl_test.v similarity index 100% rename from vlib/v/tests/comptime_if_expr_in_const_decl_test.v rename to vlib/v/tests/comptime/comptime_if_expr_in_const_decl_test.v diff --git a/vlib/v/tests/comptime_if_expr_in_struct_field_default_test.v b/vlib/v/tests/comptime/comptime_if_expr_in_struct_field_default_test.v similarity index 100% rename from vlib/v/tests/comptime_if_expr_in_struct_field_default_test.v rename to vlib/v/tests/comptime/comptime_if_expr_in_struct_field_default_test.v diff --git a/vlib/v/tests/comptime_if_expr_test.v b/vlib/v/tests/comptime/comptime_if_expr_test.v similarity index 100% rename from vlib/v/tests/comptime_if_expr_test.v rename to vlib/v/tests/comptime/comptime_if_expr_test.v diff --git a/vlib/v/tests/comptime_if_expr_with_result_call_test.v b/vlib/v/tests/comptime/comptime_if_expr_with_result_call_test.v similarity index 100% rename from vlib/v/tests/comptime_if_expr_with_result_call_test.v rename to vlib/v/tests/comptime/comptime_if_expr_with_result_call_test.v diff --git a/vlib/v/tests/comptime_if_generic_shift_test.v b/vlib/v/tests/comptime/comptime_if_generic_shift_test.v similarity index 100% rename from vlib/v/tests/comptime_if_generic_shift_test.v rename to vlib/v/tests/comptime/comptime_if_generic_shift_test.v diff --git a/vlib/v/tests/comptime_if_is_interface_test.v b/vlib/v/tests/comptime/comptime_if_is_interface_test.v similarity index 100% rename from vlib/v/tests/comptime_if_is_interface_test.v rename to vlib/v/tests/comptime/comptime_if_is_interface_test.v diff --git a/vlib/v/tests/comptime_if_is_test.v b/vlib/v/tests/comptime/comptime_if_is_test.v similarity index 100% rename from vlib/v/tests/comptime_if_is_test.v rename to vlib/v/tests/comptime/comptime_if_is_test.v diff --git a/vlib/v/tests/comptime_if_pkgconfig_test.v b/vlib/v/tests/comptime/comptime_if_pkgconfig_test.v similarity index 100% rename from vlib/v/tests/comptime_if_pkgconfig_test.v rename to vlib/v/tests/comptime/comptime_if_pkgconfig_test.v diff --git a/vlib/v/tests/comptime_if_test.v b/vlib/v/tests/comptime/comptime_if_test.v similarity index 100% rename from vlib/v/tests/comptime_if_test.v rename to vlib/v/tests/comptime/comptime_if_test.v diff --git a/vlib/v/tests/comptime_if_threads_no_test.v b/vlib/v/tests/comptime/comptime_if_threads_no_test.v similarity index 100% rename from vlib/v/tests/comptime_if_threads_no_test.v rename to vlib/v/tests/comptime/comptime_if_threads_no_test.v diff --git a/vlib/v/tests/comptime_if_threads_yes_test.v b/vlib/v/tests/comptime/comptime_if_threads_yes_test.v similarity index 100% rename from vlib/v/tests/comptime_if_threads_yes_test.v rename to vlib/v/tests/comptime/comptime_if_threads_yes_test.v diff --git a/vlib/v/tests/comptime_in_type_checking_test.v b/vlib/v/tests/comptime/comptime_in_type_checking_test.v similarity index 100% rename from vlib/v/tests/comptime_in_type_checking_test.v rename to vlib/v/tests/comptime/comptime_in_type_checking_test.v diff --git a/vlib/v/tests/comptime_indirection_check_test.v b/vlib/v/tests/comptime/comptime_indirection_check_test.v similarity index 100% rename from vlib/v/tests/comptime_indirection_check_test.v rename to vlib/v/tests/comptime/comptime_indirection_check_test.v diff --git a/vlib/v/tests/comptime_is_check_test.v b/vlib/v/tests/comptime/comptime_is_check_test.v similarity index 100% rename from vlib/v/tests/comptime_is_check_test.v rename to vlib/v/tests/comptime/comptime_is_check_test.v diff --git a/vlib/v/tests/comptime_is_interface_check_test.v b/vlib/v/tests/comptime/comptime_is_interface_check_test.v similarity index 100% rename from vlib/v/tests/comptime_is_interface_check_test.v rename to vlib/v/tests/comptime/comptime_is_interface_check_test.v diff --git a/vlib/v/tests/comptime_kinds_test.v b/vlib/v/tests/comptime/comptime_kinds_test.v similarity index 100% rename from vlib/v/tests/comptime_kinds_test.v rename to vlib/v/tests/comptime/comptime_kinds_test.v diff --git a/vlib/v/tests/comptime_map_generic_test.v b/vlib/v/tests/comptime/comptime_map_generic_test.v similarity index 100% rename from vlib/v/tests/comptime_map_generic_test.v rename to vlib/v/tests/comptime/comptime_map_generic_test.v diff --git a/vlib/v/tests/comptime_map_it_test.v b/vlib/v/tests/comptime/comptime_map_it_test.v similarity index 100% rename from vlib/v/tests/comptime_map_it_test.v rename to vlib/v/tests/comptime/comptime_map_it_test.v diff --git a/vlib/v/tests/comptime_map_part_generic_test.v b/vlib/v/tests/comptime/comptime_map_part_generic_test.v similarity index 100% rename from vlib/v/tests/comptime_map_part_generic_test.v rename to vlib/v/tests/comptime/comptime_map_part_generic_test.v diff --git a/vlib/v/tests/comptime_map_test.v b/vlib/v/tests/comptime/comptime_map_test.v similarity index 100% rename from vlib/v/tests/comptime_map_test.v rename to vlib/v/tests/comptime/comptime_map_test.v diff --git a/vlib/v/tests/comptime_match_type_test.v b/vlib/v/tests/comptime/comptime_match_type_test.v similarity index 100% rename from vlib/v/tests/comptime_match_type_test.v rename to vlib/v/tests/comptime/comptime_match_type_test.v diff --git a/vlib/v/tests/comptime_method_args_test.v b/vlib/v/tests/comptime/comptime_method_args_test.v similarity index 100% rename from vlib/v/tests/comptime_method_args_test.v rename to vlib/v/tests/comptime/comptime_method_args_test.v diff --git a/vlib/v/tests/comptime_method_call_test.v b/vlib/v/tests/comptime/comptime_method_call_test.v similarity index 100% rename from vlib/v/tests/comptime_method_call_test.v rename to vlib/v/tests/comptime/comptime_method_call_test.v diff --git a/vlib/v/tests/comptime_method_call_with_check_test.v b/vlib/v/tests/comptime/comptime_method_call_with_check_test.v similarity index 100% rename from vlib/v/tests/comptime_method_call_with_check_test.v rename to vlib/v/tests/comptime/comptime_method_call_with_check_test.v diff --git a/vlib/v/tests/comptime_method_test.v b/vlib/v/tests/comptime/comptime_method_test.v similarity index 100% rename from vlib/v/tests/comptime_method_test.v rename to vlib/v/tests/comptime/comptime_method_test.v diff --git a/vlib/v/tests/comptime_name_check_test.v b/vlib/v/tests/comptime/comptime_name_check_test.v similarity index 100% rename from vlib/v/tests/comptime_name_check_test.v rename to vlib/v/tests/comptime/comptime_name_check_test.v diff --git a/vlib/v/tests/comptime_on_generics_func_test.v b/vlib/v/tests/comptime/comptime_on_generics_func_test.v similarity index 100% rename from vlib/v/tests/comptime_on_generics_func_test.v rename to vlib/v/tests/comptime/comptime_on_generics_func_test.v diff --git a/vlib/v/tests/comptime_on_method_arg_test.v b/vlib/v/tests/comptime/comptime_on_method_arg_test.v similarity index 100% rename from vlib/v/tests/comptime_on_method_arg_test.v rename to vlib/v/tests/comptime/comptime_on_method_arg_test.v diff --git a/vlib/v/tests/comptime_option_field_test.v b/vlib/v/tests/comptime/comptime_option_field_test.v similarity index 100% rename from vlib/v/tests/comptime_option_field_test.v rename to vlib/v/tests/comptime/comptime_option_field_test.v diff --git a/vlib/v/tests/comptime_println_test.v b/vlib/v/tests/comptime/comptime_println_test.v similarity index 100% rename from vlib/v/tests/comptime_println_test.v rename to vlib/v/tests/comptime/comptime_println_test.v diff --git a/vlib/v/tests/comptime_propagate_test.v b/vlib/v/tests/comptime/comptime_propagate_test.v similarity index 100% rename from vlib/v/tests/comptime_propagate_test.v rename to vlib/v/tests/comptime/comptime_propagate_test.v diff --git a/vlib/v/tests/comptime_ref_arg_test.v b/vlib/v/tests/comptime/comptime_ref_arg_test.v similarity index 100% rename from vlib/v/tests/comptime_ref_arg_test.v rename to vlib/v/tests/comptime/comptime_ref_arg_test.v diff --git a/vlib/v/tests/comptime_selector_generic_arg_test.v b/vlib/v/tests/comptime/comptime_selector_generic_arg_test.v similarity index 100% rename from vlib/v/tests/comptime_selector_generic_arg_test.v rename to vlib/v/tests/comptime/comptime_selector_generic_arg_test.v diff --git a/vlib/v/tests/comptime_selector_member_test.v b/vlib/v/tests/comptime/comptime_selector_member_test.v similarity index 100% rename from vlib/v/tests/comptime_selector_member_test.v rename to vlib/v/tests/comptime/comptime_selector_member_test.v diff --git a/vlib/v/tests/comptimeselector_mut_test.v b/vlib/v/tests/comptime/comptime_selector_mut_test.v similarity index 100% rename from vlib/v/tests/comptimeselector_mut_test.v rename to vlib/v/tests/comptime/comptime_selector_mut_test.v diff --git a/vlib/v/tests/comptime_selector_ptr_test.v b/vlib/v/tests/comptime/comptime_selector_ptr_test.v similarity index 100% rename from vlib/v/tests/comptime_selector_ptr_test.v rename to vlib/v/tests/comptime/comptime_selector_ptr_test.v diff --git a/vlib/v/tests/comptime_smart_receiver_test.v b/vlib/v/tests/comptime/comptime_smart_receiver_test.v similarity index 100% rename from vlib/v/tests/comptime_smart_receiver_test.v rename to vlib/v/tests/comptime/comptime_smart_receiver_test.v diff --git a/vlib/v/tests/comptime_smartcast_assert_test.v b/vlib/v/tests/comptime/comptime_smartcast_assert_test.v similarity index 100% rename from vlib/v/tests/comptime_smartcast_assert_test.v rename to vlib/v/tests/comptime/comptime_smartcast_assert_test.v diff --git a/vlib/v/tests/comptime_smartcast_test.v b/vlib/v/tests/comptime/comptime_smartcast_test.v similarity index 100% rename from vlib/v/tests/comptime_smartcast_test.v rename to vlib/v/tests/comptime/comptime_smartcast_test.v diff --git a/vlib/v/tests/comptime_smartcast_var_test.v b/vlib/v/tests/comptime/comptime_smartcast_var_test.v similarity index 100% rename from vlib/v/tests/comptime_smartcast_var_test.v rename to vlib/v/tests/comptime/comptime_smartcast_var_test.v diff --git a/vlib/v/tests/comptime_sumtype_cast_2_test.v b/vlib/v/tests/comptime/comptime_sumtype_cast_2_test.v similarity index 100% rename from vlib/v/tests/comptime_sumtype_cast_2_test.v rename to vlib/v/tests/comptime/comptime_sumtype_cast_2_test.v diff --git a/vlib/v/tests/comptime_sumtype_cast_3_test.v b/vlib/v/tests/comptime/comptime_sumtype_cast_3_test.v similarity index 100% rename from vlib/v/tests/comptime_sumtype_cast_3_test.v rename to vlib/v/tests/comptime/comptime_sumtype_cast_3_test.v diff --git a/vlib/v/tests/comptime_sumtype_cast_test.v b/vlib/v/tests/comptime/comptime_sumtype_cast_test.v similarity index 100% rename from vlib/v/tests/comptime_sumtype_cast_test.v rename to vlib/v/tests/comptime/comptime_sumtype_cast_test.v diff --git a/vlib/v/tests/comptime_type_test.v b/vlib/v/tests/comptime/comptime_type_test.v similarity index 100% rename from vlib/v/tests/comptime_type_test.v rename to vlib/v/tests/comptime/comptime_type_test.v diff --git a/vlib/v/tests/comptime_value_d_default_test.v b/vlib/v/tests/comptime/comptime_value_d_default_test.v similarity index 100% rename from vlib/v/tests/comptime_value_d_default_test.v rename to vlib/v/tests/comptime/comptime_value_d_default_test.v diff --git a/vlib/v/tests/comptime_var_assignment_test.v b/vlib/v/tests/comptime/comptime_var_assignment_test.v similarity index 100% rename from vlib/v/tests/comptime_var_assignment_test.v rename to vlib/v/tests/comptime/comptime_var_assignment_test.v diff --git a/vlib/v/tests/comptime_var_is_check_test.v b/vlib/v/tests/comptime/comptime_var_is_check_test.v similarity index 100% rename from vlib/v/tests/comptime_var_is_check_test.v rename to vlib/v/tests/comptime/comptime_var_is_check_test.v diff --git a/vlib/v/tests/comptime_var_on_multiple_args_test.v b/vlib/v/tests/comptime/comptime_var_on_multiple_args_test.v similarity index 100% rename from vlib/v/tests/comptime_var_on_multiple_args_test.v rename to vlib/v/tests/comptime/comptime_var_on_multiple_args_test.v diff --git a/vlib/v/tests/comptime_var_param_test.v b/vlib/v/tests/comptime/comptime_var_param_test.v similarity index 100% rename from vlib/v/tests/comptime_var_param_test.v rename to vlib/v/tests/comptime/comptime_var_param_test.v diff --git a/vlib/v/tests/comptime_variant_test.v b/vlib/v/tests/comptime/comptime_variant_test.v similarity index 100% rename from vlib/v/tests/comptime_variant_test.v rename to vlib/v/tests/comptime/comptime_variant_test.v diff --git a/vlib/v/tests/atomic_test.v b/vlib/v/tests/concurrency/atomic_test.v similarity index 100% rename from vlib/v/tests/atomic_test.v rename to vlib/v/tests/concurrency/atomic_test.v diff --git a/vlib/v/tests/autolock_array1_test.v b/vlib/v/tests/concurrency/autolock_array1_test.v similarity index 100% rename from vlib/v/tests/autolock_array1_test.v rename to vlib/v/tests/concurrency/autolock_array1_test.v diff --git a/vlib/v/tests/autolock_array2_test.v b/vlib/v/tests/concurrency/autolock_array2_test.v similarity index 100% rename from vlib/v/tests/autolock_array2_test.v rename to vlib/v/tests/concurrency/autolock_array2_test.v diff --git a/vlib/v/tests/break_in_lock_test.v b/vlib/v/tests/concurrency/break_in_lock_test.v similarity index 100% rename from vlib/v/tests/break_in_lock_test.v rename to vlib/v/tests/concurrency/break_in_lock_test.v diff --git a/vlib/v/tests/chan_fixed_test.v b/vlib/v/tests/concurrency/chan_fixed_test.v similarity index 100% rename from vlib/v/tests/chan_fixed_test.v rename to vlib/v/tests/concurrency/chan_fixed_test.v diff --git a/vlib/v/tests/chan_generic_test.v b/vlib/v/tests/concurrency/chan_generic_test.v similarity index 100% rename from vlib/v/tests/chan_generic_test.v rename to vlib/v/tests/concurrency/chan_generic_test.v diff --git a/vlib/v/tests/chan_interface_test.v b/vlib/v/tests/concurrency/chan_interface_test.v similarity index 100% rename from vlib/v/tests/chan_interface_test.v rename to vlib/v/tests/concurrency/chan_interface_test.v diff --git a/vlib/v/tests/channels_test.v b/vlib/v/tests/concurrency/channels_test.v similarity index 100% rename from vlib/v/tests/channels_test.v rename to vlib/v/tests/concurrency/channels_test.v diff --git a/vlib/v/tests/default_thread_stack_size_test.v b/vlib/v/tests/concurrency/default_thread_stack_size_test.v similarity index 100% rename from vlib/v/tests/default_thread_stack_size_test.v rename to vlib/v/tests/concurrency/default_thread_stack_size_test.v diff --git a/vlib/v/tests/inherited_vars_test.v b/vlib/v/tests/concurrency/inherited_vars_test.v similarity index 100% rename from vlib/v/tests/inherited_vars_test.v rename to vlib/v/tests/concurrency/inherited_vars_test.v diff --git a/vlib/v/tests/lock_selector_test.v b/vlib/v/tests/concurrency/lock_selector_test.v similarity index 100% rename from vlib/v/tests/lock_selector_test.v rename to vlib/v/tests/concurrency/lock_selector_test.v diff --git a/vlib/v/tests/select_auto_sync_test.v b/vlib/v/tests/concurrency/select_auto_sync_test.v similarity index 100% rename from vlib/v/tests/select_auto_sync_test.v rename to vlib/v/tests/concurrency/select_auto_sync_test.v diff --git a/vlib/v/tests/semaphore_test.v b/vlib/v/tests/concurrency/semaphore_test.v similarity index 100% rename from vlib/v/tests/semaphore_test.v rename to vlib/v/tests/concurrency/semaphore_test.v diff --git a/vlib/v/tests/semaphore_timed_test.v b/vlib/v/tests/concurrency/semaphore_timed_test.v similarity index 100% rename from vlib/v/tests/semaphore_timed_test.v rename to vlib/v/tests/concurrency/semaphore_timed_test.v diff --git a/vlib/v/tests/shared_arg_test.v b/vlib/v/tests/concurrency/shared_arg_test.v similarity index 100% rename from vlib/v/tests/shared_arg_test.v rename to vlib/v/tests/concurrency/shared_arg_test.v diff --git a/vlib/v/tests/shared_array_any_filter_map_all_test.v b/vlib/v/tests/concurrency/shared_array_any_filter_map_all_test.v similarity index 100% rename from vlib/v/tests/shared_array_any_filter_map_all_test.v rename to vlib/v/tests/concurrency/shared_array_any_filter_map_all_test.v diff --git a/vlib/v/tests/shared_array_append_many_test.v b/vlib/v/tests/concurrency/shared_array_append_many_test.v similarity index 100% rename from vlib/v/tests/shared_array_append_many_test.v rename to vlib/v/tests/concurrency/shared_array_append_many_test.v diff --git a/vlib/v/tests/shared_array_last_test.v b/vlib/v/tests/concurrency/shared_array_last_test.v similarity index 100% rename from vlib/v/tests/shared_array_last_test.v rename to vlib/v/tests/concurrency/shared_array_last_test.v diff --git a/vlib/v/tests/shared_array_ptr_test.v b/vlib/v/tests/concurrency/shared_array_ptr_test.v similarity index 100% rename from vlib/v/tests/shared_array_ptr_test.v rename to vlib/v/tests/concurrency/shared_array_ptr_test.v diff --git a/vlib/v/tests/shared_array_sort_test.v b/vlib/v/tests/concurrency/shared_array_sort_test.v similarity index 100% rename from vlib/v/tests/shared_array_sort_test.v rename to vlib/v/tests/concurrency/shared_array_sort_test.v diff --git a/vlib/v/tests/shared_array_test.v b/vlib/v/tests/concurrency/shared_array_test.v similarity index 100% rename from vlib/v/tests/shared_array_test.v rename to vlib/v/tests/concurrency/shared_array_test.v diff --git a/vlib/v/tests/shared_assign_test.v b/vlib/v/tests/concurrency/shared_assign_test.v similarity index 100% rename from vlib/v/tests/shared_assign_test.v rename to vlib/v/tests/concurrency/shared_assign_test.v diff --git a/vlib/v/tests/shared_autolock_test.v b/vlib/v/tests/concurrency/shared_autolock_test.v similarity index 100% rename from vlib/v/tests/shared_autolock_test.v rename to vlib/v/tests/concurrency/shared_autolock_test.v diff --git a/vlib/v/tests/shared_elem_test.v b/vlib/v/tests/concurrency/shared_elem_test.v similarity index 100% rename from vlib/v/tests/shared_elem_test.v rename to vlib/v/tests/concurrency/shared_elem_test.v diff --git a/vlib/v/tests/shared_fn_return_test.v b/vlib/v/tests/concurrency/shared_fn_return_test.v similarity index 100% rename from vlib/v/tests/shared_fn_return_test.v rename to vlib/v/tests/concurrency/shared_fn_return_test.v diff --git a/vlib/v/tests/shared_generic_test.v b/vlib/v/tests/concurrency/shared_generic_test.v similarity index 100% rename from vlib/v/tests/shared_generic_test.v rename to vlib/v/tests/concurrency/shared_generic_test.v diff --git a/vlib/v/tests/shared_if_expr_test.v b/vlib/v/tests/concurrency/shared_if_expr_test.v similarity index 100% rename from vlib/v/tests/shared_if_expr_test.v rename to vlib/v/tests/concurrency/shared_if_expr_test.v diff --git a/vlib/v/tests/shared_in_test.v b/vlib/v/tests/concurrency/shared_in_test.v similarity index 100% rename from vlib/v/tests/shared_in_test.v rename to vlib/v/tests/concurrency/shared_in_test.v diff --git a/vlib/v/tests/shared_interface_test.v b/vlib/v/tests/concurrency/shared_interface_test.v similarity index 100% rename from vlib/v/tests/shared_interface_test.v rename to vlib/v/tests/concurrency/shared_interface_test.v diff --git a/vlib/v/tests/shared_lock_2_test.v b/vlib/v/tests/concurrency/shared_lock_2_test.v similarity index 100% rename from vlib/v/tests/shared_lock_2_test.v rename to vlib/v/tests/concurrency/shared_lock_2_test.v diff --git a/vlib/v/tests/shared_lock_3_test.v b/vlib/v/tests/concurrency/shared_lock_3_test.v similarity index 100% rename from vlib/v/tests/shared_lock_3_test.v rename to vlib/v/tests/concurrency/shared_lock_3_test.v diff --git a/vlib/v/tests/shared_lock_4_test.v b/vlib/v/tests/concurrency/shared_lock_4_test.v similarity index 100% rename from vlib/v/tests/shared_lock_4_test.v rename to vlib/v/tests/concurrency/shared_lock_4_test.v diff --git a/vlib/v/tests/shared_lock_5_test.v b/vlib/v/tests/concurrency/shared_lock_5_test.v similarity index 100% rename from vlib/v/tests/shared_lock_5_test.v rename to vlib/v/tests/concurrency/shared_lock_5_test.v diff --git a/vlib/v/tests/shared_lock_6_test.v b/vlib/v/tests/concurrency/shared_lock_6_test.v similarity index 100% rename from vlib/v/tests/shared_lock_6_test.v rename to vlib/v/tests/concurrency/shared_lock_6_test.v diff --git a/vlib/v/tests/shared_lock_expr_test.v b/vlib/v/tests/concurrency/shared_lock_expr_test.v similarity index 100% rename from vlib/v/tests/shared_lock_expr_test.v rename to vlib/v/tests/concurrency/shared_lock_expr_test.v diff --git a/vlib/v/tests/shared_lock_test.v b/vlib/v/tests/concurrency/shared_lock_test.v similarity index 100% rename from vlib/v/tests/shared_lock_test.v rename to vlib/v/tests/concurrency/shared_lock_test.v diff --git a/vlib/v/tests/shared_map_delete_test.v b/vlib/v/tests/concurrency/shared_map_delete_test.v similarity index 100% rename from vlib/v/tests/shared_map_delete_test.v rename to vlib/v/tests/concurrency/shared_map_delete_test.v diff --git a/vlib/v/tests/shared_map_ptr_test.v b/vlib/v/tests/concurrency/shared_map_ptr_test.v similarity index 100% rename from vlib/v/tests/shared_map_ptr_test.v rename to vlib/v/tests/concurrency/shared_map_ptr_test.v diff --git a/vlib/v/tests/shared_map_test.v b/vlib/v/tests/concurrency/shared_map_test.v similarity index 100% rename from vlib/v/tests/shared_map_test.v rename to vlib/v/tests/concurrency/shared_map_test.v diff --git a/vlib/v/tests/shared_option_test.v b/vlib/v/tests/concurrency/shared_option_test.v similarity index 100% rename from vlib/v/tests/shared_option_test.v rename to vlib/v/tests/concurrency/shared_option_test.v diff --git a/vlib/v/tests/shared_str_test.v b/vlib/v/tests/concurrency/shared_str_test.v similarity index 100% rename from vlib/v/tests/shared_str_test.v rename to vlib/v/tests/concurrency/shared_str_test.v diff --git a/vlib/v/tests/shared_struct_field_test.v b/vlib/v/tests/concurrency/shared_struct_field_test.v similarity index 100% rename from vlib/v/tests/shared_struct_field_test.v rename to vlib/v/tests/concurrency/shared_struct_field_test.v diff --git a/vlib/v/tests/shared_struct_method_call_test.v b/vlib/v/tests/concurrency/shared_struct_method_call_test.v similarity index 100% rename from vlib/v/tests/shared_struct_method_call_test.v rename to vlib/v/tests/concurrency/shared_struct_method_call_test.v diff --git a/vlib/v/tests/shared_unordered_mixed_test.v b/vlib/v/tests/concurrency/shared_unordered_mixed_test.v similarity index 100% rename from vlib/v/tests/shared_unordered_mixed_test.v rename to vlib/v/tests/concurrency/shared_unordered_mixed_test.v diff --git a/vlib/v/tests/spawn_array_mut_test.v b/vlib/v/tests/concurrency/spawn_array_mut_test.v similarity index 100% rename from vlib/v/tests/spawn_array_mut_test.v rename to vlib/v/tests/concurrency/spawn_array_mut_test.v diff --git a/vlib/v/tests/spawn_method_on_generic_struct_test.v b/vlib/v/tests/concurrency/spawn_method_on_generic_struct_test.v similarity index 100% rename from vlib/v/tests/spawn_method_on_generic_struct_test.v rename to vlib/v/tests/concurrency/spawn_method_on_generic_struct_test.v diff --git a/vlib/v/tests/spawn_with_cond_fncall_test.v b/vlib/v/tests/concurrency/spawn_with_cond_fncall_test.v similarity index 100% rename from vlib/v/tests/spawn_with_cond_fncall_test.v rename to vlib/v/tests/concurrency/spawn_with_cond_fncall_test.v diff --git a/vlib/v/tests/thread_array_test.v b/vlib/v/tests/concurrency/thread_array_test.v similarity index 100% rename from vlib/v/tests/thread_array_test.v rename to vlib/v/tests/concurrency/thread_array_test.v diff --git a/vlib/v/tests/thread_ptr_ret_test.v b/vlib/v/tests/concurrency/thread_ptr_ret_test.v similarity index 100% rename from vlib/v/tests/thread_ptr_ret_test.v rename to vlib/v/tests/concurrency/thread_ptr_ret_test.v diff --git a/vlib/v/tests/thread_returns_test.v b/vlib/v/tests/concurrency/thread_returns_test.v similarity index 100% rename from vlib/v/tests/thread_returns_test.v rename to vlib/v/tests/concurrency/thread_returns_test.v diff --git a/vlib/v/tests/thread_to_string_test.v b/vlib/v/tests/concurrency/thread_to_string_test.v similarity index 100% rename from vlib/v/tests/thread_to_string_test.v rename to vlib/v/tests/concurrency/thread_to_string_test.v diff --git a/vlib/v/tests/volatile_vars_test.v b/vlib/v/tests/concurrency/volatile_vars_test.v similarity index 100% rename from vlib/v/tests/volatile_vars_test.v rename to vlib/v/tests/concurrency/volatile_vars_test.v diff --git a/vlib/v/tests/check_in_is_consistency_test.v b/vlib/v/tests/conditions/ifs/check_in_is_consistency_test.v similarity index 100% rename from vlib/v/tests/check_in_is_consistency_test.v rename to vlib/v/tests/conditions/ifs/check_in_is_consistency_test.v diff --git a/vlib/v/tests/if_assign_test.v b/vlib/v/tests/conditions/ifs/if_assign_test.v similarity index 100% rename from vlib/v/tests/if_assign_test.v rename to vlib/v/tests/conditions/ifs/if_assign_test.v diff --git a/vlib/v/tests/if_cond_with_alias_test.v b/vlib/v/tests/conditions/ifs/if_cond_with_alias_test.v similarity index 100% rename from vlib/v/tests/if_cond_with_alias_test.v rename to vlib/v/tests/conditions/ifs/if_cond_with_alias_test.v diff --git a/vlib/v/tests/if_cond_with_option_test.v b/vlib/v/tests/conditions/ifs/if_cond_with_option_test.v similarity index 100% rename from vlib/v/tests/if_cond_with_option_test.v rename to vlib/v/tests/conditions/ifs/if_cond_with_option_test.v diff --git a/vlib/v/tests/if_expr_nested_with_option_result_test.v b/vlib/v/tests/conditions/ifs/if_expr_nested_with_option_result_test.v similarity index 100% rename from vlib/v/tests/if_expr_nested_with_option_result_test.v rename to vlib/v/tests/conditions/ifs/if_expr_nested_with_option_result_test.v diff --git a/vlib/v/tests/if_expr_of_multi_stmts_test.v b/vlib/v/tests/conditions/ifs/if_expr_of_multi_stmts_test.v similarity index 100% rename from vlib/v/tests/if_expr_of_multi_stmts_test.v rename to vlib/v/tests/conditions/ifs/if_expr_of_multi_stmts_test.v diff --git a/vlib/v/tests/if_expr_of_option_test.v b/vlib/v/tests/conditions/ifs/if_expr_of_option_test.v similarity index 100% rename from vlib/v/tests/if_expr_of_option_test.v rename to vlib/v/tests/conditions/ifs/if_expr_of_option_test.v diff --git a/vlib/v/tests/if_expr_with_array_call_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_array_call_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_array_call_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_array_call_test.v diff --git a/vlib/v/tests/if_expr_with_continue_in_branch_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_continue_in_branch_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_continue_in_branch_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_continue_in_branch_test.v diff --git a/vlib/v/tests/if_expr_with_enum_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_enum_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_enum_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_enum_test.v diff --git a/vlib/v/tests/if_expr_with_fn_call_result_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_fn_call_result_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_fn_call_result_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_fn_call_result_test.v diff --git a/vlib/v/tests/if_expr_with_generic_sumtype_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_generic_sumtype_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_generic_sumtype_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_generic_sumtype_test.v diff --git a/vlib/v/tests/if_expr_with_index_expr_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_index_expr_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_index_expr_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_index_expr_test.v diff --git a/vlib/v/tests/if_expr_with_method_call_option_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_method_call_option_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_method_call_option_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_method_call_option_test.v diff --git a/vlib/v/tests/if_expr_with_multi_array_call_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_multi_array_call_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_multi_array_call_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_multi_array_call_test.v diff --git a/vlib/v/tests/if_expr_with_nested_array_call_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_nested_array_call_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_nested_array_call_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_nested_array_call_test.v diff --git a/vlib/v/tests/if_expr_with_nested_match_expr_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_nested_match_expr_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_nested_match_expr_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_nested_match_expr_test.v diff --git a/vlib/v/tests/if_expr_with_result_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_result_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_result_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_result_test.v diff --git a/vlib/v/tests/if_expr_with_struct_init_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_struct_init_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_struct_init_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_struct_init_test.v diff --git a/vlib/v/tests/if_expr_with_sumtype_map_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_sumtype_map_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_sumtype_map_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_sumtype_map_test.v diff --git a/vlib/v/tests/if_expr_with_sumtype_test.v b/vlib/v/tests/conditions/ifs/if_expr_with_sumtype_test.v similarity index 100% rename from vlib/v/tests/if_expr_with_sumtype_test.v rename to vlib/v/tests/conditions/ifs/if_expr_with_sumtype_test.v diff --git a/vlib/v/tests/if_expression_test.v b/vlib/v/tests/conditions/ifs/if_expression_test.v similarity index 100% rename from vlib/v/tests/if_expression_test.v rename to vlib/v/tests/conditions/ifs/if_expression_test.v diff --git a/vlib/v/tests/if_guard_test.v b/vlib/v/tests/conditions/ifs/if_guard_test.v similarity index 100% rename from vlib/v/tests/if_guard_test.v rename to vlib/v/tests/conditions/ifs/if_guard_test.v diff --git a/vlib/v/tests/if_guard_with_multi_return_test.v b/vlib/v/tests/conditions/ifs/if_guard_with_multi_return_test.v similarity index 100% rename from vlib/v/tests/if_guard_with_multi_return_test.v rename to vlib/v/tests/conditions/ifs/if_guard_with_multi_return_test.v diff --git a/vlib/v/tests/if_guard_with_struct_option_fntype_field_test.v b/vlib/v/tests/conditions/ifs/if_guard_with_struct_option_fntype_field_test.v similarity index 100% rename from vlib/v/tests/if_guard_with_struct_option_fntype_field_test.v rename to vlib/v/tests/conditions/ifs/if_guard_with_struct_option_fntype_field_test.v diff --git a/vlib/v/tests/if_match_branches_with_call_expr_with_or_block_test.v b/vlib/v/tests/conditions/ifs/if_match_branches_with_call_expr_with_or_block_test.v similarity index 100% rename from vlib/v/tests/if_match_branches_with_call_expr_with_or_block_test.v rename to vlib/v/tests/conditions/ifs/if_match_branches_with_call_expr_with_or_block_test.v diff --git a/vlib/v/tests/if_smartcast_likely_test.v b/vlib/v/tests/conditions/ifs/if_smartcast_likely_test.v similarity index 100% rename from vlib/v/tests/if_smartcast_likely_test.v rename to vlib/v/tests/conditions/ifs/if_smartcast_likely_test.v diff --git a/vlib/v/tests/if_smartcast_multi_conds_test.v b/vlib/v/tests/conditions/ifs/if_smartcast_multi_conds_test.v similarity index 100% rename from vlib/v/tests/if_smartcast_multi_conds_test.v rename to vlib/v/tests/conditions/ifs/if_smartcast_multi_conds_test.v diff --git a/vlib/v/tests/if_smartcast_nested_selector_exprs_test.v b/vlib/v/tests/conditions/ifs/if_smartcast_nested_selector_exprs_test.v similarity index 100% rename from vlib/v/tests/if_smartcast_nested_selector_exprs_test.v rename to vlib/v/tests/conditions/ifs/if_smartcast_nested_selector_exprs_test.v diff --git a/vlib/v/tests/if_smartcast_test.v b/vlib/v/tests/conditions/ifs/if_smartcast_test.v similarity index 100% rename from vlib/v/tests/if_smartcast_test.v rename to vlib/v/tests/conditions/ifs/if_smartcast_test.v diff --git a/vlib/v/tests/ifexpr_with_option_result_test.v b/vlib/v/tests/conditions/ifs/ifexpr_with_option_result_test.v similarity index 100% rename from vlib/v/tests/ifexpr_with_option_result_test.v rename to vlib/v/tests/conditions/ifs/ifexpr_with_option_result_test.v diff --git a/vlib/v/tests/in_expression_test.v b/vlib/v/tests/conditions/ifs/in_expression_test.v similarity index 100% rename from vlib/v/tests/in_expression_test.v rename to vlib/v/tests/conditions/ifs/in_expression_test.v diff --git a/vlib/v/tests/match_aliases_test.v b/vlib/v/tests/conditions/matches/match_aliases_test.v similarity index 100% rename from vlib/v/tests/match_aliases_test.v rename to vlib/v/tests/conditions/matches/match_aliases_test.v diff --git a/vlib/v/tests/match_array_of_reference_sumtype_test.v b/vlib/v/tests/conditions/matches/match_array_of_reference_sumtype_test.v similarity index 100% rename from vlib/v/tests/match_array_of_reference_sumtype_test.v rename to vlib/v/tests/conditions/matches/match_array_of_reference_sumtype_test.v diff --git a/vlib/v/tests/match_branch_with_array_expression_test.v b/vlib/v/tests/conditions/matches/match_branch_with_array_expression_test.v similarity index 100% rename from vlib/v/tests/match_branch_with_array_expression_test.v rename to vlib/v/tests/conditions/matches/match_branch_with_array_expression_test.v diff --git a/vlib/v/tests/match_case_with_struct_init_test.v b/vlib/v/tests/conditions/matches/match_case_with_struct_init_test.v similarity index 100% rename from vlib/v/tests/match_case_with_struct_init_test.v rename to vlib/v/tests/conditions/matches/match_case_with_struct_init_test.v diff --git a/vlib/v/tests/match_compound_type_cond_test.v b/vlib/v/tests/conditions/matches/match_compound_type_cond_test.v similarity index 100% rename from vlib/v/tests/match_compound_type_cond_test.v rename to vlib/v/tests/conditions/matches/match_compound_type_cond_test.v diff --git a/vlib/v/tests/match_const_range_test.v b/vlib/v/tests/conditions/matches/match_const_range_test.v similarity index 100% rename from vlib/v/tests/match_const_range_test.v rename to vlib/v/tests/conditions/matches/match_const_range_test.v diff --git a/vlib/v/tests/match_error_to_none_test.v b/vlib/v/tests/conditions/matches/match_error_to_none_test.v similarity index 100% rename from vlib/v/tests/match_error_to_none_test.v rename to vlib/v/tests/conditions/matches/match_error_to_none_test.v diff --git a/vlib/v/tests/match_expr_in_infix_expr_test.v b/vlib/v/tests/conditions/matches/match_expr_in_infix_expr_test.v similarity index 100% rename from vlib/v/tests/match_expr_in_infix_expr_test.v rename to vlib/v/tests/conditions/matches/match_expr_in_infix_expr_test.v diff --git a/vlib/v/tests/match_expr_nested_test.v b/vlib/v/tests/conditions/matches/match_expr_nested_test.v similarity index 100% rename from vlib/v/tests/match_expr_nested_test.v rename to vlib/v/tests/conditions/matches/match_expr_nested_test.v diff --git a/vlib/v/tests/match_expr_nested_with_option_result1_test.v b/vlib/v/tests/conditions/matches/match_expr_nested_with_option_result1_test.v similarity index 100% rename from vlib/v/tests/match_expr_nested_with_option_result1_test.v rename to vlib/v/tests/conditions/matches/match_expr_nested_with_option_result1_test.v diff --git a/vlib/v/tests/match_expr_nested_with_option_result2_test.v b/vlib/v/tests/conditions/matches/match_expr_nested_with_option_result2_test.v similarity index 100% rename from vlib/v/tests/match_expr_nested_with_option_result2_test.v rename to vlib/v/tests/conditions/matches/match_expr_nested_with_option_result2_test.v diff --git a/vlib/v/tests/match_expr_result_test.v b/vlib/v/tests/conditions/matches/match_expr_result_test.v similarity index 100% rename from vlib/v/tests/match_expr_result_test.v rename to vlib/v/tests/conditions/matches/match_expr_result_test.v diff --git a/vlib/v/tests/match_expr_returning_option_test.v b/vlib/v/tests/conditions/matches/match_expr_returning_option_test.v similarity index 100% rename from vlib/v/tests/match_expr_returning_option_test.v rename to vlib/v/tests/conditions/matches/match_expr_returning_option_test.v diff --git a/vlib/v/tests/match_expr_returning_sumtype_test.v b/vlib/v/tests/conditions/matches/match_expr_returning_sumtype_test.v similarity index 100% rename from vlib/v/tests/match_expr_returning_sumtype_test.v rename to vlib/v/tests/conditions/matches/match_expr_returning_sumtype_test.v diff --git a/vlib/v/tests/match_expr_skip_in_infix_expr_test.v b/vlib/v/tests/conditions/matches/match_expr_skip_in_infix_expr_test.v similarity index 100% rename from vlib/v/tests/match_expr_skip_in_infix_expr_test.v rename to vlib/v/tests/conditions/matches/match_expr_skip_in_infix_expr_test.v diff --git a/vlib/v/tests/match_expr_with_assign_sumtype_test.v b/vlib/v/tests/conditions/matches/match_expr_with_assign_sumtype_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_assign_sumtype_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_assign_sumtype_test.v diff --git a/vlib/v/tests/match_expr_with_auto_promote_number_test.v b/vlib/v/tests/conditions/matches/match_expr_with_auto_promote_number_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_auto_promote_number_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_auto_promote_number_test.v diff --git a/vlib/v/tests/match_expr_with_branch_returning_1_test.v b/vlib/v/tests/conditions/matches/match_expr_with_branch_returning_1_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_branch_returning_1_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_branch_returning_1_test.v diff --git a/vlib/v/tests/match_expr_with_branch_returning_2_test.v b/vlib/v/tests/conditions/matches/match_expr_with_branch_returning_2_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_branch_returning_2_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_branch_returning_2_test.v diff --git a/vlib/v/tests/match_expr_with_enum_test.v b/vlib/v/tests/conditions/matches/match_expr_with_enum_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_enum_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_enum_test.v diff --git a/vlib/v/tests/match_expr_with_if_or_match_expr_test.v b/vlib/v/tests/conditions/matches/match_expr_with_if_or_match_expr_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_if_or_match_expr_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_if_or_match_expr_test.v diff --git a/vlib/v/tests/match_expr_with_last_branch_aggregate_test.v b/vlib/v/tests/conditions/matches/match_expr_with_last_branch_aggregate_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_last_branch_aggregate_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_last_branch_aggregate_test.v diff --git a/vlib/v/tests/match_expr_with_non_last_if_expr_test.v b/vlib/v/tests/conditions/matches/match_expr_with_non_last_if_expr_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_non_last_if_expr_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_non_last_if_expr_test.v diff --git a/vlib/v/tests/match_expr_with_one_branch_test.v b/vlib/v/tests/conditions/matches/match_expr_with_one_branch_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_one_branch_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_one_branch_test.v diff --git a/vlib/v/tests/match_expr_with_opt_result_test.v b/vlib/v/tests/conditions/matches/match_expr_with_opt_result_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_opt_result_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_opt_result_test.v diff --git a/vlib/v/tests/match_expr_with_promote_number_test.v b/vlib/v/tests/conditions/matches/match_expr_with_promote_number_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_promote_number_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_promote_number_test.v diff --git a/vlib/v/tests/match_expr_with_result_test.v b/vlib/v/tests/conditions/matches/match_expr_with_result_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_result_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_result_test.v diff --git a/vlib/v/tests/match_expr_with_string_fn_test.v b/vlib/v/tests/conditions/matches/match_expr_with_string_fn_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_string_fn_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_string_fn_test.v diff --git a/vlib/v/tests/match_expr_with_struct_init_test.v b/vlib/v/tests/conditions/matches/match_expr_with_struct_init_test.v similarity index 100% rename from vlib/v/tests/match_expr_with_struct_init_test.v rename to vlib/v/tests/conditions/matches/match_expr_with_struct_init_test.v diff --git a/vlib/v/tests/match_expression_for_types_test.v b/vlib/v/tests/conditions/matches/match_expression_for_types_test.v similarity index 100% rename from vlib/v/tests/match_expression_for_types_test.v rename to vlib/v/tests/conditions/matches/match_expression_for_types_test.v diff --git a/vlib/v/tests/match_expression_with_fn_names_in_branches_test.v b/vlib/v/tests/conditions/matches/match_expression_with_fn_names_in_branches_test.v similarity index 100% rename from vlib/v/tests/match_expression_with_fn_names_in_branches_test.v rename to vlib/v/tests/conditions/matches/match_expression_with_fn_names_in_branches_test.v diff --git a/vlib/v/tests/match_expression_with_for_loop_test.v b/vlib/v/tests/conditions/matches/match_expression_with_for_loop_test.v similarity index 100% rename from vlib/v/tests/match_expression_with_for_loop_test.v rename to vlib/v/tests/conditions/matches/match_expression_with_for_loop_test.v diff --git a/vlib/v/tests/match_in_fn_call_test.v b/vlib/v/tests/conditions/matches/match_in_fn_call_test.v similarity index 100% rename from vlib/v/tests/match_in_fn_call_test.v rename to vlib/v/tests/conditions/matches/match_in_fn_call_test.v diff --git a/vlib/v/tests/match_in_if_expression_test.v b/vlib/v/tests/conditions/matches/match_in_if_expression_test.v similarity index 100% rename from vlib/v/tests/match_in_if_expression_test.v rename to vlib/v/tests/conditions/matches/match_in_if_expression_test.v diff --git a/vlib/v/tests/match_in_map_init_test.v b/vlib/v/tests/conditions/matches/match_in_map_init_test.v similarity index 100% rename from vlib/v/tests/match_in_map_init_test.v rename to vlib/v/tests/conditions/matches/match_in_map_init_test.v diff --git a/vlib/v/tests/match_in_map_or_expr_test.v b/vlib/v/tests/conditions/matches/match_in_map_or_expr_test.v similarity index 100% rename from vlib/v/tests/match_in_map_or_expr_test.v rename to vlib/v/tests/conditions/matches/match_in_map_or_expr_test.v diff --git a/vlib/v/tests/match_interface_test.v b/vlib/v/tests/conditions/matches/match_interface_test.v similarity index 100% rename from vlib/v/tests/match_interface_test.v rename to vlib/v/tests/conditions/matches/match_interface_test.v diff --git a/vlib/v/tests/match_reference_sumtype_var_test.v b/vlib/v/tests/conditions/matches/match_reference_sumtype_var_test.v similarity index 100% rename from vlib/v/tests/match_reference_sumtype_var_test.v rename to vlib/v/tests/conditions/matches/match_reference_sumtype_var_test.v diff --git a/vlib/v/tests/match_return_fn_test.v b/vlib/v/tests/conditions/matches/match_return_fn_test.v similarity index 100% rename from vlib/v/tests/match_return_fn_test.v rename to vlib/v/tests/conditions/matches/match_return_fn_test.v diff --git a/vlib/v/tests/match_return_reference_test.v b/vlib/v/tests/conditions/matches/match_return_reference_test.v similarity index 100% rename from vlib/v/tests/match_return_reference_test.v rename to vlib/v/tests/conditions/matches/match_return_reference_test.v diff --git a/vlib/v/tests/match_smartcast_test.v b/vlib/v/tests/conditions/matches/match_smartcast_test.v similarity index 100% rename from vlib/v/tests/match_smartcast_test.v rename to vlib/v/tests/conditions/matches/match_smartcast_test.v diff --git a/vlib/v/tests/match_struct_type_test.v b/vlib/v/tests/conditions/matches/match_struct_type_test.v similarity index 100% rename from vlib/v/tests/match_struct_type_test.v rename to vlib/v/tests/conditions/matches/match_struct_type_test.v diff --git a/vlib/v/tests/match_sumtype_arr_test.v b/vlib/v/tests/conditions/matches/match_sumtype_arr_test.v similarity index 100% rename from vlib/v/tests/match_sumtype_arr_test.v rename to vlib/v/tests/conditions/matches/match_sumtype_arr_test.v diff --git a/vlib/v/tests/match_sumtype_var_aggregate_test.v b/vlib/v/tests/conditions/matches/match_sumtype_var_aggregate_test.v similarity index 100% rename from vlib/v/tests/match_sumtype_var_aggregate_test.v rename to vlib/v/tests/conditions/matches/match_sumtype_var_aggregate_test.v diff --git a/vlib/v/tests/match_sumtype_var_aggregate_var_str_test.v b/vlib/v/tests/conditions/matches/match_sumtype_var_aggregate_var_str_test.v similarity index 100% rename from vlib/v/tests/match_sumtype_var_aggregate_var_str_test.v rename to vlib/v/tests/conditions/matches/match_sumtype_var_aggregate_var_str_test.v diff --git a/vlib/v/tests/match_sumtype_var_return_sumtype_test.v b/vlib/v/tests/conditions/matches/match_sumtype_var_return_sumtype_test.v similarity index 100% rename from vlib/v/tests/match_sumtype_var_return_sumtype_test.v rename to vlib/v/tests/conditions/matches/match_sumtype_var_return_sumtype_test.v diff --git a/vlib/v/tests/match_sumtype_var_shadow_and_as_test.v b/vlib/v/tests/conditions/matches/match_sumtype_var_shadow_and_as_test.v similarity index 100% rename from vlib/v/tests/match_sumtype_var_shadow_and_as_test.v rename to vlib/v/tests/conditions/matches/match_sumtype_var_shadow_and_as_test.v diff --git a/vlib/v/tests/match_test.v b/vlib/v/tests/conditions/matches/match_test.v similarity index 100% rename from vlib/v/tests/match_test.v rename to vlib/v/tests/conditions/matches/match_test.v diff --git a/vlib/v/tests/match_with_complex_exprs_in_branches_test.v b/vlib/v/tests/conditions/matches/match_with_complex_exprs_in_branches_test.v similarity index 100% rename from vlib/v/tests/match_with_complex_exprs_in_branches_test.v rename to vlib/v/tests/conditions/matches/match_with_complex_exprs_in_branches_test.v diff --git a/vlib/v/tests/match_with_complex_sumtype_exprs_add_print_test.v b/vlib/v/tests/conditions/matches/match_with_complex_sumtype_exprs_add_print_test.v similarity index 100% rename from vlib/v/tests/match_with_complex_sumtype_exprs_add_print_test.v rename to vlib/v/tests/conditions/matches/match_with_complex_sumtype_exprs_add_print_test.v diff --git a/vlib/v/tests/match_with_complex_sumtype_exprs_test.v b/vlib/v/tests/conditions/matches/match_with_complex_sumtype_exprs_test.v similarity index 100% rename from vlib/v/tests/match_with_complex_sumtype_exprs_test.v rename to vlib/v/tests/conditions/matches/match_with_complex_sumtype_exprs_test.v diff --git a/vlib/v/tests/match_with_comptime_if_expr_in_branch_test.v b/vlib/v/tests/conditions/matches/match_with_comptime_if_expr_in_branch_test.v similarity index 100% rename from vlib/v/tests/match_with_comptime_if_expr_in_branch_test.v rename to vlib/v/tests/conditions/matches/match_with_comptime_if_expr_in_branch_test.v diff --git a/vlib/v/tests/match_with_multi_sumtype_exprs_test.v b/vlib/v/tests/conditions/matches/match_with_multi_sumtype_exprs_test.v similarity index 100% rename from vlib/v/tests/match_with_multi_sumtype_exprs_test.v rename to vlib/v/tests/conditions/matches/match_with_multi_sumtype_exprs_test.v diff --git a/vlib/v/tests/match_with_return_result_test.v b/vlib/v/tests/conditions/matches/match_with_return_result_test.v similarity index 100% rename from vlib/v/tests/match_with_return_result_test.v rename to vlib/v/tests/conditions/matches/match_with_return_result_test.v diff --git a/vlib/v/tests/multiple_matchs_in_one_expr_test.v b/vlib/v/tests/conditions/matches/multiple_matchs_in_one_expr_test.v similarity index 100% rename from vlib/v/tests/multiple_matchs_in_one_expr_test.v rename to vlib/v/tests/conditions/matches/multiple_matchs_in_one_expr_test.v diff --git a/vlib/v/tests/const_and_global_with_same_name_test.v b/vlib/v/tests/consts/const_and_global_with_same_name_test.v similarity index 100% rename from vlib/v/tests/const_and_global_with_same_name_test.v rename to vlib/v/tests/consts/const_and_global_with_same_name_test.v diff --git a/vlib/v/tests/const_array_init_order_test.v b/vlib/v/tests/consts/const_array_init_order_test.v similarity index 100% rename from vlib/v/tests/const_array_init_order_test.v rename to vlib/v/tests/consts/const_array_init_order_test.v diff --git a/vlib/v/tests/const_array_struct_test.v b/vlib/v/tests/consts/const_array_struct_test.v similarity index 100% rename from vlib/v/tests/const_array_struct_test.v rename to vlib/v/tests/consts/const_array_struct_test.v diff --git a/vlib/v/tests/const_array_test.v b/vlib/v/tests/consts/const_array_test.v similarity index 100% rename from vlib/v/tests/const_array_test.v rename to vlib/v/tests/consts/const_array_test.v diff --git a/vlib/v/tests/const_as_enum_value_test.v b/vlib/v/tests/consts/const_as_enum_value_test.v similarity index 100% rename from vlib/v/tests/const_as_enum_value_test.v rename to vlib/v/tests/consts/const_as_enum_value_test.v diff --git a/vlib/v/tests/const_call_expr_order_test.v b/vlib/v/tests/consts/const_call_expr_order_test.v similarity index 100% rename from vlib/v/tests/const_call_expr_order_test.v rename to vlib/v/tests/consts/const_call_expr_order_test.v diff --git a/vlib/v/tests/const_can_use_options_results_test.v b/vlib/v/tests/consts/const_can_use_options_results_test.v similarity index 100% rename from vlib/v/tests/const_can_use_options_results_test.v rename to vlib/v/tests/consts/const_can_use_options_results_test.v diff --git a/vlib/v/tests/const_comptime_eval_before_vinit_test.v b/vlib/v/tests/consts/const_comptime_eval_before_vinit_test.v similarity index 100% rename from vlib/v/tests/const_comptime_eval_before_vinit_test.v rename to vlib/v/tests/consts/const_comptime_eval_before_vinit_test.v diff --git a/vlib/v/tests/const_embed_test.v b/vlib/v/tests/consts/const_embed_test.v similarity index 100% rename from vlib/v/tests/const_embed_test.v rename to vlib/v/tests/consts/const_embed_test.v diff --git a/vlib/v/tests/const_eval_simple_int_expressions_at_comptime_test.v b/vlib/v/tests/consts/const_eval_simple_int_expressions_at_comptime_test.v similarity index 100% rename from vlib/v/tests/const_eval_simple_int_expressions_at_comptime_test.v rename to vlib/v/tests/consts/const_eval_simple_int_expressions_at_comptime_test.v diff --git a/vlib/v/tests/const_fixed_array_containing_references_to_itself_test.v b/vlib/v/tests/consts/const_fixed_array_containing_references_to_itself_test.v similarity index 100% rename from vlib/v/tests/const_fixed_array_containing_references_to_itself_test.v rename to vlib/v/tests/consts/const_fixed_array_containing_references_to_itself_test.v diff --git a/vlib/v/tests/const_fixed_array_of_reference_value_test.v b/vlib/v/tests/consts/const_fixed_array_of_reference_value_test.v similarity index 100% rename from vlib/v/tests/const_fixed_array_of_reference_value_test.v rename to vlib/v/tests/consts/const_fixed_array_of_reference_value_test.v diff --git a/vlib/v/tests/const_fixed_array_of_string_value_msvc_test.v b/vlib/v/tests/consts/const_fixed_array_of_string_value_msvc_test.v similarity index 100% rename from vlib/v/tests/const_fixed_array_of_string_value_msvc_test.v rename to vlib/v/tests/consts/const_fixed_array_of_string_value_msvc_test.v diff --git a/vlib/v/tests/const_from_bytes_test.v b/vlib/v/tests/consts/const_from_bytes_test.v similarity index 100% rename from vlib/v/tests/const_from_bytes_test.v rename to vlib/v/tests/consts/const_from_bytes_test.v diff --git a/vlib/v/tests/const_from_comptime_if_expr_test.v b/vlib/v/tests/consts/const_from_comptime_if_expr_test.v similarity index 100% rename from vlib/v/tests/const_from_comptime_if_expr_test.v rename to vlib/v/tests/consts/const_from_comptime_if_expr_test.v diff --git a/vlib/v/tests/const_from_multi_branchs_of_if_expr_test.v b/vlib/v/tests/consts/const_from_multi_branchs_of_if_expr_test.v similarity index 100% rename from vlib/v/tests/const_from_multi_branchs_of_if_expr_test.v rename to vlib/v/tests/consts/const_from_multi_branchs_of_if_expr_test.v diff --git a/vlib/v/tests/const_function_call_init_order_test.v b/vlib/v/tests/consts/const_function_call_init_order_test.v similarity index 100% rename from vlib/v/tests/const_function_call_init_order_test.v rename to vlib/v/tests/consts/const_function_call_init_order_test.v diff --git a/vlib/v/tests/const_global_arr_test.v b/vlib/v/tests/consts/const_global_arr_test.v similarity index 100% rename from vlib/v/tests/const_global_arr_test.v rename to vlib/v/tests/consts/const_global_arr_test.v diff --git a/vlib/v/tests/const_init_array_index_test.v b/vlib/v/tests/consts/const_init_array_index_test.v similarity index 100% rename from vlib/v/tests/const_init_array_index_test.v rename to vlib/v/tests/consts/const_init_array_index_test.v diff --git a/vlib/v/tests/const_init_order_test.v b/vlib/v/tests/consts/const_init_order_test.v similarity index 100% rename from vlib/v/tests/const_init_order_test.v rename to vlib/v/tests/consts/const_init_order_test.v diff --git a/vlib/v/tests/const_many_pluses_with_raw_string_literal_test.v b/vlib/v/tests/consts/const_many_pluses_with_raw_string_literal_test.v similarity index 100% rename from vlib/v/tests/const_many_pluses_with_raw_string_literal_test.v rename to vlib/v/tests/consts/const_many_pluses_with_raw_string_literal_test.v diff --git a/vlib/v/tests/const_name_equals_fn_name_test.v b/vlib/v/tests/consts/const_name_equals_fn_name_test.v similarity index 100% rename from vlib/v/tests/const_name_equals_fn_name_test.v rename to vlib/v/tests/consts/const_name_equals_fn_name_test.v diff --git a/vlib/v/tests/const_order_with_str_interp_test.v b/vlib/v/tests/consts/const_order_with_str_interp_test.v similarity index 100% rename from vlib/v/tests/const_order_with_str_interp_test.v rename to vlib/v/tests/consts/const_order_with_str_interp_test.v diff --git a/vlib/v/tests/const_reference_argument_test.v b/vlib/v/tests/consts/const_reference_argument_test.v similarity index 100% rename from vlib/v/tests/const_reference_argument_test.v rename to vlib/v/tests/consts/const_reference_argument_test.v diff --git a/vlib/v/tests/const_representation_test.v b/vlib/v/tests/consts/const_representation_test.v similarity index 100% rename from vlib/v/tests/const_representation_test.v rename to vlib/v/tests/consts/const_representation_test.v diff --git a/vlib/v/tests/const_resolution_test.v b/vlib/v/tests/consts/const_resolution_test.v similarity index 100% rename from vlib/v/tests/const_resolution_test.v rename to vlib/v/tests/consts/const_resolution_test.v diff --git a/vlib/v/tests/const_selector_expr_order_test.v b/vlib/v/tests/consts/const_selector_expr_order_test.v similarity index 100% rename from vlib/v/tests/const_selector_expr_order_test.v rename to vlib/v/tests/consts/const_selector_expr_order_test.v diff --git a/vlib/v/tests/const_test.v b/vlib/v/tests/consts/const_test.v similarity index 100% rename from vlib/v/tests/const_test.v rename to vlib/v/tests/consts/const_test.v diff --git a/vlib/v/tests/const_use_nested_options_test.v b/vlib/v/tests/consts/const_use_nested_options_test.v similarity index 100% rename from vlib/v/tests/const_use_nested_options_test.v rename to vlib/v/tests/consts/const_use_nested_options_test.v diff --git a/vlib/v/tests/const_with_fn_param_with_the_same_name_test.v b/vlib/v/tests/consts/const_with_fn_param_with_the_same_name_test.v similarity index 100% rename from vlib/v/tests/const_with_fn_param_with_the_same_name_test.v rename to vlib/v/tests/consts/const_with_fn_param_with_the_same_name_test.v diff --git a/vlib/v/tests/constant_array_size_test.v b/vlib/v/tests/consts/constant_array_size_test.v similarity index 100% rename from vlib/v/tests/constant_array_size_test.v rename to vlib/v/tests/consts/constant_array_size_test.v diff --git a/vlib/v/tests/defer_if_comptime_test.v b/vlib/v/tests/defer/defer_if_comptime_test.v similarity index 100% rename from vlib/v/tests/defer_if_comptime_test.v rename to vlib/v/tests/defer/defer_if_comptime_test.v diff --git a/vlib/v/tests/defer_use_returned_value_test.v b/vlib/v/tests/defer/defer_use_returned_value_test.v similarity index 100% rename from vlib/v/tests/defer_use_returned_value_test.v rename to vlib/v/tests/defer/defer_use_returned_value_test.v diff --git a/vlib/v/tests/enum_aliases_test.v b/vlib/v/tests/enums/enum_aliases_test.v similarity index 100% rename from vlib/v/tests/enum_aliases_test.v rename to vlib/v/tests/enums/enum_aliases_test.v diff --git a/vlib/v/tests/enum_array_field_test.v b/vlib/v/tests/enums/enum_array_field_test.v similarity index 100% rename from vlib/v/tests/enum_array_field_test.v rename to vlib/v/tests/enums/enum_array_field_test.v diff --git a/vlib/v/tests/enum_attr_2_test.v b/vlib/v/tests/enums/enum_attr_2_test.v similarity index 100% rename from vlib/v/tests/enum_attr_2_test.v rename to vlib/v/tests/enums/enum_attr_2_test.v diff --git a/vlib/v/tests/enum_attr_test.v b/vlib/v/tests/enums/enum_attr_test.v similarity index 100% rename from vlib/v/tests/enum_attr_test.v rename to vlib/v/tests/enums/enum_attr_test.v diff --git a/vlib/v/tests/enum_bitfield_64bit_test.v b/vlib/v/tests/enums/enum_bitfield_64bit_test.v similarity index 100% rename from vlib/v/tests/enum_bitfield_64bit_test.v rename to vlib/v/tests/enums/enum_bitfield_64bit_test.v diff --git a/vlib/v/tests/enum_bitfield_test.v b/vlib/v/tests/enums/enum_bitfield_test.v similarity index 100% rename from vlib/v/tests/enum_bitfield_test.v rename to vlib/v/tests/enums/enum_bitfield_test.v diff --git a/vlib/v/tests/enum_bitfield_works_with_comptime_conditional_in_the_same_scope_test.v b/vlib/v/tests/enums/enum_bitfield_works_with_comptime_conditional_in_the_same_scope_test.v similarity index 100% rename from vlib/v/tests/enum_bitfield_works_with_comptime_conditional_in_the_same_scope_test.v rename to vlib/v/tests/enums/enum_bitfield_works_with_comptime_conditional_in_the_same_scope_test.v diff --git a/vlib/v/tests/enum_custom_static_from_string_test.v b/vlib/v/tests/enums/enum_custom_static_from_string_test.v similarity index 100% rename from vlib/v/tests/enum_custom_static_from_string_test.v rename to vlib/v/tests/enums/enum_custom_static_from_string_test.v diff --git a/vlib/v/tests/enum_default_test.v b/vlib/v/tests/enums/enum_default_test.v similarity index 100% rename from vlib/v/tests/enum_default_test.v rename to vlib/v/tests/enums/enum_default_test.v diff --git a/vlib/v/tests/enum_default_value_in_struct_test.v b/vlib/v/tests/enums/enum_default_value_in_struct_test.v similarity index 100% rename from vlib/v/tests/enum_default_value_in_struct_test.v rename to vlib/v/tests/enums/enum_default_value_in_struct_test.v diff --git a/vlib/v/tests/enum_explicit_size_big_and_small_test.v b/vlib/v/tests/enums/enum_explicit_size_big_and_small_test.v similarity index 100% rename from vlib/v/tests/enum_explicit_size_big_and_small_test.v rename to vlib/v/tests/enums/enum_explicit_size_big_and_small_test.v diff --git a/vlib/v/tests/enum_flag_alias_op_test.v b/vlib/v/tests/enums/enum_flag_alias_op_test.v similarity index 100% rename from vlib/v/tests/enum_flag_alias_op_test.v rename to vlib/v/tests/enums/enum_flag_alias_op_test.v diff --git a/vlib/v/tests/enum_flag_from_test.v b/vlib/v/tests/enums/enum_flag_from_test.v similarity index 100% rename from vlib/v/tests/enum_flag_from_test.v rename to vlib/v/tests/enums/enum_flag_from_test.v diff --git a/vlib/v/tests/enum_flag_test.v b/vlib/v/tests/enums/enum_flag_test.v similarity index 100% rename from vlib/v/tests/enum_flag_test.v rename to vlib/v/tests/enums/enum_flag_test.v diff --git a/vlib/v/tests/enum_from_generic_static_method_test.v b/vlib/v/tests/enums/enum_from_generic_static_method_test.v similarity index 100% rename from vlib/v/tests/enum_from_generic_static_method_test.v rename to vlib/v/tests/enums/enum_from_generic_static_method_test.v diff --git a/vlib/v/tests/enum_hex_test.v b/vlib/v/tests/enums/enum_hex_test.v similarity index 100% rename from vlib/v/tests/enum_hex_test.v rename to vlib/v/tests/enums/enum_hex_test.v diff --git a/vlib/v/tests/enum_max_test.v b/vlib/v/tests/enums/enum_max_test.v similarity index 100% rename from vlib/v/tests/enum_max_test.v rename to vlib/v/tests/enums/enum_max_test.v diff --git a/vlib/v/tests/enum_static_from_string_test.v b/vlib/v/tests/enums/enum_static_from_string_test.v similarity index 100% rename from vlib/v/tests/enum_static_from_string_test.v rename to vlib/v/tests/enums/enum_static_from_string_test.v diff --git a/vlib/v/tests/enum_test.v b/vlib/v/tests/enums/enum_test.v similarity index 100% rename from vlib/v/tests/enum_test.v rename to vlib/v/tests/enums/enum_test.v diff --git a/vlib/v/tests/enum_with_const_test.v b/vlib/v/tests/enums/enum_with_const_test.v similarity index 100% rename from vlib/v/tests/enum_with_const_test.v rename to vlib/v/tests/enums/enum_with_const_test.v diff --git a/vlib/v/tests/fullname_enumval_as_arg_test.v b/vlib/v/tests/enums/fullname_enumval_as_arg_test.v similarity index 100% rename from vlib/v/tests/fullname_enumval_as_arg_test.v rename to vlib/v/tests/enums/fullname_enumval_as_arg_test.v diff --git a/vlib/v/tests/vargs_with_enum_value_test.v b/vlib/v/tests/enums/vargs_with_enum_value_test.v similarity index 100% rename from vlib/v/tests/vargs_with_enum_value_test.v rename to vlib/v/tests/enums/vargs_with_enum_value_test.v diff --git a/vlib/v/tests/anon_fn_call_test.v b/vlib/v/tests/fns/anon_fn_call_test.v similarity index 100% rename from vlib/v/tests/anon_fn_call_test.v rename to vlib/v/tests/fns/anon_fn_call_test.v diff --git a/vlib/v/tests/anon_fn_decl_inside_ternary_test.v b/vlib/v/tests/fns/anon_fn_decl_inside_ternary_test.v similarity index 100% rename from vlib/v/tests/anon_fn_decl_inside_ternary_test.v rename to vlib/v/tests/fns/anon_fn_decl_inside_ternary_test.v diff --git a/vlib/v/tests/anon_fn_decl_with_anon_fn_params_test.v b/vlib/v/tests/fns/anon_fn_decl_with_anon_fn_params_test.v similarity index 100% rename from vlib/v/tests/anon_fn_decl_with_anon_fn_params_test.v rename to vlib/v/tests/fns/anon_fn_decl_with_anon_fn_params_test.v diff --git a/vlib/v/tests/anon_fn_direct_call_with_option_test.v b/vlib/v/tests/fns/anon_fn_direct_call_with_option_test.v similarity index 100% rename from vlib/v/tests/anon_fn_direct_call_with_option_test.v rename to vlib/v/tests/fns/anon_fn_direct_call_with_option_test.v diff --git a/vlib/v/tests/anon_fn_fixed_arr_test.v b/vlib/v/tests/fns/anon_fn_fixed_arr_test.v similarity index 100% rename from vlib/v/tests/anon_fn_fixed_arr_test.v rename to vlib/v/tests/fns/anon_fn_fixed_arr_test.v diff --git a/vlib/v/tests/anon_fn_in_containers_test.v b/vlib/v/tests/fns/anon_fn_in_containers_test.v similarity index 100% rename from vlib/v/tests/anon_fn_in_containers_test.v rename to vlib/v/tests/fns/anon_fn_in_containers_test.v diff --git a/vlib/v/tests/anon_fn_option_call_in_if_expr_test.v b/vlib/v/tests/fns/anon_fn_option_call_in_if_expr_test.v similarity index 100% rename from vlib/v/tests/anon_fn_option_call_in_if_expr_test.v rename to vlib/v/tests/fns/anon_fn_option_call_in_if_expr_test.v diff --git a/vlib/v/tests/anon_fn_option_test.v b/vlib/v/tests/fns/anon_fn_option_test.v similarity index 100% rename from vlib/v/tests/anon_fn_option_test.v rename to vlib/v/tests/fns/anon_fn_option_test.v diff --git a/vlib/v/tests/anon_fn_redefinition_test.v b/vlib/v/tests/fns/anon_fn_redefinition_test.v similarity index 100% rename from vlib/v/tests/anon_fn_redefinition_test.v rename to vlib/v/tests/fns/anon_fn_redefinition_test.v diff --git a/vlib/v/tests/anon_fn_returning_question_test.v b/vlib/v/tests/fns/anon_fn_returning_question_test.v similarity index 100% rename from vlib/v/tests/anon_fn_returning_question_test.v rename to vlib/v/tests/fns/anon_fn_returning_question_test.v diff --git a/vlib/v/tests/anon_fn_test.v b/vlib/v/tests/fns/anon_fn_test.v similarity index 100% rename from vlib/v/tests/anon_fn_test.v rename to vlib/v/tests/fns/anon_fn_test.v diff --git a/vlib/v/tests/anon_fn_with_alias_args_test.v b/vlib/v/tests/fns/anon_fn_with_alias_args_test.v similarity index 100% rename from vlib/v/tests/anon_fn_with_alias_args_test.v rename to vlib/v/tests/fns/anon_fn_with_alias_args_test.v diff --git a/vlib/v/tests/anon_fn_with_array_arguments_test.v b/vlib/v/tests/fns/anon_fn_with_array_arguments_test.v similarity index 100% rename from vlib/v/tests/anon_fn_with_array_arguments_test.v rename to vlib/v/tests/fns/anon_fn_with_array_arguments_test.v diff --git a/vlib/v/tests/anon_fn_with_nested_anon_fn_args_test.v b/vlib/v/tests/fns/anon_fn_with_nested_anon_fn_args_test.v similarity index 100% rename from vlib/v/tests/anon_fn_with_nested_anon_fn_args_test.v rename to vlib/v/tests/fns/anon_fn_with_nested_anon_fn_args_test.v diff --git a/vlib/v/tests/anon_fn_with_option_test.v b/vlib/v/tests/fns/anon_fn_with_option_test.v similarity index 100% rename from vlib/v/tests/anon_fn_with_option_test.v rename to vlib/v/tests/fns/anon_fn_with_option_test.v diff --git a/vlib/v/tests/call_on_anon_test.v b/vlib/v/tests/fns/call_on_anon_test.v similarity index 100% rename from vlib/v/tests/call_on_anon_test.v rename to vlib/v/tests/fns/call_on_anon_test.v diff --git a/vlib/v/tests/call_to_str_on_option_test.v b/vlib/v/tests/fns/call_to_str_on_option_test.v similarity index 100% rename from vlib/v/tests/call_to_str_on_option_test.v rename to vlib/v/tests/fns/call_to_str_on_option_test.v diff --git a/vlib/v/tests/calling_module_functions_with_maps_of_arrays_test.v b/vlib/v/tests/fns/calling_module_functions_with_maps_of_arrays_test.v similarity index 100% rename from vlib/v/tests/calling_module_functions_with_maps_of_arrays_test.v rename to vlib/v/tests/fns/calling_module_functions_with_maps_of_arrays_test.v diff --git a/vlib/v/tests/closure_data_with_gc_test.c.v b/vlib/v/tests/fns/closure_data_with_gc_test.c.v similarity index 100% rename from vlib/v/tests/closure_data_with_gc_test.c.v rename to vlib/v/tests/fns/closure_data_with_gc_test.c.v diff --git a/vlib/v/tests/closure_fn_arg_in_map_test.v b/vlib/v/tests/fns/closure_fn_arg_in_map_test.v similarity index 100% rename from vlib/v/tests/closure_fn_arg_in_map_test.v rename to vlib/v/tests/fns/closure_fn_arg_in_map_test.v diff --git a/vlib/v/tests/closure_generator_test.v b/vlib/v/tests/fns/closure_generator_test.v similarity index 100% rename from vlib/v/tests/closure_generator_test.v rename to vlib/v/tests/fns/closure_generator_test.v diff --git a/vlib/v/tests/closure_in_if_guard_1_test.v b/vlib/v/tests/fns/closure_in_if_guard_1_test.v similarity index 100% rename from vlib/v/tests/closure_in_if_guard_1_test.v rename to vlib/v/tests/fns/closure_in_if_guard_1_test.v diff --git a/vlib/v/tests/closure_in_if_guard_2_test.v b/vlib/v/tests/fns/closure_in_if_guard_2_test.v similarity index 100% rename from vlib/v/tests/closure_in_if_guard_2_test.v rename to vlib/v/tests/fns/closure_in_if_guard_2_test.v diff --git a/vlib/v/tests/closure_of_method_defined_on_alias_test.v b/vlib/v/tests/fns/closure_of_method_defined_on_alias_test.v similarity index 100% rename from vlib/v/tests/closure_of_method_defined_on_alias_test.v rename to vlib/v/tests/fns/closure_of_method_defined_on_alias_test.v diff --git a/vlib/v/tests/closure_option_direct_call_test.v b/vlib/v/tests/fns/closure_option_direct_call_test.v similarity index 100% rename from vlib/v/tests/closure_option_direct_call_test.v rename to vlib/v/tests/fns/closure_option_direct_call_test.v diff --git a/vlib/v/tests/closure_test.v b/vlib/v/tests/fns/closure_test.v similarity index 100% rename from vlib/v/tests/closure_test.v rename to vlib/v/tests/fns/closure_test.v diff --git a/vlib/v/tests/closure_variable_in_smartcast_test.v b/vlib/v/tests/fns/closure_variable_in_smartcast_test.v similarity index 100% rename from vlib/v/tests/closure_variable_in_smartcast_test.v rename to vlib/v/tests/fns/closure_variable_in_smartcast_test.v diff --git a/vlib/v/tests/closure_with_fixed_array_var_test.v b/vlib/v/tests/fns/closure_with_fixed_array_var_test.v similarity index 100% rename from vlib/v/tests/closure_with_fixed_array_var_test.v rename to vlib/v/tests/fns/closure_with_fixed_array_var_test.v diff --git a/vlib/v/tests/closure_with_sumtype_var_test.v b/vlib/v/tests/fns/closure_with_sumtype_var_test.v similarity index 100% rename from vlib/v/tests/closure_with_sumtype_var_test.v rename to vlib/v/tests/fns/closure_with_sumtype_var_test.v diff --git a/vlib/v/tests/cross_method_call_test.v b/vlib/v/tests/fns/cross_method_call_test.v similarity index 100% rename from vlib/v/tests/cross_method_call_test.v rename to vlib/v/tests/fns/cross_method_call_test.v diff --git a/vlib/v/tests/filter_in_map_test.v b/vlib/v/tests/fns/filter_in_map_test.v similarity index 100% rename from vlib/v/tests/filter_in_map_test.v rename to vlib/v/tests/fns/filter_in_map_test.v diff --git a/vlib/v/tests/filter_test.v b/vlib/v/tests/fns/filter_test.v similarity index 100% rename from vlib/v/tests/filter_test.v rename to vlib/v/tests/fns/filter_test.v diff --git a/vlib/v/tests/fn_assignment_test.v b/vlib/v/tests/fns/fn_assignment_test.v similarity index 100% rename from vlib/v/tests/fn_assignment_test.v rename to vlib/v/tests/fns/fn_assignment_test.v diff --git a/vlib/v/tests/fn_call_comptime_array_arg_test.v b/vlib/v/tests/fns/fn_call_comptime_array_arg_test.v similarity index 100% rename from vlib/v/tests/fn_call_comptime_array_arg_test.v rename to vlib/v/tests/fns/fn_call_comptime_array_arg_test.v diff --git a/vlib/v/tests/fn_call_fixed_array_literal_args_test.v b/vlib/v/tests/fns/fn_call_fixed_array_literal_args_test.v similarity index 100% rename from vlib/v/tests/fn_call_fixed_array_literal_args_test.v rename to vlib/v/tests/fns/fn_call_fixed_array_literal_args_test.v diff --git a/vlib/v/tests/fn_call_generic_array_arg_test.v b/vlib/v/tests/fns/fn_call_generic_array_arg_test.v similarity index 100% rename from vlib/v/tests/fn_call_generic_array_arg_test.v rename to vlib/v/tests/fns/fn_call_generic_array_arg_test.v diff --git a/vlib/v/tests/fn_call_interface_args_test.v b/vlib/v/tests/fns/fn_call_interface_args_test.v similarity index 100% rename from vlib/v/tests/fn_call_interface_args_test.v rename to vlib/v/tests/fns/fn_call_interface_args_test.v diff --git a/vlib/v/tests/fn_call_mut_array_of_aliases_args_test.v b/vlib/v/tests/fns/fn_call_mut_array_of_aliases_args_test.v similarity index 100% rename from vlib/v/tests/fn_call_mut_array_of_aliases_args_test.v rename to vlib/v/tests/fns/fn_call_mut_array_of_aliases_args_test.v diff --git a/vlib/v/tests/fn_call_mut_ref_args_test.v b/vlib/v/tests/fns/fn_call_mut_ref_args_test.v similarity index 100% rename from vlib/v/tests/fn_call_mut_ref_args_test.v rename to vlib/v/tests/fns/fn_call_mut_ref_args_test.v diff --git a/vlib/v/tests/fn_call_mut_sumtype_args_test.v b/vlib/v/tests/fns/fn_call_mut_sumtype_args_test.v similarity index 100% rename from vlib/v/tests/fn_call_mut_sumtype_args_test.v rename to vlib/v/tests/fns/fn_call_mut_sumtype_args_test.v diff --git a/vlib/v/tests/fn_call_using_anon_fn_call_args_test.v b/vlib/v/tests/fns/fn_call_using_anon_fn_call_args_test.v similarity index 100% rename from vlib/v/tests/fn_call_using_anon_fn_call_args_test.v rename to vlib/v/tests/fns/fn_call_using_anon_fn_call_args_test.v diff --git a/vlib/v/tests/fn_call_with_newline_opening_brace_test.v b/vlib/v/tests/fns/fn_call_with_newline_opening_brace_test.v similarity index 100% rename from vlib/v/tests/fn_call_with_newline_opening_brace_test.v rename to vlib/v/tests/fns/fn_call_with_newline_opening_brace_test.v diff --git a/vlib/v/tests/fn_cross_assign_test.v b/vlib/v/tests/fns/fn_cross_assign_test.v similarity index 100% rename from vlib/v/tests/fn_cross_assign_test.v rename to vlib/v/tests/fns/fn_cross_assign_test.v diff --git a/vlib/v/tests/fn_expecting_ref_but_returning_struct_test.v b/vlib/v/tests/fns/fn_expecting_ref_but_returning_struct_test.v similarity index 100% rename from vlib/v/tests/fn_expecting_ref_but_returning_struct_test.v rename to vlib/v/tests/fns/fn_expecting_ref_but_returning_struct_test.v diff --git a/vlib/v/tests/fn_expecting_ref_but_returning_struct_time_module_test.v b/vlib/v/tests/fns/fn_expecting_ref_but_returning_struct_time_module_test.v similarity index 100% rename from vlib/v/tests/fn_expecting_ref_but_returning_struct_time_module_test.v rename to vlib/v/tests/fns/fn_expecting_ref_but_returning_struct_time_module_test.v diff --git a/vlib/v/tests/fn_fixed_array_ret_test.v b/vlib/v/tests/fns/fn_fixed_array_ret_test.v similarity index 100% rename from vlib/v/tests/fn_fixed_array_ret_test.v rename to vlib/v/tests/fns/fn_fixed_array_ret_test.v diff --git a/vlib/v/tests/fn_generic_resolve_test.v b/vlib/v/tests/fns/fn_generic_resolve_test.v similarity index 100% rename from vlib/v/tests/fn_generic_resolve_test.v rename to vlib/v/tests/fns/fn_generic_resolve_test.v diff --git a/vlib/v/tests/fn_heap_promoted_test.v b/vlib/v/tests/fns/fn_heap_promoted_test.v similarity index 100% rename from vlib/v/tests/fn_heap_promoted_test.v rename to vlib/v/tests/fns/fn_heap_promoted_test.v diff --git a/vlib/v/tests/fn_high_test.v b/vlib/v/tests/fns/fn_high_test.v similarity index 100% rename from vlib/v/tests/fn_high_test.v rename to vlib/v/tests/fns/fn_high_test.v diff --git a/vlib/v/tests/fn_index_direct_call_test.v b/vlib/v/tests/fns/fn_index_direct_call_test.v similarity index 100% rename from vlib/v/tests/fn_index_direct_call_test.v rename to vlib/v/tests/fns/fn_index_direct_call_test.v diff --git a/vlib/v/tests/fn_literal_type_test.v b/vlib/v/tests/fns/fn_literal_type_test.v similarity index 100% rename from vlib/v/tests/fn_literal_type_test.v rename to vlib/v/tests/fns/fn_literal_type_test.v diff --git a/vlib/v/tests/fn_multi_return_test.v b/vlib/v/tests/fns/fn_multi_return_test.v similarity index 100% rename from vlib/v/tests/fn_multi_return_test.v rename to vlib/v/tests/fns/fn_multi_return_test.v diff --git a/vlib/v/tests/fn_multiple_returns_test.v b/vlib/v/tests/fns/fn_multiple_returns_test.v similarity index 100% rename from vlib/v/tests/fn_multiple_returns_test.v rename to vlib/v/tests/fns/fn_multiple_returns_test.v diff --git a/vlib/v/tests/fn_mut_arg_of_array_test.v b/vlib/v/tests/fns/fn_mut_arg_of_array_test.v similarity index 100% rename from vlib/v/tests/fn_mut_arg_of_array_test.v rename to vlib/v/tests/fns/fn_mut_arg_of_array_test.v diff --git a/vlib/v/tests/fn_mut_arg_of_interface_test.v b/vlib/v/tests/fns/fn_mut_arg_of_interface_test.v similarity index 100% rename from vlib/v/tests/fn_mut_arg_of_interface_test.v rename to vlib/v/tests/fns/fn_mut_arg_of_interface_test.v diff --git a/vlib/v/tests/fn_mut_arg_of_sumtype_ref_test.v b/vlib/v/tests/fns/fn_mut_arg_of_sumtype_ref_test.v similarity index 100% rename from vlib/v/tests/fn_mut_arg_of_sumtype_ref_test.v rename to vlib/v/tests/fns/fn_mut_arg_of_sumtype_ref_test.v diff --git a/vlib/v/tests/fn_mut_args_test.v b/vlib/v/tests/fns/fn_mut_args_test.v similarity index 100% rename from vlib/v/tests/fn_mut_args_test.v rename to vlib/v/tests/fns/fn_mut_args_test.v diff --git a/vlib/v/tests/fn_ptr_call_test.v b/vlib/v/tests/fns/fn_ptr_call_test.v similarity index 100% rename from vlib/v/tests/fn_ptr_call_test.v rename to vlib/v/tests/fns/fn_ptr_call_test.v diff --git a/vlib/v/tests/fn_return_alias_of_ptr_test.v b/vlib/v/tests/fns/fn_return_alias_of_ptr_test.v similarity index 100% rename from vlib/v/tests/fn_return_alias_of_ptr_test.v rename to vlib/v/tests/fns/fn_return_alias_of_ptr_test.v diff --git a/vlib/v/tests/fn_return_fn_test.v b/vlib/v/tests/fns/fn_return_fn_test.v similarity index 100% rename from vlib/v/tests/fn_return_fn_test.v rename to vlib/v/tests/fns/fn_return_fn_test.v diff --git a/vlib/v/tests/fn_return_mut_sumtype_test.v b/vlib/v/tests/fns/fn_return_mut_sumtype_test.v similarity index 100% rename from vlib/v/tests/fn_return_mut_sumtype_test.v rename to vlib/v/tests/fns/fn_return_mut_sumtype_test.v diff --git a/vlib/v/tests/fn_return_opt_or_res_of_array_test.v b/vlib/v/tests/fns/fn_return_opt_or_res_of_array_test.v similarity index 100% rename from vlib/v/tests/fn_return_opt_or_res_of_array_test.v rename to vlib/v/tests/fns/fn_return_opt_or_res_of_array_test.v diff --git a/vlib/v/tests/fn_return_typeof_test.v b/vlib/v/tests/fns/fn_return_typeof_test.v similarity index 100% rename from vlib/v/tests/fn_return_typeof_test.v rename to vlib/v/tests/fns/fn_return_typeof_test.v diff --git a/vlib/v/tests/fn_shared_return_test.v b/vlib/v/tests/fns/fn_shared_return_test.v similarity index 100% rename from vlib/v/tests/fn_shared_return_test.v rename to vlib/v/tests/fns/fn_shared_return_test.v diff --git a/vlib/v/tests/fn_test.c.v b/vlib/v/tests/fns/fn_test.c.v similarity index 100% rename from vlib/v/tests/fn_test.c.v rename to vlib/v/tests/fns/fn_test.c.v diff --git a/vlib/v/tests/fn_type_aliases_test.v b/vlib/v/tests/fns/fn_type_aliases_test.v similarity index 100% rename from vlib/v/tests/fn_type_aliases_test.v rename to vlib/v/tests/fns/fn_type_aliases_test.v diff --git a/vlib/v/tests/fn_type_call_of_match_expr_test.v b/vlib/v/tests/fns/fn_type_call_of_match_expr_test.v similarity index 100% rename from vlib/v/tests/fn_type_call_of_match_expr_test.v rename to vlib/v/tests/fns/fn_type_call_of_match_expr_test.v diff --git a/vlib/v/tests/fn_type_only_argument_test.v b/vlib/v/tests/fns/fn_type_only_argument_test.v similarity index 100% rename from vlib/v/tests/fn_type_only_argument_test.v rename to vlib/v/tests/fns/fn_type_only_argument_test.v diff --git a/vlib/v/tests/fn_var_name_using_reserved_test.v b/vlib/v/tests/fns/fn_var_name_using_reserved_test.v similarity index 100% rename from vlib/v/tests/fn_var_name_using_reserved_test.v rename to vlib/v/tests/fns/fn_var_name_using_reserved_test.v diff --git a/vlib/v/tests/fn_variadic_test.v b/vlib/v/tests/fns/fn_variadic_test.v similarity index 100% rename from vlib/v/tests/fn_variadic_test.v rename to vlib/v/tests/fns/fn_variadic_test.v diff --git a/vlib/v/tests/fn_voidptr_param_call_with_nonpointer_rvalue_test.v b/vlib/v/tests/fns/fn_voidptr_param_call_with_nonpointer_rvalue_test.v similarity index 100% rename from vlib/v/tests/fn_voidptr_param_call_with_nonpointer_rvalue_test.v rename to vlib/v/tests/fns/fn_voidptr_param_call_with_nonpointer_rvalue_test.v diff --git a/vlib/v/tests/fn_with_array_of_aliases_argument_test.v b/vlib/v/tests/fns/fn_with_array_of_aliases_argument_test.v similarity index 100% rename from vlib/v/tests/fn_with_array_of_aliases_argument_test.v rename to vlib/v/tests/fns/fn_with_array_of_aliases_argument_test.v diff --git a/vlib/v/tests/fn_with_fixed_array_args_test.v b/vlib/v/tests/fns/fn_with_fixed_array_args_test.v similarity index 100% rename from vlib/v/tests/fn_with_fixed_array_args_test.v rename to vlib/v/tests/fns/fn_with_fixed_array_args_test.v diff --git a/vlib/v/tests/fn_with_fixed_array_function_args_test.v b/vlib/v/tests/fns/fn_with_fixed_array_function_args_test.v similarity index 100% rename from vlib/v/tests/fn_with_fixed_array_function_args_test.v rename to vlib/v/tests/fns/fn_with_fixed_array_function_args_test.v diff --git a/vlib/v/tests/fn_with_opt_or_res_of_multi_return_test.v b/vlib/v/tests/fns/fn_with_opt_or_res_of_multi_return_test.v similarity index 100% rename from vlib/v/tests/fn_with_opt_or_res_of_multi_return_test.v rename to vlib/v/tests/fns/fn_with_opt_or_res_of_multi_return_test.v diff --git a/vlib/v/tests/go_anon_fn_call_with_ref_arg_test.v b/vlib/v/tests/fns/go_anon_fn_call_with_ref_arg_test.v similarity index 100% rename from vlib/v/tests/go_anon_fn_call_with_ref_arg_test.v rename to vlib/v/tests/fns/go_anon_fn_call_with_ref_arg_test.v diff --git a/vlib/v/tests/go_anon_fn_variable_call_test.v b/vlib/v/tests/fns/go_anon_fn_variable_call_test.v similarity index 100% rename from vlib/v/tests/go_anon_fn_variable_call_test.v rename to vlib/v/tests/fns/go_anon_fn_variable_call_test.v diff --git a/vlib/v/tests/go_array_wait_test.v b/vlib/v/tests/fns/go_array_wait_test.v similarity index 100% rename from vlib/v/tests/go_array_wait_test.v rename to vlib/v/tests/fns/go_array_wait_test.v diff --git a/vlib/v/tests/go_array_wait_without_go_test.v b/vlib/v/tests/fns/go_array_wait_without_go_test.v similarity index 100% rename from vlib/v/tests/go_array_wait_without_go_test.v rename to vlib/v/tests/fns/go_array_wait_without_go_test.v diff --git a/vlib/v/tests/go_call_anon_fn_with_closure_test.v b/vlib/v/tests/fns/go_call_anon_fn_with_closure_test.v similarity index 100% rename from vlib/v/tests/go_call_anon_fn_with_closure_test.v rename to vlib/v/tests/fns/go_call_anon_fn_with_closure_test.v diff --git a/vlib/v/tests/go_call_fn_return_test.v b/vlib/v/tests/fns/go_call_fn_return_test.v similarity index 100% rename from vlib/v/tests/go_call_fn_return_test.v rename to vlib/v/tests/fns/go_call_fn_return_test.v diff --git a/vlib/v/tests/go_call_fn_using_map_value_test.v b/vlib/v/tests/fns/go_call_fn_using_map_value_test.v similarity index 100% rename from vlib/v/tests/go_call_fn_using_map_value_test.v rename to vlib/v/tests/fns/go_call_fn_using_map_value_test.v diff --git a/vlib/v/tests/go_call_fn_with_anon_fn_arg_test.v b/vlib/v/tests/fns/go_call_fn_with_anon_fn_arg_test.v similarity index 100% rename from vlib/v/tests/go_call_fn_with_anon_fn_arg_test.v rename to vlib/v/tests/fns/go_call_fn_with_anon_fn_arg_test.v diff --git a/vlib/v/tests/go_call_fn_with_anon_fn_array_arg_test.v b/vlib/v/tests/fns/go_call_fn_with_anon_fn_array_arg_test.v similarity index 100% rename from vlib/v/tests/go_call_fn_with_anon_fn_array_arg_test.v rename to vlib/v/tests/fns/go_call_fn_with_anon_fn_array_arg_test.v diff --git a/vlib/v/tests/go_call_generic_fn_test.v b/vlib/v/tests/fns/go_call_generic_fn_test.v similarity index 100% rename from vlib/v/tests/go_call_generic_fn_test.v rename to vlib/v/tests/fns/go_call_generic_fn_test.v diff --git a/vlib/v/tests/go_call_interface_method_test.v b/vlib/v/tests/fns/go_call_interface_method_test.v similarity index 100% rename from vlib/v/tests/go_call_interface_method_test.v rename to vlib/v/tests/fns/go_call_interface_method_test.v diff --git a/vlib/v/tests/go_handle_for_functions_returning_array_test.v b/vlib/v/tests/fns/go_handle_for_functions_returning_array_test.v similarity index 100% rename from vlib/v/tests/go_handle_for_functions_returning_array_test.v rename to vlib/v/tests/fns/go_handle_for_functions_returning_array_test.v diff --git a/vlib/v/tests/go_wait_1_test.v b/vlib/v/tests/fns/go_wait_1_test.v similarity index 100% rename from vlib/v/tests/go_wait_1_test.v rename to vlib/v/tests/fns/go_wait_1_test.v diff --git a/vlib/v/tests/go_wait_2_test.v b/vlib/v/tests/fns/go_wait_2_test.v similarity index 100% rename from vlib/v/tests/go_wait_2_test.v rename to vlib/v/tests/fns/go_wait_2_test.v diff --git a/vlib/v/tests/go_wait_3_test.v b/vlib/v/tests/fns/go_wait_3_test.v similarity index 100% rename from vlib/v/tests/go_wait_3_test.v rename to vlib/v/tests/fns/go_wait_3_test.v diff --git a/vlib/v/tests/go_wait_option_test.v b/vlib/v/tests/fns/go_wait_option_test.v similarity index 100% rename from vlib/v/tests/go_wait_option_test.v rename to vlib/v/tests/fns/go_wait_option_test.v diff --git a/vlib/v/tests/go_wait_with_fn_of_interface_parameter_test.v b/vlib/v/tests/fns/go_wait_with_fn_of_interface_parameter_test.v similarity index 100% rename from vlib/v/tests/go_wait_with_fn_of_interface_parameter_test.v rename to vlib/v/tests/fns/go_wait_with_fn_of_interface_parameter_test.v diff --git a/vlib/v/tests/lambda_as_struct_field_value_test.v b/vlib/v/tests/fns/lambda_as_struct_field_value_test.v similarity index 100% rename from vlib/v/tests/lambda_as_struct_field_value_test.v rename to vlib/v/tests/fns/lambda_as_struct_field_value_test.v diff --git a/vlib/v/tests/lambda_expr_test.v b/vlib/v/tests/fns/lambda_expr_test.v similarity index 100% rename from vlib/v/tests/lambda_expr_test.v rename to vlib/v/tests/fns/lambda_expr_test.v diff --git a/vlib/v/tests/lambda_expr_with_result_test.v b/vlib/v/tests/fns/lambda_expr_with_result_test.v similarity index 100% rename from vlib/v/tests/lambda_expr_with_result_test.v rename to vlib/v/tests/fns/lambda_expr_with_result_test.v diff --git a/vlib/v/tests/lambda_generic_test.v b/vlib/v/tests/fns/lambda_generic_test.v similarity index 100% rename from vlib/v/tests/lambda_generic_test.v rename to vlib/v/tests/fns/lambda_generic_test.v diff --git a/vlib/v/tests/method_call_chained_test.v b/vlib/v/tests/fns/method_call_chained_test.v similarity index 100% rename from vlib/v/tests/method_call_chained_test.v rename to vlib/v/tests/fns/method_call_chained_test.v diff --git a/vlib/v/tests/method_call_none_check_test.v b/vlib/v/tests/fns/method_call_none_check_test.v similarity index 100% rename from vlib/v/tests/method_call_none_check_test.v rename to vlib/v/tests/fns/method_call_none_check_test.v diff --git a/vlib/v/tests/method_call_on_aggregate_test.v b/vlib/v/tests/fns/method_call_on_aggregate_test.v similarity index 100% rename from vlib/v/tests/method_call_on_aggregate_test.v rename to vlib/v/tests/fns/method_call_on_aggregate_test.v diff --git a/vlib/v/tests/method_call_resolve_test.v b/vlib/v/tests/fns/method_call_resolve_test.v similarity index 100% rename from vlib/v/tests/method_call_resolve_test.v rename to vlib/v/tests/fns/method_call_resolve_test.v diff --git a/vlib/v/tests/method_call_var_comp_test.v b/vlib/v/tests/fns/method_call_var_comp_test.v similarity index 100% rename from vlib/v/tests/method_call_var_comp_test.v rename to vlib/v/tests/fns/method_call_var_comp_test.v diff --git a/vlib/v/tests/method_first_last_call_test.v b/vlib/v/tests/fns/method_first_last_call_test.v similarity index 100% rename from vlib/v/tests/method_first_last_call_test.v rename to vlib/v/tests/fns/method_first_last_call_test.v diff --git a/vlib/v/tests/methods_as_fields_test.v b/vlib/v/tests/fns/methods_as_fields_test.v similarity index 100% rename from vlib/v/tests/methods_as_fields_test.v rename to vlib/v/tests/fns/methods_as_fields_test.v diff --git a/vlib/v/tests/methods_on_interfaces_test.v b/vlib/v/tests/fns/methods_on_interfaces_test.v similarity index 100% rename from vlib/v/tests/methods_on_interfaces_test.v rename to vlib/v/tests/fns/methods_on_interfaces_test.v diff --git a/vlib/v/tests/checks_for_operator_overrides_should_happen_on_the_concrete_types_when_using_generics_test.v b/vlib/v/tests/generics/checks_for_operator_overrides_should_happen_on_the_concrete_types_when_using_generics_test.v similarity index 100% rename from vlib/v/tests/checks_for_operator_overrides_should_happen_on_the_concrete_types_when_using_generics_test.v rename to vlib/v/tests/generics/checks_for_operator_overrides_should_happen_on_the_concrete_types_when_using_generics_test.v diff --git a/vlib/v/tests/concrete_type_as_generic_fn_type_1_test.v b/vlib/v/tests/generics/concrete_type_as_generic_fn_type_1_test.v similarity index 100% rename from vlib/v/tests/concrete_type_as_generic_fn_type_1_test.v rename to vlib/v/tests/generics/concrete_type_as_generic_fn_type_1_test.v diff --git a/vlib/v/tests/concrete_type_as_generic_fn_type_2_test.v b/vlib/v/tests/generics/concrete_type_as_generic_fn_type_2_test.v similarity index 100% rename from vlib/v/tests/concrete_type_as_generic_fn_type_2_test.v rename to vlib/v/tests/generics/concrete_type_as_generic_fn_type_2_test.v diff --git a/vlib/v/tests/generic_array_clone_test.v b/vlib/v/tests/generics/generic_array_clone_test.v similarity index 100% rename from vlib/v/tests/generic_array_clone_test.v rename to vlib/v/tests/generics/generic_array_clone_test.v diff --git a/vlib/v/tests/generic_array_of_alias_test.v b/vlib/v/tests/generics/generic_array_of_alias_test.v similarity index 100% rename from vlib/v/tests/generic_array_of_alias_test.v rename to vlib/v/tests/generics/generic_array_of_alias_test.v diff --git a/vlib/v/tests/generic_array_of_sumtype_push_test.v b/vlib/v/tests/generics/generic_array_of_sumtype_push_test.v similarity index 100% rename from vlib/v/tests/generic_array_of_sumtype_push_test.v rename to vlib/v/tests/generics/generic_array_of_sumtype_push_test.v diff --git a/vlib/v/tests/generic_arrays_sum_test.v b/vlib/v/tests/generics/generic_arrays_sum_test.v similarity index 100% rename from vlib/v/tests/generic_arrays_sum_test.v rename to vlib/v/tests/generics/generic_arrays_sum_test.v diff --git a/vlib/v/tests/generic_call_mixing_args_test.v b/vlib/v/tests/generics/generic_call_mixing_args_test.v similarity index 100% rename from vlib/v/tests/generic_call_mixing_args_test.v rename to vlib/v/tests/generics/generic_call_mixing_args_test.v diff --git a/vlib/v/tests/generic_chan_test.v b/vlib/v/tests/generics/generic_chan_test.v similarity index 100% rename from vlib/v/tests/generic_chan_test.v rename to vlib/v/tests/generics/generic_chan_test.v diff --git a/vlib/v/tests/generic_comparison_for_conditional_assign_test.v b/vlib/v/tests/generics/generic_comparison_for_conditional_assign_test.v similarity index 100% rename from vlib/v/tests/generic_comparison_for_conditional_assign_test.v rename to vlib/v/tests/generics/generic_comparison_for_conditional_assign_test.v diff --git a/vlib/v/tests/generic_complex_sumtype_test.v b/vlib/v/tests/generics/generic_complex_sumtype_test.v similarity index 100% rename from vlib/v/tests/generic_complex_sumtype_test.v rename to vlib/v/tests/generics/generic_complex_sumtype_test.v diff --git a/vlib/v/tests/generic_comptime_arg_test.v b/vlib/v/tests/generics/generic_comptime_arg_test.v similarity index 100% rename from vlib/v/tests/generic_comptime_arg_test.v rename to vlib/v/tests/generics/generic_comptime_arg_test.v diff --git a/vlib/v/tests/generic_comptime_map_test.v b/vlib/v/tests/generics/generic_comptime_map_test.v similarity index 100% rename from vlib/v/tests/generic_comptime_map_test.v rename to vlib/v/tests/generics/generic_comptime_map_test.v diff --git a/vlib/v/tests/generic_comptime_test.v b/vlib/v/tests/generics/generic_comptime_test.v similarity index 100% rename from vlib/v/tests/generic_comptime_test.v rename to vlib/v/tests/generics/generic_comptime_test.v diff --git a/vlib/v/tests/generic_empty_interface_to_multi_struct_test.v b/vlib/v/tests/generics/generic_empty_interface_to_multi_struct_test.v similarity index 100% rename from vlib/v/tests/generic_empty_interface_to_multi_struct_test.v rename to vlib/v/tests/generics/generic_empty_interface_to_multi_struct_test.v diff --git a/vlib/v/tests/generic_empty_interface_to_struct_test.v b/vlib/v/tests/generics/generic_empty_interface_to_struct_test.v similarity index 100% rename from vlib/v/tests/generic_empty_interface_to_struct_test.v rename to vlib/v/tests/generics/generic_empty_interface_to_struct_test.v diff --git a/vlib/v/tests/generic_fn_assign_generics_struct_test.v b/vlib/v/tests/generics/generic_fn_assign_generics_struct_test.v similarity index 100% rename from vlib/v/tests/generic_fn_assign_generics_struct_test.v rename to vlib/v/tests/generics/generic_fn_assign_generics_struct_test.v diff --git a/vlib/v/tests/generic_fn_call_map_keys_values_test.v b/vlib/v/tests/generics/generic_fn_call_map_keys_values_test.v similarity index 100% rename from vlib/v/tests/generic_fn_call_map_keys_values_test.v rename to vlib/v/tests/generics/generic_fn_call_map_keys_values_test.v diff --git a/vlib/v/tests/generic_fn_call_with_reference_argument_test.v b/vlib/v/tests/generics/generic_fn_call_with_reference_argument_test.v similarity index 100% rename from vlib/v/tests/generic_fn_call_with_reference_argument_test.v rename to vlib/v/tests/generics/generic_fn_call_with_reference_argument_test.v diff --git a/vlib/v/tests/generic_fn_cast_to_alias_test.v b/vlib/v/tests/generics/generic_fn_cast_to_alias_test.v similarity index 100% rename from vlib/v/tests/generic_fn_cast_to_alias_test.v rename to vlib/v/tests/generics/generic_fn_cast_to_alias_test.v diff --git a/vlib/v/tests/generic_fn_infer_fixed_array_test.v b/vlib/v/tests/generics/generic_fn_infer_fixed_array_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_fixed_array_test.v rename to vlib/v/tests/generics/generic_fn_infer_fixed_array_test.v diff --git a/vlib/v/tests/generic_fn_infer_fn_type_argument_test.v b/vlib/v/tests/generics/generic_fn_infer_fn_type_argument_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_fn_type_argument_test.v rename to vlib/v/tests/generics/generic_fn_infer_fn_type_argument_test.v diff --git a/vlib/v/tests/generic_fn_infer_fn_type_using_ref_arg_test.v b/vlib/v/tests/generics/generic_fn_infer_fn_type_using_ref_arg_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_fn_type_using_ref_arg_test.v rename to vlib/v/tests/generics/generic_fn_infer_fn_type_using_ref_arg_test.v diff --git a/vlib/v/tests/generic_fn_infer_map_argument_test.v b/vlib/v/tests/generics/generic_fn_infer_map_argument_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_map_argument_test.v rename to vlib/v/tests/generics/generic_fn_infer_map_argument_test.v diff --git a/vlib/v/tests/generic_fn_infer_map_test.v b/vlib/v/tests/generics/generic_fn_infer_map_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_map_test.v rename to vlib/v/tests/generics/generic_fn_infer_map_test.v diff --git a/vlib/v/tests/generic_fn_infer_modifier_test.v b/vlib/v/tests/generics/generic_fn_infer_modifier_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_modifier_test.v rename to vlib/v/tests/generics/generic_fn_infer_modifier_test.v diff --git a/vlib/v/tests/generic_fn_infer_multi_paras_test.v b/vlib/v/tests/generics/generic_fn_infer_multi_paras_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_multi_paras_test.v rename to vlib/v/tests/generics/generic_fn_infer_multi_paras_test.v diff --git a/vlib/v/tests/generic_fn_infer_nested_generic_fn_test.v b/vlib/v/tests/generics/generic_fn_infer_nested_generic_fn_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_nested_generic_fn_test.v rename to vlib/v/tests/generics/generic_fn_infer_nested_generic_fn_test.v diff --git a/vlib/v/tests/generic_fn_infer_nested_struct_test.v b/vlib/v/tests/generics/generic_fn_infer_nested_struct_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_nested_struct_test.v rename to vlib/v/tests/generics/generic_fn_infer_nested_struct_test.v diff --git a/vlib/v/tests/generic_fn_infer_struct_test.v b/vlib/v/tests/generics/generic_fn_infer_struct_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_struct_test.v rename to vlib/v/tests/generics/generic_fn_infer_struct_test.v diff --git a/vlib/v/tests/generic_fn_infer_test.v b/vlib/v/tests/generics/generic_fn_infer_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_test.v rename to vlib/v/tests/generics/generic_fn_infer_test.v diff --git a/vlib/v/tests/generic_fn_infer_variadic_test.v b/vlib/v/tests/generics/generic_fn_infer_variadic_test.v similarity index 100% rename from vlib/v/tests/generic_fn_infer_variadic_test.v rename to vlib/v/tests/generics/generic_fn_infer_variadic_test.v diff --git a/vlib/v/tests/generic_fn_multi_return_test.v b/vlib/v/tests/generics/generic_fn_multi_return_test.v similarity index 100% rename from vlib/v/tests/generic_fn_multi_return_test.v rename to vlib/v/tests/generics/generic_fn_multi_return_test.v diff --git a/vlib/v/tests/generic_fn_returning_option_and_result_test.v b/vlib/v/tests/generics/generic_fn_returning_option_and_result_test.v similarity index 100% rename from vlib/v/tests/generic_fn_returning_option_and_result_test.v rename to vlib/v/tests/generics/generic_fn_returning_option_and_result_test.v diff --git a/vlib/v/tests/generic_fn_returning_type_with_T_test.v b/vlib/v/tests/generics/generic_fn_returning_type_with_T_test.v similarity index 100% rename from vlib/v/tests/generic_fn_returning_type_with_T_test.v rename to vlib/v/tests/generics/generic_fn_returning_type_with_T_test.v diff --git a/vlib/v/tests/generic_fn_typeof_name_test.v b/vlib/v/tests/generics/generic_fn_typeof_name_test.v similarity index 100% rename from vlib/v/tests/generic_fn_typeof_name_test.v rename to vlib/v/tests/generics/generic_fn_typeof_name_test.v diff --git a/vlib/v/tests/generic_fn_upper_name_type_test.v b/vlib/v/tests/generics/generic_fn_upper_name_type_test.v similarity index 100% rename from vlib/v/tests/generic_fn_upper_name_type_test.v rename to vlib/v/tests/generics/generic_fn_upper_name_type_test.v diff --git a/vlib/v/tests/generic_fn_using_generic_type_in_if_test.v b/vlib/v/tests/generics/generic_fn_using_generic_type_in_if_test.v similarity index 100% rename from vlib/v/tests/generic_fn_using_generic_type_in_if_test.v rename to vlib/v/tests/generics/generic_fn_using_generic_type_in_if_test.v diff --git a/vlib/v/tests/generic_fn_with_anon_fn_test.v b/vlib/v/tests/generics/generic_fn_with_anon_fn_test.v similarity index 100% rename from vlib/v/tests/generic_fn_with_anon_fn_test.v rename to vlib/v/tests/generics/generic_fn_with_anon_fn_test.v diff --git a/vlib/v/tests/generic_fn_with_comptime_for_test.v b/vlib/v/tests/generics/generic_fn_with_comptime_for_test.v similarity index 100% rename from vlib/v/tests/generic_fn_with_comptime_for_test.v rename to vlib/v/tests/generics/generic_fn_with_comptime_for_test.v diff --git a/vlib/v/tests/generic_fn_with_nested_generic_fn_call_test.v b/vlib/v/tests/generics/generic_fn_with_nested_generic_fn_call_test.v similarity index 100% rename from vlib/v/tests/generic_fn_with_nested_generic_fn_call_test.v rename to vlib/v/tests/generics/generic_fn_with_nested_generic_fn_call_test.v diff --git a/vlib/v/tests/generic_fn_with_short_generic_struct_init_syntax_1_test.v b/vlib/v/tests/generics/generic_fn_with_short_generic_struct_init_syntax_1_test.v similarity index 100% rename from vlib/v/tests/generic_fn_with_short_generic_struct_init_syntax_1_test.v rename to vlib/v/tests/generics/generic_fn_with_short_generic_struct_init_syntax_1_test.v diff --git a/vlib/v/tests/generic_fn_with_short_generic_struct_init_syntax_2_test.v b/vlib/v/tests/generics/generic_fn_with_short_generic_struct_init_syntax_2_test.v similarity index 100% rename from vlib/v/tests/generic_fn_with_short_generic_struct_init_syntax_2_test.v rename to vlib/v/tests/generics/generic_fn_with_short_generic_struct_init_syntax_2_test.v diff --git a/vlib/v/tests/generic_functions_with_normal_function_test.v b/vlib/v/tests/generics/generic_functions_with_normal_function_test.v similarity index 100% rename from vlib/v/tests/generic_functions_with_normal_function_test.v rename to vlib/v/tests/generics/generic_functions_with_normal_function_test.v diff --git a/vlib/v/tests/generic_if_ret_test.v b/vlib/v/tests/generics/generic_if_ret_test.v similarity index 100% rename from vlib/v/tests/generic_if_ret_test.v rename to vlib/v/tests/generics/generic_if_ret_test.v diff --git a/vlib/v/tests/generic_init_syntax_test.v b/vlib/v/tests/generics/generic_init_syntax_test.v similarity index 100% rename from vlib/v/tests/generic_init_syntax_test.v rename to vlib/v/tests/generics/generic_init_syntax_test.v diff --git a/vlib/v/tests/generic_interface_array_type_infer_test.v b/vlib/v/tests/generics/generic_interface_array_type_infer_test.v similarity index 100% rename from vlib/v/tests/generic_interface_array_type_infer_test.v rename to vlib/v/tests/generics/generic_interface_array_type_infer_test.v diff --git a/vlib/v/tests/generic_interface_infer_test.v b/vlib/v/tests/generics/generic_interface_infer_test.v similarity index 100% rename from vlib/v/tests/generic_interface_infer_test.v rename to vlib/v/tests/generics/generic_interface_infer_test.v diff --git a/vlib/v/tests/generic_interface_test.v b/vlib/v/tests/generics/generic_interface_test.v similarity index 100% rename from vlib/v/tests/generic_interface_test.v rename to vlib/v/tests/generics/generic_interface_test.v diff --git a/vlib/v/tests/generic_lambda_expr_test.v b/vlib/v/tests/generics/generic_lambda_expr_test.v similarity index 100% rename from vlib/v/tests/generic_lambda_expr_test.v rename to vlib/v/tests/generics/generic_lambda_expr_test.v diff --git a/vlib/v/tests/generic_method_with_variadic_generic_args_test.v b/vlib/v/tests/generics/generic_method_with_variadic_generic_args_test.v similarity index 100% rename from vlib/v/tests/generic_method_with_variadic_generic_args_test.v rename to vlib/v/tests/generics/generic_method_with_variadic_generic_args_test.v diff --git a/vlib/v/tests/generic_operator_overload_test.v b/vlib/v/tests/generics/generic_operator_overload_test.v similarity index 100% rename from vlib/v/tests/generic_operator_overload_test.v rename to vlib/v/tests/generics/generic_operator_overload_test.v diff --git a/vlib/v/tests/generic_receiver_embed_test.v b/vlib/v/tests/generics/generic_receiver_embed_test.v similarity index 100% rename from vlib/v/tests/generic_receiver_embed_test.v rename to vlib/v/tests/generics/generic_receiver_embed_test.v diff --git a/vlib/v/tests/generic_recursive_fn_test.v b/vlib/v/tests/generics/generic_recursive_fn_test.v similarity index 100% rename from vlib/v/tests/generic_recursive_fn_test.v rename to vlib/v/tests/generics/generic_recursive_fn_test.v diff --git a/vlib/v/tests/generic_resolve_test.v b/vlib/v/tests/generics/generic_resolve_test.v similarity index 100% rename from vlib/v/tests/generic_resolve_test.v rename to vlib/v/tests/generics/generic_resolve_test.v diff --git a/vlib/v/tests/generic_return_test.v b/vlib/v/tests/generics/generic_return_test.v similarity index 100% rename from vlib/v/tests/generic_return_test.v rename to vlib/v/tests/generics/generic_return_test.v diff --git a/vlib/v/tests/generic_selector_test.v b/vlib/v/tests/generics/generic_selector_test.v similarity index 100% rename from vlib/v/tests/generic_selector_test.v rename to vlib/v/tests/generics/generic_selector_test.v diff --git a/vlib/v/tests/generic_smartcast_test.v b/vlib/v/tests/generics/generic_smartcast_test.v similarity index 100% rename from vlib/v/tests/generic_smartcast_test.v rename to vlib/v/tests/generics/generic_smartcast_test.v diff --git a/vlib/v/tests/generic_static_call_test.v b/vlib/v/tests/generics/generic_static_call_test.v similarity index 100% rename from vlib/v/tests/generic_static_call_test.v rename to vlib/v/tests/generics/generic_static_call_test.v diff --git a/vlib/v/tests/generic_static_method_test.v b/vlib/v/tests/generics/generic_static_method_test.v similarity index 100% rename from vlib/v/tests/generic_static_method_test.v rename to vlib/v/tests/generics/generic_static_method_test.v diff --git a/vlib/v/tests/generic_struct_init_ptr_test.v b/vlib/v/tests/generics/generic_struct_init_ptr_test.v similarity index 100% rename from vlib/v/tests/generic_struct_init_ptr_test.v rename to vlib/v/tests/generics/generic_struct_init_ptr_test.v diff --git a/vlib/v/tests/generic_struct_init_with_field_struct_init_test.v b/vlib/v/tests/generics/generic_struct_init_with_field_struct_init_test.v similarity index 100% rename from vlib/v/tests/generic_struct_init_with_field_struct_init_test.v rename to vlib/v/tests/generics/generic_struct_init_with_field_struct_init_test.v diff --git a/vlib/v/tests/generic_struct_init_with_generic_cast_test.v b/vlib/v/tests/generics/generic_struct_init_with_generic_cast_test.v similarity index 100% rename from vlib/v/tests/generic_struct_init_with_generic_cast_test.v rename to vlib/v/tests/generics/generic_struct_init_with_generic_cast_test.v diff --git a/vlib/v/tests/generic_struct_init_with_reference_struct_type_test.v b/vlib/v/tests/generics/generic_struct_init_with_reference_struct_type_test.v similarity index 100% rename from vlib/v/tests/generic_struct_init_with_reference_struct_type_test.v rename to vlib/v/tests/generics/generic_struct_init_with_reference_struct_type_test.v diff --git a/vlib/v/tests/generic_struct_init_with_update_expr_test.v b/vlib/v/tests/generics/generic_struct_init_with_update_expr_test.v similarity index 100% rename from vlib/v/tests/generic_struct_init_with_update_expr_test.v rename to vlib/v/tests/generics/generic_struct_init_with_update_expr_test.v diff --git a/vlib/v/tests/generic_struct_recursive_test.v b/vlib/v/tests/generics/generic_struct_recursive_test.v similarity index 100% rename from vlib/v/tests/generic_struct_recursive_test.v rename to vlib/v/tests/generics/generic_struct_recursive_test.v diff --git a/vlib/v/tests/generic_struct_test.v b/vlib/v/tests/generics/generic_struct_test.v similarity index 100% rename from vlib/v/tests/generic_struct_test.v rename to vlib/v/tests/generics/generic_struct_test.v diff --git a/vlib/v/tests/generic_sumtype_cast_test.v b/vlib/v/tests/generics/generic_sumtype_cast_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_cast_test.v rename to vlib/v/tests/generics/generic_sumtype_cast_test.v diff --git a/vlib/v/tests/generic_sumtype_init_in_generic_fn_call_test.v b/vlib/v/tests/generics/generic_sumtype_init_in_generic_fn_call_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_init_in_generic_fn_call_test.v rename to vlib/v/tests/generics/generic_sumtype_init_in_generic_fn_call_test.v diff --git a/vlib/v/tests/generic_sumtype_insts_test.v b/vlib/v/tests/generics/generic_sumtype_insts_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_insts_test.v rename to vlib/v/tests/generics/generic_sumtype_insts_test.v diff --git a/vlib/v/tests/generic_sumtype_method_test.v b/vlib/v/tests/generics/generic_sumtype_method_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_method_test.v rename to vlib/v/tests/generics/generic_sumtype_method_test.v diff --git a/vlib/v/tests/generic_sumtype_of_alias_generic_struct_test.v b/vlib/v/tests/generics/generic_sumtype_of_alias_generic_struct_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_of_alias_generic_struct_test.v rename to vlib/v/tests/generics/generic_sumtype_of_alias_generic_struct_test.v diff --git a/vlib/v/tests/generic_sumtype_repeated_test.v b/vlib/v/tests/generics/generic_sumtype_repeated_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_repeated_test.v rename to vlib/v/tests/generics/generic_sumtype_repeated_test.v diff --git a/vlib/v/tests/generic_sumtype_str_test.v b/vlib/v/tests/generics/generic_sumtype_str_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_str_test.v rename to vlib/v/tests/generics/generic_sumtype_str_test.v diff --git a/vlib/v/tests/generic_sumtype_test.v b/vlib/v/tests/generics/generic_sumtype_test.v similarity index 100% rename from vlib/v/tests/generic_sumtype_test.v rename to vlib/v/tests/generics/generic_sumtype_test.v diff --git a/vlib/v/tests/generic_with_ptr_as_param_test.v b/vlib/v/tests/generics/generic_with_ptr_as_param_test.v similarity index 100% rename from vlib/v/tests/generic_with_ptr_as_param_test.v rename to vlib/v/tests/generics/generic_with_ptr_as_param_test.v diff --git a/vlib/v/tests/generics_T_typ_test.v b/vlib/v/tests/generics/generics_T_typ_test.v similarity index 100% rename from vlib/v/tests/generics_T_typ_test.v rename to vlib/v/tests/generics/generics_T_typ_test.v diff --git a/vlib/v/tests/generics_anon_fn_decl_with_type_only_arg_test.v b/vlib/v/tests/generics/generics_anon_fn_decl_with_type_only_arg_test.v similarity index 100% rename from vlib/v/tests/generics_anon_fn_decl_with_type_only_arg_test.v rename to vlib/v/tests/generics/generics_anon_fn_decl_with_type_only_arg_test.v diff --git a/vlib/v/tests/generics_array_append_test.v b/vlib/v/tests/generics/generics_array_append_test.v similarity index 100% rename from vlib/v/tests/generics_array_append_test.v rename to vlib/v/tests/generics/generics_array_append_test.v diff --git a/vlib/v/tests/generics_array_builtin_method_call_test.v b/vlib/v/tests/generics/generics_array_builtin_method_call_test.v similarity index 100% rename from vlib/v/tests/generics_array_builtin_method_call_test.v rename to vlib/v/tests/generics/generics_array_builtin_method_call_test.v diff --git a/vlib/v/tests/generics_array_delete_test.v b/vlib/v/tests/generics/generics_array_delete_test.v similarity index 100% rename from vlib/v/tests/generics_array_delete_test.v rename to vlib/v/tests/generics/generics_array_delete_test.v diff --git a/vlib/v/tests/generics_array_drop_test.v b/vlib/v/tests/generics/generics_array_drop_test.v similarity index 100% rename from vlib/v/tests/generics_array_drop_test.v rename to vlib/v/tests/generics/generics_array_drop_test.v diff --git a/vlib/v/tests/generics_array_init_test.v b/vlib/v/tests/generics/generics_array_init_test.v similarity index 100% rename from vlib/v/tests/generics_array_init_test.v rename to vlib/v/tests/generics/generics_array_init_test.v diff --git a/vlib/v/tests/generics_array_map_with_generic_callback_test.v b/vlib/v/tests/generics/generics_array_map_with_generic_callback_test.v similarity index 100% rename from vlib/v/tests/generics_array_map_with_generic_callback_test.v rename to vlib/v/tests/generics/generics_array_map_with_generic_callback_test.v diff --git a/vlib/v/tests/generics_array_method_call_with_multi_types_test.v b/vlib/v/tests/generics/generics_array_method_call_with_multi_types_test.v similarity index 100% rename from vlib/v/tests/generics_array_method_call_with_multi_types_test.v rename to vlib/v/tests/generics/generics_array_method_call_with_multi_types_test.v diff --git a/vlib/v/tests/generics_array_of_interface_method_call_test.v b/vlib/v/tests/generics/generics_array_of_interface_method_call_test.v similarity index 100% rename from vlib/v/tests/generics_array_of_interface_method_call_test.v rename to vlib/v/tests/generics/generics_array_of_interface_method_call_test.v diff --git a/vlib/v/tests/generics_array_of_threads_test.v b/vlib/v/tests/generics/generics_array_of_threads_test.v similarity index 100% rename from vlib/v/tests/generics_array_of_threads_test.v rename to vlib/v/tests/generics/generics_array_of_threads_test.v diff --git a/vlib/v/tests/generics_array_typedef_test.v b/vlib/v/tests/generics/generics_array_typedef_test.v similarity index 100% rename from vlib/v/tests/generics_array_typedef_test.v rename to vlib/v/tests/generics/generics_array_typedef_test.v diff --git a/vlib/v/tests/generics_assign_reference_generic_struct_test.v b/vlib/v/tests/generics/generics_assign_reference_generic_struct_test.v similarity index 100% rename from vlib/v/tests/generics_assign_reference_generic_struct_test.v rename to vlib/v/tests/generics/generics_assign_reference_generic_struct_test.v diff --git a/vlib/v/tests/generics_call_with_fixed_array_arg_test.v b/vlib/v/tests/generics/generics_call_with_fixed_array_arg_test.v similarity index 100% rename from vlib/v/tests/generics_call_with_fixed_array_arg_test.v rename to vlib/v/tests/generics/generics_call_with_fixed_array_arg_test.v diff --git a/vlib/v/tests/generics_call_with_interface_arg_test.v b/vlib/v/tests/generics/generics_call_with_interface_arg_test.v similarity index 100% rename from vlib/v/tests/generics_call_with_interface_arg_test.v rename to vlib/v/tests/generics/generics_call_with_interface_arg_test.v diff --git a/vlib/v/tests/generics_call_with_reference_arg_test.v b/vlib/v/tests/generics/generics_call_with_reference_arg_test.v similarity index 100% rename from vlib/v/tests/generics_call_with_reference_arg_test.v rename to vlib/v/tests/generics/generics_call_with_reference_arg_test.v diff --git a/vlib/v/tests/generics_chans_select_test.v b/vlib/v/tests/generics/generics_chans_select_test.v similarity index 100% rename from vlib/v/tests/generics_chans_select_test.v rename to vlib/v/tests/generics/generics_chans_select_test.v diff --git a/vlib/v/tests/generics_closure_fn_direct_call_test.v b/vlib/v/tests/generics/generics_closure_fn_direct_call_test.v similarity index 100% rename from vlib/v/tests/generics_closure_fn_direct_call_test.v rename to vlib/v/tests/generics/generics_closure_fn_direct_call_test.v diff --git a/vlib/v/tests/generics_closure_fn_test.v b/vlib/v/tests/generics/generics_closure_fn_test.v similarity index 100% rename from vlib/v/tests/generics_closure_fn_test.v rename to vlib/v/tests/generics/generics_closure_fn_test.v diff --git a/vlib/v/tests/generics_closures_with_different_generic_types_test.v b/vlib/v/tests/generics/generics_closures_with_different_generic_types_test.v similarity index 100% rename from vlib/v/tests/generics_closures_with_different_generic_types_test.v rename to vlib/v/tests/generics/generics_closures_with_different_generic_types_test.v diff --git a/vlib/v/tests/generics_fixed_array_assign_test.v b/vlib/v/tests/generics/generics_fixed_array_assign_test.v similarity index 100% rename from vlib/v/tests/generics_fixed_array_assign_test.v rename to vlib/v/tests/generics/generics_fixed_array_assign_test.v diff --git a/vlib/v/tests/generics_fn_return_generic_interface_test.v b/vlib/v/tests/generics/generics_fn_return_generic_interface_test.v similarity index 100% rename from vlib/v/tests/generics_fn_return_generic_interface_test.v rename to vlib/v/tests/generics/generics_fn_return_generic_interface_test.v diff --git a/vlib/v/tests/generics_fn_return_result_test.v b/vlib/v/tests/generics/generics_fn_return_result_test.v similarity index 100% rename from vlib/v/tests/generics_fn_return_result_test.v rename to vlib/v/tests/generics/generics_fn_return_result_test.v diff --git a/vlib/v/tests/generics_fn_return_types_with_generic_struct_test.v b/vlib/v/tests/generics/generics_fn_return_types_with_generic_struct_test.v similarity index 100% rename from vlib/v/tests/generics_fn_return_types_with_generic_struct_test.v rename to vlib/v/tests/generics/generics_fn_return_types_with_generic_struct_test.v diff --git a/vlib/v/tests/generics_fn_variable_1_test.v b/vlib/v/tests/generics/generics_fn_variable_1_test.v similarity index 100% rename from vlib/v/tests/generics_fn_variable_1_test.v rename to vlib/v/tests/generics/generics_fn_variable_1_test.v diff --git a/vlib/v/tests/generics_fn_variable_2_test.v b/vlib/v/tests/generics/generics_fn_variable_2_test.v similarity index 100% rename from vlib/v/tests/generics_fn_variable_2_test.v rename to vlib/v/tests/generics/generics_fn_variable_2_test.v diff --git a/vlib/v/tests/generics_fn_variable_3_test.v b/vlib/v/tests/generics/generics_fn_variable_3_test.v similarity index 100% rename from vlib/v/tests/generics_fn_variable_3_test.v rename to vlib/v/tests/generics/generics_fn_variable_3_test.v diff --git a/vlib/v/tests/generics_for_in_iterate_test.v b/vlib/v/tests/generics/generics_for_in_iterate_test.v similarity index 100% rename from vlib/v/tests/generics_for_in_iterate_test.v rename to vlib/v/tests/generics/generics_for_in_iterate_test.v diff --git a/vlib/v/tests/generics_from_modules/genericmodule/take.v b/vlib/v/tests/generics/generics_from_modules/genericmodule/take.v similarity index 100% rename from vlib/v/tests/generics_from_modules/genericmodule/take.v rename to vlib/v/tests/generics/generics_from_modules/genericmodule/take.v diff --git a/vlib/v/tests/generics_from_modules/infer_generic_struct_test.v b/vlib/v/tests/generics/generics_from_modules/infer_generic_struct_test.v similarity index 73% rename from vlib/v/tests/generics_from_modules/infer_generic_struct_test.v rename to vlib/v/tests/generics/generics_from_modules/infer_generic_struct_test.v index 18e82c7625..e5d13c8b22 100644 --- a/vlib/v/tests/generics_from_modules/infer_generic_struct_test.v +++ b/vlib/v/tests/generics/generics_from_modules/infer_generic_struct_test.v @@ -1,4 +1,4 @@ -import v.tests.generics_from_modules.newmodule as nm +import v.tests.generics.generics_from_modules.newmodule as nm fn test_infer_generic_struct() { a_in := [int(1), 2, 4] diff --git a/vlib/v/tests/generics_from_modules/inference_test.v b/vlib/v/tests/generics/generics_from_modules/inference_test.v similarity index 93% rename from vlib/v/tests/generics_from_modules/inference_test.v rename to vlib/v/tests/generics/generics_from_modules/inference_test.v index 0d7445bb61..f885169c0b 100644 --- a/vlib/v/tests/generics_from_modules/inference_test.v +++ b/vlib/v/tests/generics/generics_from_modules/inference_test.v @@ -1,6 +1,6 @@ module main -import v.tests.generics_from_modules.genericmodule +import v.tests.generics.generics_from_modules.genericmodule fn test_generic_function_from_another_module() { v1 := genericmodule.take[int](true, 10, 20) diff --git a/vlib/v/tests/generics_from_modules/newmodule/newmodule.v b/vlib/v/tests/generics/generics_from_modules/newmodule/newmodule.v similarity index 100% rename from vlib/v/tests/generics_from_modules/newmodule/newmodule.v rename to vlib/v/tests/generics/generics_from_modules/newmodule/newmodule.v diff --git a/vlib/v/tests/generics_in_big_struct_method_test.v b/vlib/v/tests/generics/generics_in_big_struct_method_test.v similarity index 100% rename from vlib/v/tests/generics_in_big_struct_method_test.v rename to vlib/v/tests/generics/generics_in_big_struct_method_test.v diff --git a/vlib/v/tests/generics_in_generics_test.v b/vlib/v/tests/generics/generics_in_generics_test.v similarity index 100% rename from vlib/v/tests/generics_in_generics_test.v rename to vlib/v/tests/generics/generics_in_generics_test.v diff --git a/vlib/v/tests/generics_indirect_test.v b/vlib/v/tests/generics/generics_indirect_test.v similarity index 100% rename from vlib/v/tests/generics_indirect_test.v rename to vlib/v/tests/generics/generics_indirect_test.v diff --git a/vlib/v/tests/generics_interface_decl_test.v b/vlib/v/tests/generics/generics_interface_decl_test.v similarity index 100% rename from vlib/v/tests/generics_interface_decl_test.v rename to vlib/v/tests/generics/generics_interface_decl_test.v diff --git a/vlib/v/tests/generics_interface_method_test.v b/vlib/v/tests/generics/generics_interface_method_test.v similarity index 100% rename from vlib/v/tests/generics_interface_method_test.v rename to vlib/v/tests/generics/generics_interface_method_test.v diff --git a/vlib/v/tests/generics_interface_with_generic_method_using_generic_struct_test.v b/vlib/v/tests/generics/generics_interface_with_generic_method_using_generic_struct_test.v similarity index 100% rename from vlib/v/tests/generics_interface_with_generic_method_using_generic_struct_test.v rename to vlib/v/tests/generics/generics_interface_with_generic_method_using_generic_struct_test.v diff --git a/vlib/v/tests/generics_interface_with_generic_sumtype_test.v b/vlib/v/tests/generics/generics_interface_with_generic_sumtype_test.v similarity index 100% rename from vlib/v/tests/generics_interface_with_generic_sumtype_test.v rename to vlib/v/tests/generics/generics_interface_with_generic_sumtype_test.v diff --git a/vlib/v/tests/generics_interface_with_multi_generic_structs_test.v b/vlib/v/tests/generics/generics_interface_with_multi_generic_structs_test.v similarity index 100% rename from vlib/v/tests/generics_interface_with_multi_generic_structs_test.v rename to vlib/v/tests/generics/generics_interface_with_multi_generic_structs_test.v diff --git a/vlib/v/tests/generics_interface_with_multi_generic_types_test.v b/vlib/v/tests/generics/generics_interface_with_multi_generic_types_test.v similarity index 100% rename from vlib/v/tests/generics_interface_with_multi_generic_types_test.v rename to vlib/v/tests/generics/generics_interface_with_multi_generic_types_test.v diff --git a/vlib/v/tests/generics_interface_with_non_generic_method_test.v b/vlib/v/tests/generics/generics_interface_with_non_generic_method_test.v similarity index 100% rename from vlib/v/tests/generics_interface_with_non_generic_method_test.v rename to vlib/v/tests/generics/generics_interface_with_non_generic_method_test.v diff --git a/vlib/v/tests/generics_map_with_generic_type_key_test.v b/vlib/v/tests/generics/generics_map_with_generic_type_key_test.v similarity index 100% rename from vlib/v/tests/generics_map_with_generic_type_key_test.v rename to vlib/v/tests/generics/generics_map_with_generic_type_key_test.v diff --git a/vlib/v/tests/generics_map_with_reference_arg_test.v b/vlib/v/tests/generics/generics_map_with_reference_arg_test.v similarity index 100% rename from vlib/v/tests/generics_map_with_reference_arg_test.v rename to vlib/v/tests/generics/generics_map_with_reference_arg_test.v diff --git a/vlib/v/tests/generics_method_call_with_short_syntax_args_test.v b/vlib/v/tests/generics/generics_method_call_with_short_syntax_args_test.v similarity index 100% rename from vlib/v/tests/generics_method_call_with_short_syntax_args_test.v rename to vlib/v/tests/generics/generics_method_call_with_short_syntax_args_test.v diff --git a/vlib/v/tests/generics_method_on_alias_struct_receiver_test.v b/vlib/v/tests/generics/generics_method_on_alias_struct_receiver_test.v similarity index 100% rename from vlib/v/tests/generics_method_on_alias_struct_receiver_test.v rename to vlib/v/tests/generics/generics_method_on_alias_struct_receiver_test.v diff --git a/vlib/v/tests/generics_method_on_embed_struct_test.v b/vlib/v/tests/generics/generics_method_on_embed_struct_test.v similarity index 100% rename from vlib/v/tests/generics_method_on_embed_struct_test.v rename to vlib/v/tests/generics/generics_method_on_embed_struct_test.v diff --git a/vlib/v/tests/generics_method_on_generic_structs_test.v b/vlib/v/tests/generics/generics_method_on_generic_structs_test.v similarity index 100% rename from vlib/v/tests/generics_method_on_generic_structs_test.v rename to vlib/v/tests/generics/generics_method_on_generic_structs_test.v diff --git a/vlib/v/tests/generics_method_on_nested_struct2_test.v b/vlib/v/tests/generics/generics_method_on_nested_struct2_test.v similarity index 100% rename from vlib/v/tests/generics_method_on_nested_struct2_test.v rename to vlib/v/tests/generics/generics_method_on_nested_struct2_test.v diff --git a/vlib/v/tests/generics_method_on_nested_struct_test.v b/vlib/v/tests/generics/generics_method_on_nested_struct_test.v similarity index 100% rename from vlib/v/tests/generics_method_on_nested_struct_test.v rename to vlib/v/tests/generics/generics_method_on_nested_struct_test.v diff --git a/vlib/v/tests/generics_method_on_receiver_aliases_types_test.v b/vlib/v/tests/generics/generics_method_on_receiver_aliases_types_test.v similarity index 100% rename from vlib/v/tests/generics_method_on_receiver_aliases_types_test.v rename to vlib/v/tests/generics/generics_method_on_receiver_aliases_types_test.v diff --git a/vlib/v/tests/generics_method_on_receiver_types_test.v b/vlib/v/tests/generics/generics_method_on_receiver_types_test.v similarity index 100% rename from vlib/v/tests/generics_method_on_receiver_types_test.v rename to vlib/v/tests/generics/generics_method_on_receiver_types_test.v diff --git a/vlib/v/tests/generics_method_ordering_test.v b/vlib/v/tests/generics/generics_method_ordering_test.v similarity index 100% rename from vlib/v/tests/generics_method_ordering_test.v rename to vlib/v/tests/generics/generics_method_ordering_test.v diff --git a/vlib/v/tests/generics_method_returning_option_test.v b/vlib/v/tests/generics/generics_method_returning_option_test.v similarity index 100% rename from vlib/v/tests/generics_method_returning_option_test.v rename to vlib/v/tests/generics/generics_method_returning_option_test.v diff --git a/vlib/v/tests/generics_method_str_overload_test.v b/vlib/v/tests/generics/generics_method_str_overload_test.v similarity index 100% rename from vlib/v/tests/generics_method_str_overload_test.v rename to vlib/v/tests/generics/generics_method_str_overload_test.v diff --git a/vlib/v/tests/generics_method_test.v b/vlib/v/tests/generics/generics_method_test.v similarity index 100% rename from vlib/v/tests/generics_method_test.v rename to vlib/v/tests/generics/generics_method_test.v diff --git a/vlib/v/tests/generics_method_variable_test.v b/vlib/v/tests/generics/generics_method_variable_test.v similarity index 100% rename from vlib/v/tests/generics_method_variable_test.v rename to vlib/v/tests/generics/generics_method_variable_test.v diff --git a/vlib/v/tests/generics_method_with_diff_generic_names_test.v b/vlib/v/tests/generics/generics_method_with_diff_generic_names_test.v similarity index 100% rename from vlib/v/tests/generics_method_with_diff_generic_names_test.v rename to vlib/v/tests/generics/generics_method_with_diff_generic_names_test.v diff --git a/vlib/v/tests/generics_method_with_embedded_structs_test.v b/vlib/v/tests/generics/generics_method_with_embedded_structs_test.v similarity index 100% rename from vlib/v/tests/generics_method_with_embedded_structs_test.v rename to vlib/v/tests/generics/generics_method_with_embedded_structs_test.v diff --git a/vlib/v/tests/generics_method_with_generic_anon_fn_argument_test.v b/vlib/v/tests/generics/generics_method_with_generic_anon_fn_argument_test.v similarity index 100% rename from vlib/v/tests/generics_method_with_generic_anon_fn_argument_test.v rename to vlib/v/tests/generics/generics_method_with_generic_anon_fn_argument_test.v diff --git a/vlib/v/tests/generics_method_with_multi_types_test.v b/vlib/v/tests/generics/generics_method_with_multi_types_test.v similarity index 100% rename from vlib/v/tests/generics_method_with_multi_types_test.v rename to vlib/v/tests/generics/generics_method_with_multi_types_test.v diff --git a/vlib/v/tests/generics_method_with_nested_generic_method_test.v b/vlib/v/tests/generics/generics_method_with_nested_generic_method_test.v similarity index 100% rename from vlib/v/tests/generics_method_with_nested_generic_method_test.v rename to vlib/v/tests/generics/generics_method_with_nested_generic_method_test.v diff --git a/vlib/v/tests/generics_method_with_sumtype_args_test.v b/vlib/v/tests/generics/generics_method_with_sumtype_args_test.v similarity index 100% rename from vlib/v/tests/generics_method_with_sumtype_args_test.v rename to vlib/v/tests/generics/generics_method_with_sumtype_args_test.v diff --git a/vlib/v/tests/generics_multi_array_in_test.v b/vlib/v/tests/generics/generics_multi_array_in_test.v similarity index 100% rename from vlib/v/tests/generics_multi_array_in_test.v rename to vlib/v/tests/generics/generics_multi_array_in_test.v diff --git a/vlib/v/tests/generics_multi_type_comptime_call_test.v b/vlib/v/tests/generics/generics_multi_type_comptime_call_test.v similarity index 100% rename from vlib/v/tests/generics_multi_type_comptime_call_test.v rename to vlib/v/tests/generics/generics_multi_type_comptime_call_test.v diff --git a/vlib/v/tests/generics_multi_types_struct_init_test.v b/vlib/v/tests/generics/generics_multi_types_struct_init_test.v similarity index 100% rename from vlib/v/tests/generics_multi_types_struct_init_test.v rename to vlib/v/tests/generics/generics_multi_types_struct_init_test.v diff --git a/vlib/v/tests/generics_nested_struct_init_test.v b/vlib/v/tests/generics/generics_nested_struct_init_test.v similarity index 100% rename from vlib/v/tests/generics_nested_struct_init_test.v rename to vlib/v/tests/generics/generics_nested_struct_init_test.v diff --git a/vlib/v/tests/generics_return_fixed_array_test.v b/vlib/v/tests/generics/generics_return_fixed_array_test.v similarity index 100% rename from vlib/v/tests/generics_return_fixed_array_test.v rename to vlib/v/tests/generics/generics_return_fixed_array_test.v diff --git a/vlib/v/tests/generics_return_generics_struct_test.v b/vlib/v/tests/generics/generics_return_generics_struct_test.v similarity index 100% rename from vlib/v/tests/generics_return_generics_struct_test.v rename to vlib/v/tests/generics/generics_return_generics_struct_test.v diff --git a/vlib/v/tests/generics_return_inconsistent_types_generics_struct_test.v b/vlib/v/tests/generics/generics_return_inconsistent_types_generics_struct_test.v similarity index 100% rename from vlib/v/tests/generics_return_inconsistent_types_generics_struct_test.v rename to vlib/v/tests/generics/generics_return_inconsistent_types_generics_struct_test.v diff --git a/vlib/v/tests/generics_return_multi_array_test.v b/vlib/v/tests/generics/generics_return_multi_array_test.v similarity index 100% rename from vlib/v/tests/generics_return_multi_array_test.v rename to vlib/v/tests/generics/generics_return_multi_array_test.v diff --git a/vlib/v/tests/generics_return_multiple_generics_struct_test.v b/vlib/v/tests/generics/generics_return_multiple_generics_struct_test.v similarity index 100% rename from vlib/v/tests/generics_return_multiple_generics_struct_test.v rename to vlib/v/tests/generics/generics_return_multiple_generics_struct_test.v diff --git a/vlib/v/tests/generics_return_recursive_generics_struct_test.v b/vlib/v/tests/generics/generics_return_recursive_generics_struct_test.v similarity index 100% rename from vlib/v/tests/generics_return_recursive_generics_struct_test.v rename to vlib/v/tests/generics/generics_return_recursive_generics_struct_test.v diff --git a/vlib/v/tests/generics_return_reference_generics_struct_test.v b/vlib/v/tests/generics/generics_return_reference_generics_struct_test.v similarity index 100% rename from vlib/v/tests/generics_return_reference_generics_struct_test.v rename to vlib/v/tests/generics/generics_return_reference_generics_struct_test.v diff --git a/vlib/v/tests/generics_stack_of_sumtype_push_test.v b/vlib/v/tests/generics/generics_stack_of_sumtype_push_test.v similarity index 100% rename from vlib/v/tests/generics_stack_of_sumtype_push_test.v rename to vlib/v/tests/generics/generics_stack_of_sumtype_push_test.v diff --git a/vlib/v/tests/generics_struct_anon_fn_fields_test.v b/vlib/v/tests/generics/generics_struct_anon_fn_fields_test.v similarity index 100% rename from vlib/v/tests/generics_struct_anon_fn_fields_test.v rename to vlib/v/tests/generics/generics_struct_anon_fn_fields_test.v diff --git a/vlib/v/tests/generics_struct_anon_fn_type_test.v b/vlib/v/tests/generics/generics_struct_anon_fn_type_test.v similarity index 100% rename from vlib/v/tests/generics_struct_anon_fn_type_test.v rename to vlib/v/tests/generics/generics_struct_anon_fn_type_test.v diff --git a/vlib/v/tests/generics_struct_field_with_default_fn_type_test.v b/vlib/v/tests/generics/generics_struct_field_with_default_fn_type_test.v similarity index 100% rename from vlib/v/tests/generics_struct_field_with_default_fn_type_test.v rename to vlib/v/tests/generics/generics_struct_field_with_default_fn_type_test.v diff --git a/vlib/v/tests/generics_struct_field_with_default_struct_value_test.v b/vlib/v/tests/generics/generics_struct_field_with_default_struct_value_test.v similarity index 100% rename from vlib/v/tests/generics_struct_field_with_default_struct_value_test.v rename to vlib/v/tests/generics/generics_struct_field_with_default_struct_value_test.v diff --git a/vlib/v/tests/generics_struct_field_with_generics_struct_elements_test.v b/vlib/v/tests/generics/generics_struct_field_with_generics_struct_elements_test.v similarity index 100% rename from vlib/v/tests/generics_struct_field_with_generics_struct_elements_test.v rename to vlib/v/tests/generics/generics_struct_field_with_generics_struct_elements_test.v diff --git a/vlib/v/tests/generics_struct_free_test.v b/vlib/v/tests/generics/generics_struct_free_test.v similarity index 100% rename from vlib/v/tests/generics_struct_free_test.v rename to vlib/v/tests/generics/generics_struct_free_test.v diff --git a/vlib/v/tests/generics_struct_init_in_generic_fn_test.v b/vlib/v/tests/generics/generics_struct_init_in_generic_fn_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_in_generic_fn_test.v rename to vlib/v/tests/generics/generics_struct_init_in_generic_fn_test.v diff --git a/vlib/v/tests/generics_struct_init_test.v b/vlib/v/tests/generics/generics_struct_init_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_test.v rename to vlib/v/tests/generics/generics_struct_init_test.v diff --git a/vlib/v/tests/generics_struct_init_with_generic_struct_items_test.v b/vlib/v/tests/generics/generics_struct_init_with_generic_struct_items_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_generic_struct_items_test.v rename to vlib/v/tests/generics/generics_struct_init_with_generic_struct_items_test.v diff --git a/vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_1_test.v b/vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_1_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_1_test.v rename to vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_1_test.v diff --git a/vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_2_test.v b/vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_2_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_2_test.v rename to vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_2_test.v diff --git a/vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_3_test.v b/vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_3_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_3_test.v rename to vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_3_test.v diff --git a/vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_4_test.v b/vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_4_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_4_test.v rename to vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_4_test.v diff --git a/vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_5_test.v b/vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_5_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_5_test.v rename to vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_5_test.v diff --git a/vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_6_test.v b/vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_6_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_6_test.v rename to vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_6_test.v diff --git a/vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_7_test.v b/vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_7_test.v similarity index 100% rename from vlib/v/tests/generics_struct_init_with_inconsistent_generic_types_7_test.v rename to vlib/v/tests/generics/generics_struct_init_with_inconsistent_generic_types_7_test.v diff --git a/vlib/v/tests/generics_struct_inst_method_call_test.v b/vlib/v/tests/generics/generics_struct_inst_method_call_test.v similarity index 100% rename from vlib/v/tests/generics_struct_inst_method_call_test.v rename to vlib/v/tests/generics/generics_struct_inst_method_call_test.v diff --git a/vlib/v/tests/generics_struct_method_params_is_generics_struct_and_not_called_test.v b/vlib/v/tests/generics/generics_struct_method_params_is_generics_struct_and_not_called_test.v similarity index 100% rename from vlib/v/tests/generics_struct_method_params_is_generics_struct_and_not_called_test.v rename to vlib/v/tests/generics/generics_struct_method_params_is_generics_struct_and_not_called_test.v diff --git a/vlib/v/tests/generics_struct_no_key_init_test.v b/vlib/v/tests/generics/generics_struct_no_key_init_test.v similarity index 100% rename from vlib/v/tests/generics_struct_no_key_init_test.v rename to vlib/v/tests/generics/generics_struct_no_key_init_test.v diff --git a/vlib/v/tests/generics_struct_parent_has_str_to_string_test.v b/vlib/v/tests/generics/generics_struct_parent_has_str_to_string_test.v similarity index 100% rename from vlib/v/tests/generics_struct_parent_has_str_to_string_test.v rename to vlib/v/tests/generics/generics_struct_parent_has_str_to_string_test.v diff --git a/vlib/v/tests/generics_struct_to_string_test.v b/vlib/v/tests/generics/generics_struct_to_string_test.v similarity index 100% rename from vlib/v/tests/generics_struct_to_string_test.v rename to vlib/v/tests/generics/generics_struct_to_string_test.v diff --git a/vlib/v/tests/generics_struct_types_infer_test.v b/vlib/v/tests/generics/generics_struct_types_infer_test.v similarity index 100% rename from vlib/v/tests/generics_struct_types_infer_test.v rename to vlib/v/tests/generics/generics_struct_types_infer_test.v diff --git a/vlib/v/tests/generics_struct_with_array_test.v b/vlib/v/tests/generics/generics_struct_with_array_test.v similarity index 100% rename from vlib/v/tests/generics_struct_with_array_test.v rename to vlib/v/tests/generics/generics_struct_with_array_test.v diff --git a/vlib/v/tests/generics_struct_with_inconsistent_generic_types_1_test.v b/vlib/v/tests/generics/generics_struct_with_inconsistent_generic_types_1_test.v similarity index 100% rename from vlib/v/tests/generics_struct_with_inconsistent_generic_types_1_test.v rename to vlib/v/tests/generics/generics_struct_with_inconsistent_generic_types_1_test.v diff --git a/vlib/v/tests/generics_struct_with_non_generic_interface_test.v b/vlib/v/tests/generics/generics_struct_with_non_generic_interface_test.v similarity index 100% rename from vlib/v/tests/generics_struct_with_non_generic_interface_test.v rename to vlib/v/tests/generics/generics_struct_with_non_generic_interface_test.v diff --git a/vlib/v/tests/generics_struct_with_option_fn_test.v b/vlib/v/tests/generics/generics_struct_with_option_fn_test.v similarity index 100% rename from vlib/v/tests/generics_struct_with_option_fn_test.v rename to vlib/v/tests/generics/generics_struct_with_option_fn_test.v diff --git a/vlib/v/tests/generics_test.v b/vlib/v/tests/generics/generics_test.v similarity index 100% rename from vlib/v/tests/generics_test.v rename to vlib/v/tests/generics/generics_test.v diff --git a/vlib/v/tests/generics_union_dump_test.v b/vlib/v/tests/generics/generics_union_dump_test.v similarity index 100% rename from vlib/v/tests/generics_union_dump_test.v rename to vlib/v/tests/generics/generics_union_dump_test.v diff --git a/vlib/v/tests/generics_with_anon_generics_fn_test.v b/vlib/v/tests/generics/generics_with_anon_generics_fn_test.v similarity index 100% rename from vlib/v/tests/generics_with_anon_generics_fn_test.v rename to vlib/v/tests/generics/generics_with_anon_generics_fn_test.v diff --git a/vlib/v/tests/generics_with_assign_nested_generics_call_test.v b/vlib/v/tests/generics/generics_with_assign_nested_generics_call_test.v similarity index 100% rename from vlib/v/tests/generics_with_assign_nested_generics_call_test.v rename to vlib/v/tests/generics/generics_with_assign_nested_generics_call_test.v diff --git a/vlib/v/tests/generics_with_cascaded_multiple_nested_generics_fn_test.v b/vlib/v/tests/generics/generics_with_cascaded_multiple_nested_generics_fn_test.v similarity index 100% rename from vlib/v/tests/generics_with_cascaded_multiple_nested_generics_fn_test.v rename to vlib/v/tests/generics/generics_with_cascaded_multiple_nested_generics_fn_test.v diff --git a/vlib/v/tests/generics_with_complex_nested_generics_type_test.v b/vlib/v/tests/generics/generics_with_complex_nested_generics_type_test.v similarity index 100% rename from vlib/v/tests/generics_with_complex_nested_generics_type_test.v rename to vlib/v/tests/generics/generics_with_complex_nested_generics_type_test.v diff --git a/vlib/v/tests/generics_with_embed_generics_method_call_test.v b/vlib/v/tests/generics/generics_with_embed_generics_method_call_test.v similarity index 100% rename from vlib/v/tests/generics_with_embed_generics_method_call_test.v rename to vlib/v/tests/generics/generics_with_embed_generics_method_call_test.v diff --git a/vlib/v/tests/generics_with_embed_generics_structs_test.v b/vlib/v/tests/generics/generics_with_embed_generics_structs_test.v similarity index 100% rename from vlib/v/tests/generics_with_embed_generics_structs_test.v rename to vlib/v/tests/generics/generics_with_embed_generics_structs_test.v diff --git a/vlib/v/tests/generics_with_embed_generics_test.v b/vlib/v/tests/generics/generics_with_embed_generics_test.v similarity index 100% rename from vlib/v/tests/generics_with_embed_generics_test.v rename to vlib/v/tests/generics/generics_with_embed_generics_test.v diff --git a/vlib/v/tests/generics_with_fixed_array_type_test.v b/vlib/v/tests/generics/generics_with_fixed_array_type_test.v similarity index 100% rename from vlib/v/tests/generics_with_fixed_array_type_test.v rename to vlib/v/tests/generics/generics_with_fixed_array_type_test.v diff --git a/vlib/v/tests/generics_with_generics_fn_return_generics_fn_type_test.v b/vlib/v/tests/generics/generics_with_generics_fn_return_generics_fn_type_test.v similarity index 100% rename from vlib/v/tests/generics_with_generics_fn_return_generics_fn_type_test.v rename to vlib/v/tests/generics/generics_with_generics_fn_return_generics_fn_type_test.v diff --git a/vlib/v/tests/generics_with_generics_fn_return_generics_map_type_test.v b/vlib/v/tests/generics/generics_with_generics_fn_return_generics_map_type_test.v similarity index 100% rename from vlib/v/tests/generics_with_generics_fn_return_generics_map_type_test.v rename to vlib/v/tests/generics/generics_with_generics_fn_return_generics_map_type_test.v diff --git a/vlib/v/tests/generics_with_generics_fn_type_parameter_test.v b/vlib/v/tests/generics/generics_with_generics_fn_type_parameter_test.v similarity index 100% rename from vlib/v/tests/generics_with_generics_fn_type_parameter_test.v rename to vlib/v/tests/generics/generics_with_generics_fn_type_parameter_test.v diff --git a/vlib/v/tests/generics_with_generics_struct_init_test.v b/vlib/v/tests/generics/generics_with_generics_struct_init_test.v similarity index 100% rename from vlib/v/tests/generics_with_generics_struct_init_test.v rename to vlib/v/tests/generics/generics_with_generics_struct_init_test.v diff --git a/vlib/v/tests/generics_with_generics_struct_receiver_test.v b/vlib/v/tests/generics/generics_with_generics_struct_receiver_test.v similarity index 100% rename from vlib/v/tests/generics_with_generics_struct_receiver_test.v rename to vlib/v/tests/generics/generics_with_generics_struct_receiver_test.v diff --git a/vlib/v/tests/generics_with_multi_generics_struct_types_test.v b/vlib/v/tests/generics/generics_with_multi_generics_struct_types_test.v similarity index 100% rename from vlib/v/tests/generics_with_multi_generics_struct_types_test.v rename to vlib/v/tests/generics/generics_with_multi_generics_struct_types_test.v diff --git a/vlib/v/tests/generics_with_multi_nested_generic_method_call_ref_arg_test.v b/vlib/v/tests/generics/generics_with_multi_nested_generic_method_call_ref_arg_test.v similarity index 100% rename from vlib/v/tests/generics_with_multi_nested_generic_method_call_ref_arg_test.v rename to vlib/v/tests/generics/generics_with_multi_nested_generic_method_call_ref_arg_test.v diff --git a/vlib/v/tests/generics_with_multi_nested_generic_method_call_test.v b/vlib/v/tests/generics/generics_with_multi_nested_generic_method_call_test.v similarity index 100% rename from vlib/v/tests/generics_with_multi_nested_generic_method_call_test.v rename to vlib/v/tests/generics/generics_with_multi_nested_generic_method_call_test.v diff --git a/vlib/v/tests/generics_with_multiple_generics_struct_receiver_test.v b/vlib/v/tests/generics/generics_with_multiple_generics_struct_receiver_test.v similarity index 100% rename from vlib/v/tests/generics_with_multiple_generics_struct_receiver_test.v rename to vlib/v/tests/generics/generics_with_multiple_generics_struct_receiver_test.v diff --git a/vlib/v/tests/generics_with_nested_external_generics_fn_test.v b/vlib/v/tests/generics/generics_with_nested_external_generics_fn_test.v similarity index 100% rename from vlib/v/tests/generics_with_nested_external_generics_fn_test.v rename to vlib/v/tests/generics/generics_with_nested_external_generics_fn_test.v diff --git a/vlib/v/tests/generics_with_nested_generic_method_call_test.v b/vlib/v/tests/generics/generics_with_nested_generic_method_call_test.v similarity index 100% rename from vlib/v/tests/generics_with_nested_generic_method_call_test.v rename to vlib/v/tests/generics/generics_with_nested_generic_method_call_test.v diff --git a/vlib/v/tests/generics_with_nested_generic_struct_init_test.v b/vlib/v/tests/generics/generics_with_nested_generic_struct_init_test.v similarity index 100% rename from vlib/v/tests/generics_with_nested_generic_struct_init_test.v rename to vlib/v/tests/generics/generics_with_nested_generic_struct_init_test.v diff --git a/vlib/v/tests/generics_with_nested_generic_type_parameter_test.v b/vlib/v/tests/generics/generics_with_nested_generic_type_parameter_test.v similarity index 100% rename from vlib/v/tests/generics_with_nested_generic_type_parameter_test.v rename to vlib/v/tests/generics/generics_with_nested_generic_type_parameter_test.v diff --git a/vlib/v/tests/generics_with_nested_generics_fn_infer_call_test.v b/vlib/v/tests/generics/generics_with_nested_generics_fn_infer_call_test.v similarity index 100% rename from vlib/v/tests/generics_with_nested_generics_fn_infer_call_test.v rename to vlib/v/tests/generics/generics_with_nested_generics_fn_infer_call_test.v diff --git a/vlib/v/tests/generics_with_nested_generics_fn_inst_call_test.v b/vlib/v/tests/generics/generics_with_nested_generics_fn_inst_call_test.v similarity index 100% rename from vlib/v/tests/generics_with_nested_generics_fn_inst_call_test.v rename to vlib/v/tests/generics/generics_with_nested_generics_fn_inst_call_test.v diff --git a/vlib/v/tests/generics_with_nested_generics_fn_test.v b/vlib/v/tests/generics/generics_with_nested_generics_fn_test.v similarity index 100% rename from vlib/v/tests/generics_with_nested_generics_fn_test.v rename to vlib/v/tests/generics/generics_with_nested_generics_fn_test.v diff --git a/vlib/v/tests/generics_with_pointer_index_test.v b/vlib/v/tests/generics/generics_with_pointer_index_test.v similarity index 100% rename from vlib/v/tests/generics_with_pointer_index_test.v rename to vlib/v/tests/generics/generics_with_pointer_index_test.v diff --git a/vlib/v/tests/generics_with_recursive_generics_fn_test.v b/vlib/v/tests/generics/generics_with_recursive_generics_fn_test.v similarity index 100% rename from vlib/v/tests/generics_with_recursive_generics_fn_test.v rename to vlib/v/tests/generics/generics_with_recursive_generics_fn_test.v diff --git a/vlib/v/tests/generics_with_recursive_generics_struct_test.v b/vlib/v/tests/generics/generics_with_recursive_generics_struct_test.v similarity index 100% rename from vlib/v/tests/generics_with_recursive_generics_struct_test.v rename to vlib/v/tests/generics/generics_with_recursive_generics_struct_test.v diff --git a/vlib/v/tests/generics_with_reference_generic_args_test.v b/vlib/v/tests/generics/generics_with_reference_generic_args_test.v similarity index 100% rename from vlib/v/tests/generics_with_reference_generic_args_test.v rename to vlib/v/tests/generics/generics_with_reference_generic_args_test.v diff --git a/vlib/v/tests/generics_with_variadic_generic_args_test.v b/vlib/v/tests/generics/generics_with_variadic_generic_args_test.v similarity index 100% rename from vlib/v/tests/generics_with_variadic_generic_args_test.v rename to vlib/v/tests/generics/generics_with_variadic_generic_args_test.v diff --git a/vlib/v/tests/infer_generic_array_type_in_nested_call_test.v b/vlib/v/tests/generics/infer_generic_array_type_in_nested_call_test.v similarity index 100% rename from vlib/v/tests/infer_generic_array_type_in_nested_call_test.v rename to vlib/v/tests/generics/infer_generic_array_type_in_nested_call_test.v diff --git a/vlib/v/tests/modules/ecs/ecs.v b/vlib/v/tests/generics/modules/ecs/ecs.v similarity index 100% rename from vlib/v/tests/modules/ecs/ecs.v rename to vlib/v/tests/generics/modules/ecs/ecs.v diff --git a/vlib/v/tests/modules/simplemodule/importing_test.v b/vlib/v/tests/generics/modules/simplemodule/importing_test.v similarity index 100% rename from vlib/v/tests/modules/simplemodule/importing_test.v rename to vlib/v/tests/generics/modules/simplemodule/importing_test.v diff --git a/vlib/v/tests/modules/simplemodule/simplemodule.v b/vlib/v/tests/generics/modules/simplemodule/simplemodule.v similarity index 100% rename from vlib/v/tests/modules/simplemodule/simplemodule.v rename to vlib/v/tests/generics/modules/simplemodule/simplemodule.v diff --git a/vlib/v/tests/multiple_generic_resolve_test.v b/vlib/v/tests/generics/multiple_generic_resolve_test.v similarity index 100% rename from vlib/v/tests/multiple_generic_resolve_test.v rename to vlib/v/tests/generics/multiple_generic_resolve_test.v diff --git a/vlib/v/tests/append_struct_to_interface_array_test.v b/vlib/v/tests/interfaces/append_struct_to_interface_array_test.v similarity index 100% rename from vlib/v/tests/append_struct_to_interface_array_test.v rename to vlib/v/tests/interfaces/append_struct_to_interface_array_test.v diff --git a/vlib/v/tests/appending_to_mut_array_in_fn_param_test.v b/vlib/v/tests/interfaces/appending_to_mut_array_in_fn_param_test.v similarity index 100% rename from vlib/v/tests/appending_to_mut_array_in_fn_param_test.v rename to vlib/v/tests/interfaces/appending_to_mut_array_in_fn_param_test.v diff --git a/vlib/v/tests/big_array_allocation_test.v b/vlib/v/tests/interfaces/big_array_allocation_test.v similarity index 100% rename from vlib/v/tests/big_array_allocation_test.v rename to vlib/v/tests/interfaces/big_array_allocation_test.v diff --git a/vlib/v/tests/empty_interface_is_another_empty_interface_check_test.v b/vlib/v/tests/interfaces/empty_interface_is_another_empty_interface_check_test.v similarity index 100% rename from vlib/v/tests/empty_interface_is_another_empty_interface_check_test.v rename to vlib/v/tests/interfaces/empty_interface_is_another_empty_interface_check_test.v diff --git a/vlib/v/tests/empty_interface_test.v b/vlib/v/tests/interfaces/empty_interface_test.v similarity index 100% rename from vlib/v/tests/empty_interface_test.v rename to vlib/v/tests/interfaces/empty_interface_test.v diff --git a/vlib/v/tests/interface_and_embedded_struct_build_test.v b/vlib/v/tests/interfaces/interface_and_embedded_struct_build_test.v similarity index 100% rename from vlib/v/tests/interface_and_embedded_struct_build_test.v rename to vlib/v/tests/interfaces/interface_and_embedded_struct_build_test.v diff --git a/vlib/v/tests/iface_arg_test.v b/vlib/v/tests/interfaces/interface_arg_test.v similarity index 100% rename from vlib/v/tests/iface_arg_test.v rename to vlib/v/tests/interfaces/interface_arg_test.v diff --git a/vlib/v/tests/interface_arr_for_mut_iter_index_test.v b/vlib/v/tests/interfaces/interface_arr_for_mut_iter_index_test.v similarity index 100% rename from vlib/v/tests/interface_arr_for_mut_iter_index_test.v rename to vlib/v/tests/interfaces/interface_arr_for_mut_iter_index_test.v diff --git a/vlib/v/tests/interface_array_methods_test.v b/vlib/v/tests/interfaces/interface_array_methods_test.v similarity index 100% rename from vlib/v/tests/interface_array_methods_test.v rename to vlib/v/tests/interfaces/interface_array_methods_test.v diff --git a/vlib/v/tests/interface_auto_str_gen_test.v b/vlib/v/tests/interfaces/interface_auto_str_gen_test.v similarity index 100% rename from vlib/v/tests/interface_auto_str_gen_test.v rename to vlib/v/tests/interfaces/interface_auto_str_gen_test.v diff --git a/vlib/v/tests/interface_auto_str_test.v b/vlib/v/tests/interfaces/interface_auto_str_test.v similarity index 100% rename from vlib/v/tests/interface_auto_str_test.v rename to vlib/v/tests/interfaces/interface_auto_str_test.v diff --git a/vlib/v/tests/interface_closure_test.v b/vlib/v/tests/interfaces/interface_closure_test.v similarity index 100% rename from vlib/v/tests/interface_closure_test.v rename to vlib/v/tests/interfaces/interface_closure_test.v diff --git a/vlib/v/tests/interface_edge_cases/array_of_interfaces_test.v b/vlib/v/tests/interfaces/interface_edge_cases/array_of_interfaces_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/array_of_interfaces_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/array_of_interfaces_test.v diff --git a/vlib/v/tests/interface_edge_cases/array_of_interfaces_with_utility_fn_test.v b/vlib/v/tests/interfaces/interface_edge_cases/array_of_interfaces_with_utility_fn_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/array_of_interfaces_with_utility_fn_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/array_of_interfaces_with_utility_fn_test.v diff --git a/vlib/v/tests/interface_edge_cases/assign_to_interface_field_test.v b/vlib/v/tests/interfaces/interface_edge_cases/assign_to_interface_field_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/assign_to_interface_field_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/assign_to_interface_field_test.v diff --git a/vlib/v/tests/interface_edge_cases/empty_interface_1_test.v b/vlib/v/tests/interfaces/interface_edge_cases/empty_interface_1_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/empty_interface_1_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/empty_interface_1_test.v diff --git a/vlib/v/tests/interface_edge_cases/empty_interface_println_test.v b/vlib/v/tests/interfaces/interface_edge_cases/empty_interface_println_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/empty_interface_println_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/empty_interface_println_test.v diff --git a/vlib/v/tests/interface_edge_cases/fn_returning_voidptr_casted_as_interface_test.v b/vlib/v/tests/interfaces/interface_edge_cases/fn_returning_voidptr_casted_as_interface_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/fn_returning_voidptr_casted_as_interface_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/fn_returning_voidptr_casted_as_interface_test.v diff --git a/vlib/v/tests/interface_edge_cases/i1_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i1_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i1_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i1_test.v diff --git a/vlib/v/tests/interface_edge_cases/i2_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i2_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i2_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i2_test.v diff --git a/vlib/v/tests/interface_edge_cases/i3_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i3_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i3_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i3_test.v diff --git a/vlib/v/tests/interface_edge_cases/i4_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i4_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i4_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i4_test.v diff --git a/vlib/v/tests/interface_edge_cases/i5_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i5_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i5_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i5_test.v diff --git a/vlib/v/tests/interface_edge_cases/i6_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i6_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i6_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i6_test.v diff --git a/vlib/v/tests/interface_edge_cases/i7_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i7_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i7_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i7_test.v diff --git a/vlib/v/tests/interface_edge_cases/i8_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i8_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i8_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i8_test.v diff --git a/vlib/v/tests/interface_edge_cases/i9_test.v b/vlib/v/tests/interfaces/interface_edge_cases/i9_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/i9_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/i9_test.v diff --git a/vlib/v/tests/interface_edge_cases/interface_many_named_test.v b/vlib/v/tests/interfaces/interface_edge_cases/interface_many_named_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/interface_many_named_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/interface_many_named_test.v diff --git a/vlib/v/tests/interface_edge_cases/pass_voidptr_as_interface_reference_test.v b/vlib/v/tests/interfaces/interface_edge_cases/pass_voidptr_as_interface_reference_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/pass_voidptr_as_interface_reference_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/pass_voidptr_as_interface_reference_test.v diff --git a/vlib/v/tests/interface_edge_cases/voidptr_casted_as_an_interface_test.v b/vlib/v/tests/interfaces/interface_edge_cases/voidptr_casted_as_an_interface_test.v similarity index 100% rename from vlib/v/tests/interface_edge_cases/voidptr_casted_as_an_interface_test.v rename to vlib/v/tests/interfaces/interface_edge_cases/voidptr_casted_as_an_interface_test.v diff --git a/vlib/v/tests/interface_embedding_call_test.v b/vlib/v/tests/interfaces/interface_embedding_call_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_call_test.v rename to vlib/v/tests/interfaces/interface_embedding_call_test.v diff --git a/vlib/v/tests/interface_embedding_complex_test.v b/vlib/v/tests/interfaces/interface_embedding_complex_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_complex_test.v rename to vlib/v/tests/interfaces/interface_embedding_complex_test.v diff --git a/vlib/v/tests/interface_embedding_deep_nesting_test.v b/vlib/v/tests/interfaces/interface_embedding_deep_nesting_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_deep_nesting_test.v rename to vlib/v/tests/interfaces/interface_embedding_deep_nesting_test.v diff --git a/vlib/v/tests/interface_embedding_method_call_test.v b/vlib/v/tests/interfaces/interface_embedding_method_call_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_method_call_test.v rename to vlib/v/tests/interfaces/interface_embedding_method_call_test.v diff --git a/vlib/v/tests/interface_embedding_recursive_test.v b/vlib/v/tests/interfaces/interface_embedding_recursive_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_recursive_test.v rename to vlib/v/tests/interfaces/interface_embedding_recursive_test.v diff --git a/vlib/v/tests/interface_embedding_smartcast_test.v b/vlib/v/tests/interfaces/interface_embedding_smartcast_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_smartcast_test.v rename to vlib/v/tests/interfaces/interface_embedding_smartcast_test.v diff --git a/vlib/v/tests/interface_embedding_test.v b/vlib/v/tests/interfaces/interface_embedding_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_test.v rename to vlib/v/tests/interfaces/interface_embedding_test.v diff --git a/vlib/v/tests/interface_embedding_with_interface_para_test.v b/vlib/v/tests/interfaces/interface_embedding_with_interface_para_test.v similarity index 100% rename from vlib/v/tests/interface_embedding_with_interface_para_test.v rename to vlib/v/tests/interfaces/interface_embedding_with_interface_para_test.v diff --git a/vlib/v/tests/interface_eq_methods_with_option_and_ref_test.v b/vlib/v/tests/interfaces/interface_eq_methods_with_option_and_ref_test.v similarity index 100% rename from vlib/v/tests/interface_eq_methods_with_option_and_ref_test.v rename to vlib/v/tests/interfaces/interface_eq_methods_with_option_and_ref_test.v diff --git a/vlib/v/tests/interface_equality_test.v b/vlib/v/tests/interfaces/interface_equality_test.v similarity index 100% rename from vlib/v/tests/interface_equality_test.v rename to vlib/v/tests/interfaces/interface_equality_test.v diff --git a/vlib/v/tests/interface_fields_test.v b/vlib/v/tests/interfaces/interface_fields_test.v similarity index 100% rename from vlib/v/tests/interface_fields_test.v rename to vlib/v/tests/interfaces/interface_fields_test.v diff --git a/vlib/v/tests/interface_fields_typearray_test.v b/vlib/v/tests/interfaces/interface_fields_typearray_test.v similarity index 100% rename from vlib/v/tests/interface_fields_typearray_test.v rename to vlib/v/tests/interfaces/interface_fields_typearray_test.v diff --git a/vlib/v/tests/interface_fn_return_array_of_interface_test.v b/vlib/v/tests/interfaces/interface_fn_return_array_of_interface_test.v similarity index 100% rename from vlib/v/tests/interface_fn_return_array_of_interface_test.v rename to vlib/v/tests/interfaces/interface_fn_return_array_of_interface_test.v diff --git a/vlib/v/tests/interface_fn_return_with_struct_init_test.v b/vlib/v/tests/interfaces/interface_fn_return_with_struct_init_test.v similarity index 100% rename from vlib/v/tests/interface_fn_return_with_struct_init_test.v rename to vlib/v/tests/interfaces/interface_fn_return_with_struct_init_test.v diff --git a/vlib/v/tests/interface_method_using_struct_embed_test.v b/vlib/v/tests/interfaces/interface_method_using_struct_embed_test.v similarity index 100% rename from vlib/v/tests/interface_method_using_struct_embed_test.v rename to vlib/v/tests/interfaces/interface_method_using_struct_embed_test.v diff --git a/vlib/v/tests/interface_method_with_struct_embed_test.v b/vlib/v/tests/interfaces/interface_method_with_struct_embed_test.v similarity index 100% rename from vlib/v/tests/interface_method_with_struct_embed_test.v rename to vlib/v/tests/interfaces/interface_method_with_struct_embed_test.v diff --git a/vlib/v/tests/interface_multi_return_test.v b/vlib/v/tests/interfaces/interface_multi_return_test.v similarity index 100% rename from vlib/v/tests/interface_multi_return_test.v rename to vlib/v/tests/interfaces/interface_multi_return_test.v diff --git a/vlib/v/tests/interface_nested_field_test.v b/vlib/v/tests/interfaces/interface_nested_field_test.v similarity index 100% rename from vlib/v/tests/interface_nested_field_test.v rename to vlib/v/tests/interfaces/interface_nested_field_test.v diff --git a/vlib/v/tests/interface_only_decl_with_option_test.v b/vlib/v/tests/interfaces/interface_only_decl_with_option_test.v similarity index 100% rename from vlib/v/tests/interface_only_decl_with_option_test.v rename to vlib/v/tests/interfaces/interface_only_decl_with_option_test.v diff --git a/vlib/v/tests/interface_runtime_conversions_test.v b/vlib/v/tests/interfaces/interface_runtime_conversions_test.v similarity index 100% rename from vlib/v/tests/interface_runtime_conversions_test.v rename to vlib/v/tests/interfaces/interface_runtime_conversions_test.v diff --git a/vlib/v/tests/interface_str_method_test.v b/vlib/v/tests/interfaces/interface_str_method_test.v similarity index 100% rename from vlib/v/tests/interface_str_method_test.v rename to vlib/v/tests/interfaces/interface_str_method_test.v diff --git a/vlib/v/tests/interface_struct_embedding_test.v b/vlib/v/tests/interfaces/interface_struct_embedding_test.v similarity index 100% rename from vlib/v/tests/interface_struct_embedding_test.v rename to vlib/v/tests/interfaces/interface_struct_embedding_test.v diff --git a/vlib/v/tests/interface_struct_test.v b/vlib/v/tests/interfaces/interface_struct_test.v similarity index 100% rename from vlib/v/tests/interface_struct_test.v rename to vlib/v/tests/interfaces/interface_struct_test.v diff --git a/vlib/v/tests/interface_test.v b/vlib/v/tests/interfaces/interface_test.v similarity index 99% rename from vlib/v/tests/interface_test.v rename to vlib/v/tests/interfaces/interface_test.v index 66e74ab049..f50b971150 100644 --- a/vlib/v/tests/interface_test.v +++ b/vlib/v/tests/interfaces/interface_test.v @@ -475,11 +475,11 @@ fn (e CustomError) print_error() { } fn handle_implements(e MyError) { - // e.print_error() + e.print_error() } fn test_implements() { - // e := CustomError{} - // handle_implements(e) + e := CustomError{} + handle_implements(e) println('implements ok') } diff --git a/vlib/v/tests/interface_var_selector_test.v b/vlib/v/tests/interfaces/interface_var_selector_test.v similarity index 100% rename from vlib/v/tests/interface_var_selector_test.v rename to vlib/v/tests/interfaces/interface_var_selector_test.v diff --git a/vlib/v/tests/interface_var_test.v b/vlib/v/tests/interfaces/interface_var_test.v similarity index 100% rename from vlib/v/tests/interface_var_test.v rename to vlib/v/tests/interfaces/interface_var_test.v diff --git a/vlib/v/tests/interface_variadic_test.v b/vlib/v/tests/interfaces/interface_variadic_test.v similarity index 100% rename from vlib/v/tests/interface_variadic_test.v rename to vlib/v/tests/interfaces/interface_variadic_test.v diff --git a/vlib/v/tests/interface_with_multi_nested_embed_1_test.v b/vlib/v/tests/interfaces/interface_with_multi_nested_embed_1_test.v similarity index 100% rename from vlib/v/tests/interface_with_multi_nested_embed_1_test.v rename to vlib/v/tests/interfaces/interface_with_multi_nested_embed_1_test.v diff --git a/vlib/v/tests/interface_with_multi_nested_embed_2_test.v b/vlib/v/tests/interfaces/interface_with_multi_nested_embed_2_test.v similarity index 100% rename from vlib/v/tests/interface_with_multi_nested_embed_2_test.v rename to vlib/v/tests/interfaces/interface_with_multi_nested_embed_2_test.v diff --git a/vlib/v/tests/interface_with_multi_nested_embed_3_test.v b/vlib/v/tests/interfaces/interface_with_multi_nested_embed_3_test.v similarity index 100% rename from vlib/v/tests/interface_with_multi_nested_embed_3_test.v rename to vlib/v/tests/interfaces/interface_with_multi_nested_embed_3_test.v diff --git a/vlib/v/tests/interface_with_option_field_test.v b/vlib/v/tests/interfaces/interface_with_option_field_test.v similarity index 100% rename from vlib/v/tests/interface_with_option_field_test.v rename to vlib/v/tests/interfaces/interface_with_option_field_test.v diff --git a/vlib/v/tests/interfaces_map_test.v b/vlib/v/tests/interfaces/interfaces_map_test.v similarity index 100% rename from vlib/v/tests/interfaces_map_test.v rename to vlib/v/tests/interfaces/interfaces_map_test.v diff --git a/vlib/v/tests/modules/module_a/module_a.v b/vlib/v/tests/interfaces/modules/module_a/module_a.v similarity index 100% rename from vlib/v/tests/modules/module_a/module_a.v rename to vlib/v/tests/interfaces/modules/module_a/module_a.v diff --git a/vlib/v/tests/modules/module_b/module_b.v b/vlib/v/tests/interfaces/modules/module_b/module_b.v similarity index 100% rename from vlib/v/tests/modules/module_b/module_b.v rename to vlib/v/tests/interfaces/modules/module_b/module_b.v diff --git a/vlib/v/tests/multiple_embed_external_interface_test.v b/vlib/v/tests/interfaces/multiple_embed_external_interface_test.v similarity index 100% rename from vlib/v/tests/multiple_embed_external_interface_test.v rename to vlib/v/tests/interfaces/multiple_embed_external_interface_test.v diff --git a/vlib/v/tests/for_c_init_with_var_assign_test.v b/vlib/v/tests/loops/for_c_init_with_var_assign_test.v similarity index 100% rename from vlib/v/tests/for_c_init_with_var_assign_test.v rename to vlib/v/tests/loops/for_c_init_with_var_assign_test.v diff --git a/vlib/v/tests/for_c_init_with_var_inc_test.v b/vlib/v/tests/loops/for_c_init_with_var_inc_test.v similarity index 100% rename from vlib/v/tests/for_c_init_with_var_inc_test.v rename to vlib/v/tests/loops/for_c_init_with_var_inc_test.v diff --git a/vlib/v/tests/for_c_multi_vars_test.v b/vlib/v/tests/loops/for_c_multi_vars_test.v similarity index 100% rename from vlib/v/tests/for_c_multi_vars_test.v rename to vlib/v/tests/loops/for_c_multi_vars_test.v diff --git a/vlib/v/tests/for_c_multiple_expressions_in_increment_test.v b/vlib/v/tests/loops/for_c_multiple_expressions_in_increment_test.v similarity index 100% rename from vlib/v/tests/for_c_multiple_expressions_in_increment_test.v rename to vlib/v/tests/loops/for_c_multiple_expressions_in_increment_test.v diff --git a/vlib/v/tests/for_c_stmt_with_option_call_test.v b/vlib/v/tests/loops/for_c_stmt_with_option_call_test.v similarity index 100% rename from vlib/v/tests/for_c_stmt_with_option_call_test.v rename to vlib/v/tests/loops/for_c_stmt_with_option_call_test.v diff --git a/vlib/v/tests/for_c_stmt_with_result_call_test.v b/vlib/v/tests/loops/for_c_stmt_with_result_call_test.v similarity index 100% rename from vlib/v/tests/for_c_stmt_with_result_call_test.v rename to vlib/v/tests/loops/for_c_stmt_with_result_call_test.v diff --git a/vlib/v/tests/for_cond_test.v b/vlib/v/tests/loops/for_cond_test.v similarity index 100% rename from vlib/v/tests/for_cond_test.v rename to vlib/v/tests/loops/for_cond_test.v diff --git a/vlib/v/tests/for_in_alias_test.v b/vlib/v/tests/loops/for_in_alias_test.v similarity index 100% rename from vlib/v/tests/for_in_alias_test.v rename to vlib/v/tests/loops/for_in_alias_test.v diff --git a/vlib/v/tests/for_in_containers_of_fixed_array_test.v b/vlib/v/tests/loops/for_in_containers_of_fixed_array_test.v similarity index 100% rename from vlib/v/tests/for_in_containers_of_fixed_array_test.v rename to vlib/v/tests/loops/for_in_containers_of_fixed_array_test.v diff --git a/vlib/v/tests/for_in_iterator_of_generic_struct_1_test.v b/vlib/v/tests/loops/for_in_iterator_of_generic_struct_1_test.v similarity index 100% rename from vlib/v/tests/for_in_iterator_of_generic_struct_1_test.v rename to vlib/v/tests/loops/for_in_iterator_of_generic_struct_1_test.v diff --git a/vlib/v/tests/for_in_iterator_of_generic_struct_2_test.v b/vlib/v/tests/loops/for_in_iterator_of_generic_struct_2_test.v similarity index 100% rename from vlib/v/tests/for_in_iterator_of_generic_struct_2_test.v rename to vlib/v/tests/loops/for_in_iterator_of_generic_struct_2_test.v diff --git a/vlib/v/tests/for_in_iterator_of_generic_struct_3_test.v b/vlib/v/tests/loops/for_in_iterator_of_generic_struct_3_test.v similarity index 100% rename from vlib/v/tests/for_in_iterator_of_generic_struct_3_test.v rename to vlib/v/tests/loops/for_in_iterator_of_generic_struct_3_test.v diff --git a/vlib/v/tests/for_in_iterator_test.v b/vlib/v/tests/loops/for_in_iterator_test.v similarity index 100% rename from vlib/v/tests/for_in_iterator_test.v rename to vlib/v/tests/loops/for_in_iterator_test.v diff --git a/vlib/v/tests/for_in_map_of_pointers_test.v b/vlib/v/tests/loops/for_in_map_of_pointers_test.v similarity index 100% rename from vlib/v/tests/for_in_map_of_pointers_test.v rename to vlib/v/tests/loops/for_in_map_of_pointers_test.v diff --git a/vlib/v/tests/for_in_mut_array_index_test.v b/vlib/v/tests/loops/for_in_mut_array_index_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_array_index_test.v rename to vlib/v/tests/loops/for_in_mut_array_index_test.v diff --git a/vlib/v/tests/for_in_mut_array_with_infix_expr_test.v b/vlib/v/tests/loops/for_in_mut_array_with_infix_expr_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_array_with_infix_expr_test.v rename to vlib/v/tests/loops/for_in_mut_array_with_infix_expr_test.v diff --git a/vlib/v/tests/for_in_mut_array_with_mul_test.v b/vlib/v/tests/loops/for_in_mut_array_with_mul_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_array_with_mul_test.v rename to vlib/v/tests/loops/for_in_mut_array_with_mul_test.v diff --git a/vlib/v/tests/for_in_mut_iterator_val_test.v b/vlib/v/tests/loops/for_in_mut_iterator_val_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_iterator_val_test.v rename to vlib/v/tests/loops/for_in_mut_iterator_val_test.v diff --git a/vlib/v/tests/for_in_mut_mutable_app_field_test.v b/vlib/v/tests/loops/for_in_mut_mutable_app_field_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_mutable_app_field_test.v rename to vlib/v/tests/loops/for_in_mut_mutable_app_field_test.v diff --git a/vlib/v/tests/for_in_mut_reference_selector_val_test.v b/vlib/v/tests/loops/for_in_mut_reference_selector_val_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_reference_selector_val_test.v rename to vlib/v/tests/loops/for_in_mut_reference_selector_val_test.v diff --git a/vlib/v/tests/for_in_mut_struct_val_test.v b/vlib/v/tests/loops/for_in_mut_struct_val_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_struct_val_test.v rename to vlib/v/tests/loops/for_in_mut_struct_val_test.v diff --git a/vlib/v/tests/for_in_mut_val_test.v b/vlib/v/tests/loops/for_in_mut_val_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_val_test.v rename to vlib/v/tests/loops/for_in_mut_val_test.v diff --git a/vlib/v/tests/for_in_mut_val_with_if_val_in_test.v b/vlib/v/tests/loops/for_in_mut_val_with_if_val_in_test.v similarity index 100% rename from vlib/v/tests/for_in_mut_val_with_if_val_in_test.v rename to vlib/v/tests/loops/for_in_mut_val_with_if_val_in_test.v diff --git a/vlib/v/tests/for_in_option_test.v b/vlib/v/tests/loops/for_in_option_test.v similarity index 100% rename from vlib/v/tests/for_in_option_test.v rename to vlib/v/tests/loops/for_in_option_test.v diff --git a/vlib/v/tests/for_in_ref_arr_test.v b/vlib/v/tests/loops/for_in_ref_arr_test.v similarity index 100% rename from vlib/v/tests/for_in_ref_arr_test.v rename to vlib/v/tests/loops/for_in_ref_arr_test.v diff --git a/vlib/v/tests/for_in_ref_map_test.v b/vlib/v/tests/loops/for_in_ref_map_test.v similarity index 100% rename from vlib/v/tests/for_in_ref_map_test.v rename to vlib/v/tests/loops/for_in_ref_map_test.v diff --git a/vlib/v/tests/for_label_continue_break_test.v b/vlib/v/tests/loops/for_label_continue_break_test.v similarity index 100% rename from vlib/v/tests/for_label_continue_break_test.v rename to vlib/v/tests/loops/for_label_continue_break_test.v diff --git a/vlib/v/tests/for_loop_with_option2_test.v b/vlib/v/tests/loops/for_loop_with_option2_test.v similarity index 100% rename from vlib/v/tests/for_loop_with_option2_test.v rename to vlib/v/tests/loops/for_loop_with_option2_test.v diff --git a/vlib/v/tests/for_loop_with_option_test.v b/vlib/v/tests/loops/for_loop_with_option_test.v similarity index 100% rename from vlib/v/tests/for_loop_with_option_test.v rename to vlib/v/tests/loops/for_loop_with_option_test.v diff --git a/vlib/v/tests/for_loops_2_test.v b/vlib/v/tests/loops/for_loops_2_test.v similarity index 100% rename from vlib/v/tests/for_loops_2_test.v rename to vlib/v/tests/loops/for_loops_2_test.v diff --git a/vlib/v/tests/for_loops_test.v b/vlib/v/tests/loops/for_loops_test.v similarity index 100% rename from vlib/v/tests/for_loops_test.v rename to vlib/v/tests/loops/for_loops_test.v diff --git a/vlib/v/tests/for_mut_var_argument_op_test.v b/vlib/v/tests/loops/for_mut_var_argument_op_test.v similarity index 100% rename from vlib/v/tests/for_mut_var_argument_op_test.v rename to vlib/v/tests/loops/for_mut_var_argument_op_test.v diff --git a/vlib/v/tests/for_select_test.v b/vlib/v/tests/loops/for_select_test.v similarity index 100% rename from vlib/v/tests/for_select_test.v rename to vlib/v/tests/loops/for_select_test.v diff --git a/vlib/v/tests/for_smartcast_test.v b/vlib/v/tests/loops/for_smartcast_test.v similarity index 100% rename from vlib/v/tests/for_smartcast_test.v rename to vlib/v/tests/loops/for_smartcast_test.v diff --git a/vlib/v/tests/for_sumtype_arr_test.v b/vlib/v/tests/loops/for_sumtype_arr_test.v similarity index 100% rename from vlib/v/tests/for_sumtype_arr_test.v rename to vlib/v/tests/loops/for_sumtype_arr_test.v diff --git a/vlib/v/tests/for_t_fields_with_comptime_if_test.v b/vlib/v/tests/loops/for_t_fields_with_comptime_if_test.v similarity index 100% rename from vlib/v/tests/for_t_fields_with_comptime_if_test.v rename to vlib/v/tests/loops/for_t_fields_with_comptime_if_test.v diff --git a/vlib/v/tests/check_init_value_for_arrays_of_option_test.v b/vlib/v/tests/options/check_init_value_for_arrays_of_option_test.v similarity index 100% rename from vlib/v/tests/check_init_value_for_arrays_of_option_test.v rename to vlib/v/tests/options/check_init_value_for_arrays_of_option_test.v diff --git a/vlib/v/tests/concat_option_test.v b/vlib/v/tests/options/concat_option_test.v similarity index 100% rename from vlib/v/tests/concat_option_test.v rename to vlib/v/tests/options/concat_option_test.v diff --git a/vlib/v/tests/options/modules/another_module/module.v b/vlib/v/tests/options/modules/another_module/module.v new file mode 100644 index 0000000000..a21270ea7c --- /dev/null +++ b/vlib/v/tests/options/modules/another_module/module.v @@ -0,0 +1,12 @@ +module another_module + +pub struct SomeStruct { +pub mut: + x int + y int + z int +} + +pub fn (s SomeStruct) some_method() int { + return 999 + s.x + s.y + s.z +} diff --git a/vlib/v/tests/nested_option_call_test.v b/vlib/v/tests/options/nested_option_call_test.v similarity index 100% rename from vlib/v/tests/nested_option_call_test.v rename to vlib/v/tests/options/nested_option_call_test.v diff --git a/vlib/v/tests/nested_option_struct_init_test.v b/vlib/v/tests/options/nested_option_struct_init_test.v similarity index 100% rename from vlib/v/tests/nested_option_struct_init_test.v rename to vlib/v/tests/options/nested_option_struct_init_test.v diff --git a/vlib/v/tests/nested_or_expr_call_test.v b/vlib/v/tests/options/nested_or_expr_call_test.v similarity index 100% rename from vlib/v/tests/nested_or_expr_call_test.v rename to vlib/v/tests/options/nested_or_expr_call_test.v diff --git a/vlib/v/tests/none_checking_test.v b/vlib/v/tests/options/none_checking_test.v similarity index 100% rename from vlib/v/tests/none_checking_test.v rename to vlib/v/tests/options/none_checking_test.v diff --git a/vlib/v/tests/option_2_test.v b/vlib/v/tests/options/option_2_test.v similarity index 100% rename from vlib/v/tests/option_2_test.v rename to vlib/v/tests/options/option_2_test.v diff --git a/vlib/v/tests/option_alias_eq_test.v b/vlib/v/tests/options/option_alias_eq_test.v similarity index 100% rename from vlib/v/tests/option_alias_eq_test.v rename to vlib/v/tests/options/option_alias_eq_test.v diff --git a/vlib/v/tests/option_arr_auto_str_test.v b/vlib/v/tests/options/option_arr_auto_str_test.v similarity index 100% rename from vlib/v/tests/option_arr_auto_str_test.v rename to vlib/v/tests/options/option_arr_auto_str_test.v diff --git a/vlib/v/tests/option_array_dump_in_generic_fn_test.v b/vlib/v/tests/options/option_array_dump_in_generic_fn_test.v similarity index 100% rename from vlib/v/tests/option_array_dump_in_generic_fn_test.v rename to vlib/v/tests/options/option_array_dump_in_generic_fn_test.v diff --git a/vlib/v/tests/option_array_fixed_struct_test.v b/vlib/v/tests/options/option_array_fixed_struct_test.v similarity index 100% rename from vlib/v/tests/option_array_fixed_struct_test.v rename to vlib/v/tests/options/option_array_fixed_struct_test.v diff --git a/vlib/v/tests/option_array_init_test.v b/vlib/v/tests/options/option_array_init_test.v similarity index 100% rename from vlib/v/tests/option_array_init_test.v rename to vlib/v/tests/options/option_array_init_test.v diff --git a/vlib/v/tests/option_array_submodule_test.v b/vlib/v/tests/options/option_array_submodule_test.v similarity index 100% rename from vlib/v/tests/option_array_submodule_test.v rename to vlib/v/tests/options/option_array_submodule_test.v diff --git a/vlib/v/tests/option_array_test.v b/vlib/v/tests/options/option_array_test.v similarity index 100% rename from vlib/v/tests/option_array_test.v rename to vlib/v/tests/options/option_array_test.v diff --git a/vlib/v/tests/option_assign_none_test.v b/vlib/v/tests/options/option_assign_none_test.v similarity index 100% rename from vlib/v/tests/option_assign_none_test.v rename to vlib/v/tests/options/option_assign_none_test.v diff --git a/vlib/v/tests/option_auto_eq_test.v b/vlib/v/tests/options/option_auto_eq_test.v similarity index 100% rename from vlib/v/tests/option_auto_eq_test.v rename to vlib/v/tests/options/option_auto_eq_test.v diff --git a/vlib/v/tests/option_auto_heap_test.v b/vlib/v/tests/options/option_auto_heap_test.v similarity index 100% rename from vlib/v/tests/option_auto_heap_test.v rename to vlib/v/tests/options/option_auto_heap_test.v diff --git a/vlib/v/tests/option_call_on_orexpr_test.v b/vlib/v/tests/options/option_call_on_orexpr_test.v similarity index 100% rename from vlib/v/tests/option_call_on_orexpr_test.v rename to vlib/v/tests/options/option_call_on_orexpr_test.v diff --git a/vlib/v/tests/option_call_propagation_test.v b/vlib/v/tests/options/option_call_propagation_test.v similarity index 100% rename from vlib/v/tests/option_call_propagation_test.v rename to vlib/v/tests/options/option_call_propagation_test.v diff --git a/vlib/v/tests/option_cast_test.v b/vlib/v/tests/options/option_cast_test.v similarity index 100% rename from vlib/v/tests/option_cast_test.v rename to vlib/v/tests/options/option_cast_test.v diff --git a/vlib/v/tests/option_compvar_types_test.v b/vlib/v/tests/options/option_compvar_types_test.v similarity index 100% rename from vlib/v/tests/option_compvar_types_test.v rename to vlib/v/tests/options/option_compvar_types_test.v diff --git a/vlib/v/tests/option_compvar_val_test.v b/vlib/v/tests/options/option_compvar_val_test.v similarity index 100% rename from vlib/v/tests/option_compvar_val_test.v rename to vlib/v/tests/options/option_compvar_val_test.v diff --git a/vlib/v/tests/option_concat_str_test.v b/vlib/v/tests/options/option_concat_str_test.v similarity index 100% rename from vlib/v/tests/option_concat_str_test.v rename to vlib/v/tests/options/option_concat_str_test.v diff --git a/vlib/v/tests/option_const_test.v b/vlib/v/tests/options/option_const_test.v similarity index 100% rename from vlib/v/tests/option_const_test.v rename to vlib/v/tests/options/option_const_test.v diff --git a/vlib/v/tests/option_default_values_test.v b/vlib/v/tests/options/option_default_values_test.v similarity index 100% rename from vlib/v/tests/option_default_values_test.v rename to vlib/v/tests/options/option_default_values_test.v diff --git a/vlib/v/tests/option_dump_test.v b/vlib/v/tests/options/option_dump_test.v similarity index 100% rename from vlib/v/tests/option_dump_test.v rename to vlib/v/tests/options/option_dump_test.v diff --git a/vlib/v/tests/option_empty_map_test.v b/vlib/v/tests/options/option_empty_map_test.v similarity index 100% rename from vlib/v/tests/option_empty_map_test.v rename to vlib/v/tests/options/option_empty_map_test.v diff --git a/vlib/v/tests/option_expr_with_array_value_test.v b/vlib/v/tests/options/option_expr_with_array_value_test.v similarity index 100% rename from vlib/v/tests/option_expr_with_array_value_test.v rename to vlib/v/tests/options/option_expr_with_array_value_test.v diff --git a/vlib/v/tests/option_fixed_array_test.v b/vlib/v/tests/options/option_fixed_array_test.v similarity index 100% rename from vlib/v/tests/option_fixed_array_test.v rename to vlib/v/tests/options/option_fixed_array_test.v diff --git a/vlib/v/tests/option_fn_test.v b/vlib/v/tests/options/option_fn_test.v similarity index 100% rename from vlib/v/tests/option_fn_test.v rename to vlib/v/tests/options/option_fn_test.v diff --git a/vlib/v/tests/option_free_method_test.v b/vlib/v/tests/options/option_free_method_test.v similarity index 100% rename from vlib/v/tests/option_free_method_test.v rename to vlib/v/tests/options/option_free_method_test.v diff --git a/vlib/v/tests/option_generic_cast_none_test.v b/vlib/v/tests/options/option_generic_cast_none_test.v similarity index 100% rename from vlib/v/tests/option_generic_cast_none_test.v rename to vlib/v/tests/options/option_generic_cast_none_test.v diff --git a/vlib/v/tests/option_generic_ptr_return_test.v b/vlib/v/tests/options/option_generic_ptr_return_test.v similarity index 100% rename from vlib/v/tests/option_generic_ptr_return_test.v rename to vlib/v/tests/options/option_generic_ptr_return_test.v diff --git a/vlib/v/tests/option_generic_return_test.v b/vlib/v/tests/options/option_generic_return_test.v similarity index 100% rename from vlib/v/tests/option_generic_return_test.v rename to vlib/v/tests/options/option_generic_return_test.v diff --git a/vlib/v/tests/option_generic_sumtype_test.v b/vlib/v/tests/options/option_generic_sumtype_test.v similarity index 100% rename from vlib/v/tests/option_generic_sumtype_test.v rename to vlib/v/tests/options/option_generic_sumtype_test.v diff --git a/vlib/v/tests/option_if_assign_and_fallthrough_test.v b/vlib/v/tests/options/option_if_assign_and_fallthrough_test.v similarity index 100% rename from vlib/v/tests/option_if_assign_and_fallthrough_test.v rename to vlib/v/tests/options/option_if_assign_and_fallthrough_test.v diff --git a/vlib/v/tests/option_if_expr_test.v b/vlib/v/tests/options/option_if_expr_test.v similarity index 100% rename from vlib/v/tests/option_if_expr_test.v rename to vlib/v/tests/options/option_if_expr_test.v diff --git a/vlib/v/tests/option_if_option_test.v b/vlib/v/tests/options/option_if_option_test.v similarity index 100% rename from vlib/v/tests/option_if_option_test.v rename to vlib/v/tests/options/option_if_option_test.v diff --git a/vlib/v/tests/option_import_struct_test.v b/vlib/v/tests/options/option_import_struct_test.v similarity index 100% rename from vlib/v/tests/option_import_struct_test.v rename to vlib/v/tests/options/option_import_struct_test.v diff --git a/vlib/v/tests/option_in_loop_test.v b/vlib/v/tests/options/option_in_loop_test.v similarity index 100% rename from vlib/v/tests/option_in_loop_test.v rename to vlib/v/tests/options/option_in_loop_test.v diff --git a/vlib/v/tests/option_init_ptr_test.v b/vlib/v/tests/options/option_init_ptr_test.v similarity index 100% rename from vlib/v/tests/option_init_ptr_test.v rename to vlib/v/tests/options/option_init_ptr_test.v diff --git a/vlib/v/tests/option_init_test.v b/vlib/v/tests/options/option_init_test.v similarity index 100% rename from vlib/v/tests/option_init_test.v rename to vlib/v/tests/options/option_init_test.v diff --git a/vlib/v/tests/option_interface_test.v b/vlib/v/tests/options/option_interface_test.v similarity index 100% rename from vlib/v/tests/option_interface_test.v rename to vlib/v/tests/options/option_interface_test.v diff --git a/vlib/v/tests/option_map_fn_type_value_test.v b/vlib/v/tests/options/option_map_fn_type_value_test.v similarity index 100% rename from vlib/v/tests/option_map_fn_type_value_test.v rename to vlib/v/tests/options/option_map_fn_type_value_test.v diff --git a/vlib/v/tests/option_map_init_test.v b/vlib/v/tests/options/option_map_init_test.v similarity index 100% rename from vlib/v/tests/option_map_init_test.v rename to vlib/v/tests/options/option_map_init_test.v diff --git a/vlib/v/tests/option_map_none_test.v b/vlib/v/tests/options/option_map_none_test.v similarity index 100% rename from vlib/v/tests/option_map_none_test.v rename to vlib/v/tests/options/option_map_none_test.v diff --git a/vlib/v/tests/option_map_value_test.v b/vlib/v/tests/options/option_map_value_test.v similarity index 100% rename from vlib/v/tests/option_map_value_test.v rename to vlib/v/tests/options/option_map_value_test.v diff --git a/vlib/v/tests/option_match_expr_test.v b/vlib/v/tests/options/option_match_expr_test.v similarity index 100% rename from vlib/v/tests/option_match_expr_test.v rename to vlib/v/tests/options/option_match_expr_test.v diff --git a/vlib/v/tests/option_match_test.v b/vlib/v/tests/options/option_match_test.v similarity index 100% rename from vlib/v/tests/option_match_test.v rename to vlib/v/tests/options/option_match_test.v diff --git a/vlib/v/tests/option_multi_ret_test.v b/vlib/v/tests/options/option_multi_ret_test.v similarity index 100% rename from vlib/v/tests/option_multi_ret_test.v rename to vlib/v/tests/options/option_multi_ret_test.v diff --git a/vlib/v/tests/option_multi_return_assign_test.v b/vlib/v/tests/options/option_multi_return_assign_test.v similarity index 100% rename from vlib/v/tests/option_multi_return_assign_test.v rename to vlib/v/tests/options/option_multi_return_assign_test.v diff --git a/vlib/v/tests/option_multi_return_test.v b/vlib/v/tests/options/option_multi_return_test.v similarity index 100% rename from vlib/v/tests/option_multi_return_test.v rename to vlib/v/tests/options/option_multi_return_test.v diff --git a/vlib/v/tests/option_nested_struct_test.v b/vlib/v/tests/options/option_nested_struct_test.v similarity index 100% rename from vlib/v/tests/option_nested_struct_test.v rename to vlib/v/tests/options/option_nested_struct_test.v diff --git a/vlib/v/tests/option_operator_overload_test.v b/vlib/v/tests/options/option_operator_overload_test.v similarity index 100% rename from vlib/v/tests/option_operator_overload_test.v rename to vlib/v/tests/options/option_operator_overload_test.v diff --git a/vlib/v/tests/option_or_block_test.v b/vlib/v/tests/options/option_or_block_test.v similarity index 100% rename from vlib/v/tests/option_or_block_test.v rename to vlib/v/tests/options/option_or_block_test.v diff --git a/vlib/v/tests/option_or_expr_with_non_opt_test.v b/vlib/v/tests/options/option_or_expr_with_non_opt_test.v similarity index 100% rename from vlib/v/tests/option_or_expr_with_non_opt_test.v rename to vlib/v/tests/options/option_or_expr_with_non_opt_test.v diff --git a/vlib/v/tests/option_or_result_fixed_arr_test.v b/vlib/v/tests/options/option_or_result_fixed_arr_test.v similarity index 100% rename from vlib/v/tests/option_or_result_fixed_arr_test.v rename to vlib/v/tests/options/option_or_result_fixed_arr_test.v diff --git a/vlib/v/tests/option_print_errors_test.v b/vlib/v/tests/options/option_print_errors_test.v similarity index 100% rename from vlib/v/tests/option_print_errors_test.v rename to vlib/v/tests/options/option_print_errors_test.v diff --git a/vlib/v/tests/option_print_ptr_test.v b/vlib/v/tests/options/option_print_ptr_test.v similarity index 100% rename from vlib/v/tests/option_print_ptr_test.v rename to vlib/v/tests/options/option_print_ptr_test.v diff --git a/vlib/v/tests/option_ptr_arg_heap_test.v b/vlib/v/tests/options/option_ptr_arg_heap_test.v similarity index 100% rename from vlib/v/tests/option_ptr_arg_heap_test.v rename to vlib/v/tests/options/option_ptr_arg_heap_test.v diff --git a/vlib/v/tests/option_ptr_arg_none_test.v b/vlib/v/tests/options/option_ptr_arg_none_test.v similarity index 100% rename from vlib/v/tests/option_ptr_arg_none_test.v rename to vlib/v/tests/options/option_ptr_arg_none_test.v diff --git a/vlib/v/tests/option_ptr_arg_test.v b/vlib/v/tests/options/option_ptr_arg_test.v similarity index 100% rename from vlib/v/tests/option_ptr_arg_test.v rename to vlib/v/tests/options/option_ptr_arg_test.v diff --git a/vlib/v/tests/option_ptr_cast_test.v b/vlib/v/tests/options/option_ptr_cast_test.v similarity index 100% rename from vlib/v/tests/option_ptr_cast_test.v rename to vlib/v/tests/options/option_ptr_cast_test.v diff --git a/vlib/v/tests/option_ptr_generic_test.v b/vlib/v/tests/options/option_ptr_generic_test.v similarity index 100% rename from vlib/v/tests/option_ptr_generic_test.v rename to vlib/v/tests/options/option_ptr_generic_test.v diff --git a/vlib/v/tests/option_ptr_iface_test.v b/vlib/v/tests/options/option_ptr_iface_test.v similarity index 100% rename from vlib/v/tests/option_ptr_iface_test.v rename to vlib/v/tests/options/option_ptr_iface_test.v diff --git a/vlib/v/tests/option_ptr_init_empty_test.v b/vlib/v/tests/options/option_ptr_init_empty_test.v similarity index 100% rename from vlib/v/tests/option_ptr_init_empty_test.v rename to vlib/v/tests/options/option_ptr_init_empty_test.v diff --git a/vlib/v/tests/option_ptr_init_test.v b/vlib/v/tests/options/option_ptr_init_test.v similarity index 100% rename from vlib/v/tests/option_ptr_init_test.v rename to vlib/v/tests/options/option_ptr_init_test.v diff --git a/vlib/v/tests/option_ptr_ptr_test.v b/vlib/v/tests/options/option_ptr_ptr_test.v similarity index 100% rename from vlib/v/tests/option_ptr_ptr_test.v rename to vlib/v/tests/options/option_ptr_ptr_test.v diff --git a/vlib/v/tests/option_ptr_test.v b/vlib/v/tests/options/option_ptr_test.v similarity index 100% rename from vlib/v/tests/option_ptr_test.v rename to vlib/v/tests/options/option_ptr_test.v diff --git a/vlib/v/tests/option_ptr_unwrap_test.v b/vlib/v/tests/options/option_ptr_unwrap_test.v similarity index 100% rename from vlib/v/tests/option_ptr_unwrap_test.v rename to vlib/v/tests/options/option_ptr_unwrap_test.v diff --git a/vlib/v/tests/option_push_array_opt_test.v b/vlib/v/tests/options/option_push_array_opt_test.v similarity index 100% rename from vlib/v/tests/option_push_array_opt_test.v rename to vlib/v/tests/options/option_push_array_opt_test.v diff --git a/vlib/v/tests/option_reference_params_test.v b/vlib/v/tests/options/option_reference_params_test.v similarity index 100% rename from vlib/v/tests/option_reference_params_test.v rename to vlib/v/tests/options/option_reference_params_test.v diff --git a/vlib/v/tests/option_result_interface_ret_test.v b/vlib/v/tests/options/option_result_interface_ret_test.v similarity index 100% rename from vlib/v/tests/option_result_interface_ret_test.v rename to vlib/v/tests/options/option_result_interface_ret_test.v diff --git a/vlib/v/tests/option_ret_ptr_generic_test.v b/vlib/v/tests/options/option_ret_ptr_generic_test.v similarity index 100% rename from vlib/v/tests/option_ret_ptr_generic_test.v rename to vlib/v/tests/options/option_ret_ptr_generic_test.v diff --git a/vlib/v/tests/option_return_fixed_arr_test.v b/vlib/v/tests/options/option_return_fixed_arr_test.v similarity index 100% rename from vlib/v/tests/option_return_fixed_arr_test.v rename to vlib/v/tests/options/option_return_fixed_arr_test.v diff --git a/vlib/v/tests/option_selector_assign_test.v b/vlib/v/tests/options/option_selector_assign_test.v similarity index 100% rename from vlib/v/tests/option_selector_assign_test.v rename to vlib/v/tests/options/option_selector_assign_test.v diff --git a/vlib/v/tests/option_selector_cast_test.v b/vlib/v/tests/options/option_selector_cast_test.v similarity index 100% rename from vlib/v/tests/option_selector_cast_test.v rename to vlib/v/tests/options/option_selector_cast_test.v diff --git a/vlib/v/tests/option_selector_test.v b/vlib/v/tests/options/option_selector_test.v similarity index 100% rename from vlib/v/tests/option_selector_test.v rename to vlib/v/tests/options/option_selector_test.v diff --git a/vlib/v/tests/option_struct_compare_test.v b/vlib/v/tests/options/option_struct_compare_test.v similarity index 100% rename from vlib/v/tests/option_struct_compare_test.v rename to vlib/v/tests/options/option_struct_compare_test.v diff --git a/vlib/v/tests/option_struct_field_init_test.v b/vlib/v/tests/options/option_struct_field_init_test.v similarity index 100% rename from vlib/v/tests/option_struct_field_init_test.v rename to vlib/v/tests/options/option_struct_field_init_test.v diff --git a/vlib/v/tests/option_struct_init_interface_test.v b/vlib/v/tests/options/option_struct_init_interface_test.v similarity index 100% rename from vlib/v/tests/option_struct_init_interface_test.v rename to vlib/v/tests/options/option_struct_init_interface_test.v diff --git a/vlib/v/tests/option_struct_init_test.v b/vlib/v/tests/options/option_struct_init_test.v similarity index 100% rename from vlib/v/tests/option_struct_init_test.v rename to vlib/v/tests/options/option_struct_init_test.v diff --git a/vlib/v/tests/option_struct_init_with_opt_test.v b/vlib/v/tests/options/option_struct_init_with_opt_test.v similarity index 100% rename from vlib/v/tests/option_struct_init_with_opt_test.v rename to vlib/v/tests/options/option_struct_init_with_opt_test.v diff --git a/vlib/v/tests/option_struct_init_with_ref_opt_test.v b/vlib/v/tests/options/option_struct_init_with_ref_opt_test.v similarity index 100% rename from vlib/v/tests/option_struct_init_with_ref_opt_test.v rename to vlib/v/tests/options/option_struct_init_with_ref_opt_test.v diff --git a/vlib/v/tests/option_sum_type_test.v b/vlib/v/tests/options/option_sum_type_test.v similarity index 100% rename from vlib/v/tests/option_sum_type_test.v rename to vlib/v/tests/options/option_sum_type_test.v diff --git a/vlib/v/tests/option_sumtype_test.v b/vlib/v/tests/options/option_sumtype_test.v similarity index 100% rename from vlib/v/tests/option_sumtype_test.v rename to vlib/v/tests/options/option_sumtype_test.v diff --git a/vlib/v/tests/option_sumtype_variant_test.v b/vlib/v/tests/options/option_sumtype_variant_test.v similarity index 100% rename from vlib/v/tests/option_sumtype_variant_test.v rename to vlib/v/tests/options/option_sumtype_variant_test.v diff --git a/vlib/v/tests/option_test.c.v b/vlib/v/tests/options/option_test.c.v similarity index 100% rename from vlib/v/tests/option_test.c.v rename to vlib/v/tests/options/option_test.c.v diff --git a/vlib/v/tests/option_unwrap_assign_test.v b/vlib/v/tests/options/option_unwrap_assign_test.v similarity index 100% rename from vlib/v/tests/option_unwrap_assign_test.v rename to vlib/v/tests/options/option_unwrap_assign_test.v diff --git a/vlib/v/tests/option_unwrap_fn_test.v b/vlib/v/tests/options/option_unwrap_fn_test.v similarity index 100% rename from vlib/v/tests/option_unwrap_fn_test.v rename to vlib/v/tests/options/option_unwrap_fn_test.v diff --git a/vlib/v/tests/option_unwrap_print_test.v b/vlib/v/tests/options/option_unwrap_print_test.v similarity index 100% rename from vlib/v/tests/option_unwrap_print_test.v rename to vlib/v/tests/options/option_unwrap_print_test.v diff --git a/vlib/v/tests/option_unwrap_test.v b/vlib/v/tests/options/option_unwrap_test.v similarity index 100% rename from vlib/v/tests/option_unwrap_test.v rename to vlib/v/tests/options/option_unwrap_test.v diff --git a/vlib/v/tests/option_var_2_test.v b/vlib/v/tests/options/option_var_2_test.v similarity index 100% rename from vlib/v/tests/option_var_2_test.v rename to vlib/v/tests/options/option_var_2_test.v diff --git a/vlib/v/tests/option_var_cast_test.v b/vlib/v/tests/options/option_var_cast_test.v similarity index 100% rename from vlib/v/tests/option_var_cast_test.v rename to vlib/v/tests/options/option_var_cast_test.v diff --git a/vlib/v/tests/option_var_map_test.v b/vlib/v/tests/options/option_var_map_test.v similarity index 100% rename from vlib/v/tests/option_var_map_test.v rename to vlib/v/tests/options/option_var_map_test.v diff --git a/vlib/v/tests/option_var_test.v b/vlib/v/tests/options/option_var_test.v similarity index 100% rename from vlib/v/tests/option_var_test.v rename to vlib/v/tests/options/option_var_test.v diff --git a/vlib/v/tests/option_void_2_test.v b/vlib/v/tests/options/option_void_2_test.v similarity index 100% rename from vlib/v/tests/option_void_2_test.v rename to vlib/v/tests/options/option_void_2_test.v diff --git a/vlib/v/tests/option_void_fn_return_test.v b/vlib/v/tests/options/option_void_fn_return_test.v similarity index 100% rename from vlib/v/tests/option_void_fn_return_test.v rename to vlib/v/tests/options/option_void_fn_return_test.v diff --git a/vlib/v/tests/or_expr_with_comptime_test.v b/vlib/v/tests/options/or_expr_with_comptime_test.v similarity index 100% rename from vlib/v/tests/or_expr_with_comptime_test.v rename to vlib/v/tests/options/or_expr_with_comptime_test.v diff --git a/vlib/v/tests/or_expr_with_multi_stmts_test.v b/vlib/v/tests/options/or_expr_with_multi_stmts_test.v similarity index 100% rename from vlib/v/tests/or_expr_with_multi_stmts_test.v rename to vlib/v/tests/options/or_expr_with_multi_stmts_test.v diff --git a/vlib/v/tests/or_expr_with_nested_match_expr_test.v b/vlib/v/tests/options/or_expr_with_nested_match_expr_test.v similarity index 100% rename from vlib/v/tests/or_expr_with_nested_match_expr_test.v rename to vlib/v/tests/options/or_expr_with_nested_match_expr_test.v diff --git a/vlib/v/tests/var_option_arr_test.v b/vlib/v/tests/options/var_option_arr_test.v similarity index 100% rename from vlib/v/tests/var_option_arr_test.v rename to vlib/v/tests/options/var_option_arr_test.v diff --git a/vlib/v/tests/var_option_as_arg_test.v b/vlib/v/tests/options/var_option_as_arg_test.v similarity index 100% rename from vlib/v/tests/var_option_as_arg_test.v rename to vlib/v/tests/options/var_option_as_arg_test.v diff --git a/vlib/v/tests/var_option_comptime_test.v b/vlib/v/tests/options/var_option_comptime_test.v similarity index 100% rename from vlib/v/tests/var_option_comptime_test.v rename to vlib/v/tests/options/var_option_comptime_test.v diff --git a/vlib/v/tests/var_option_opt_arg_test.v b/vlib/v/tests/options/var_option_opt_arg_test.v similarity index 100% rename from vlib/v/tests/var_option_opt_arg_test.v rename to vlib/v/tests/options/var_option_opt_arg_test.v diff --git a/vlib/v/tests/var_option_opt_multi_return_test.v b/vlib/v/tests/options/var_option_opt_multi_return_test.v similarity index 100% rename from vlib/v/tests/var_option_opt_multi_return_test.v rename to vlib/v/tests/options/var_option_opt_multi_return_test.v diff --git a/vlib/v/tests/var_option_struct_test.v b/vlib/v/tests/options/var_option_struct_test.v similarity index 100% rename from vlib/v/tests/var_option_struct_test.v rename to vlib/v/tests/options/var_option_struct_test.v diff --git a/vlib/v/tests/var_option_sumtype_test.v b/vlib/v/tests/options/var_option_sumtype_test.v similarity index 100% rename from vlib/v/tests/var_option_sumtype_test.v rename to vlib/v/tests/options/var_option_sumtype_test.v diff --git a/vlib/v/tests/addr_test.v b/vlib/v/tests/pointers/addr_test.v similarity index 100% rename from vlib/v/tests/addr_test.v rename to vlib/v/tests/pointers/addr_test.v diff --git a/vlib/v/tests/autogen_free_test.v b/vlib/v/tests/pointers/autogen_free_test.v similarity index 100% rename from vlib/v/tests/autogen_free_test.v rename to vlib/v/tests/pointers/autogen_free_test.v diff --git a/vlib/v/tests/deref_mut_variable_in_if_expr_test.v b/vlib/v/tests/pointers/deref_mut_variable_in_if_expr_test.v similarity index 100% rename from vlib/v/tests/deref_mut_variable_in_if_expr_test.v rename to vlib/v/tests/pointers/deref_mut_variable_in_if_expr_test.v diff --git a/vlib/v/tests/dereference_mut_interface_in_loop_test.v b/vlib/v/tests/pointers/dereference_mut_interface_in_loop_test.v similarity index 100% rename from vlib/v/tests/dereference_mut_interface_in_loop_test.v rename to vlib/v/tests/pointers/dereference_mut_interface_in_loop_test.v diff --git a/vlib/v/tests/double_ref_deref_test.v b/vlib/v/tests/pointers/double_ref_deref_test.v similarity index 100% rename from vlib/v/tests/double_ref_deref_test.v rename to vlib/v/tests/pointers/double_ref_deref_test.v diff --git a/vlib/v/tests/heap_interface_test.v b/vlib/v/tests/pointers/heap_interface_test.v similarity index 100% rename from vlib/v/tests/heap_interface_test.v rename to vlib/v/tests/pointers/heap_interface_test.v diff --git a/vlib/v/tests/heap_reference_test.v b/vlib/v/tests/pointers/heap_reference_test.v similarity index 100% rename from vlib/v/tests/heap_reference_test.v rename to vlib/v/tests/pointers/heap_reference_test.v diff --git a/vlib/v/tests/heap_struct_member_ptr_test.v b/vlib/v/tests/pointers/heap_struct_member_ptr_test.v similarity index 100% rename from vlib/v/tests/heap_struct_member_ptr_test.v rename to vlib/v/tests/pointers/heap_struct_member_ptr_test.v diff --git a/vlib/v/tests/heap_struct_test.v b/vlib/v/tests/pointers/heap_struct_test.v similarity index 100% rename from vlib/v/tests/heap_struct_test.v rename to vlib/v/tests/pointers/heap_struct_test.v diff --git a/vlib/v/tests/infix_expr_in_mut_receiver_method_test.v b/vlib/v/tests/pointers/infix_expr_in_mut_receiver_method_test.v similarity index 100% rename from vlib/v/tests/infix_expr_in_mut_receiver_method_test.v rename to vlib/v/tests/pointers/infix_expr_in_mut_receiver_method_test.v diff --git a/vlib/v/tests/isreftype_test.v b/vlib/v/tests/pointers/isreftype_test.v similarity index 100% rename from vlib/v/tests/isreftype_test.v rename to vlib/v/tests/pointers/isreftype_test.v diff --git a/vlib/v/tests/offsetof_test.v b/vlib/v/tests/pointers/offsetof_test.v similarity index 100% rename from vlib/v/tests/offsetof_test.v rename to vlib/v/tests/pointers/offsetof_test.v diff --git a/vlib/v/tests/pointer_arithmetic_test.v b/vlib/v/tests/pointers/pointer_arithmetic_test.v similarity index 100% rename from vlib/v/tests/pointer_arithmetic_test.v rename to vlib/v/tests/pointers/pointer_arithmetic_test.v diff --git a/vlib/v/tests/pointers_multilevel_casts_test.v b/vlib/v/tests/pointers/pointers_multilevel_casts_test.v similarity index 100% rename from vlib/v/tests/pointers_multilevel_casts_test.v rename to vlib/v/tests/pointers/pointers_multilevel_casts_test.v diff --git a/vlib/v/tests/pointers_str_test.v b/vlib/v/tests/pointers/pointers_str_test.v similarity index 100% rename from vlib/v/tests/pointers_str_test.v rename to vlib/v/tests/pointers/pointers_str_test.v diff --git a/vlib/v/tests/pointers_test.v b/vlib/v/tests/pointers/pointers_test.v similarity index 100% rename from vlib/v/tests/pointers_test.v rename to vlib/v/tests/pointers/pointers_test.v diff --git a/vlib/v/tests/ptr_arithmetic_test.v b/vlib/v/tests/pointers/ptr_arithmetic_test.v similarity index 100% rename from vlib/v/tests/ptr_arithmetic_test.v rename to vlib/v/tests/pointers/ptr_arithmetic_test.v diff --git a/vlib/v/tests/ref_array_init_test.v b/vlib/v/tests/pointers/ref_array_init_test.v similarity index 100% rename from vlib/v/tests/ref_array_init_test.v rename to vlib/v/tests/pointers/ref_array_init_test.v diff --git a/vlib/v/tests/ref_return_test.v b/vlib/v/tests/pointers/ref_return_test.v similarity index 100% rename from vlib/v/tests/ref_return_test.v rename to vlib/v/tests/pointers/ref_return_test.v diff --git a/vlib/v/tests/ref_struct_test.v b/vlib/v/tests/pointers/ref_struct_test.v similarity index 100% rename from vlib/v/tests/ref_struct_test.v rename to vlib/v/tests/pointers/ref_struct_test.v diff --git a/vlib/v/tests/reference_return_test.v b/vlib/v/tests/pointers/reference_return_test.v similarity index 100% rename from vlib/v/tests/reference_return_test.v rename to vlib/v/tests/pointers/reference_return_test.v diff --git a/vlib/v/tests/reference_var_followed_block_expr_test.v b/vlib/v/tests/pointers/reference_var_followed_block_expr_test.v similarity index 100% rename from vlib/v/tests/reference_var_followed_block_expr_test.v rename to vlib/v/tests/pointers/reference_var_followed_block_expr_test.v diff --git a/vlib/v/tests/reference_variable_str_test.v b/vlib/v/tests/pointers/reference_variable_str_test.v similarity index 100% rename from vlib/v/tests/reference_variable_str_test.v rename to vlib/v/tests/pointers/reference_variable_str_test.v diff --git a/vlib/v/tests/return_voidptr_test.v b/vlib/v/tests/pointers/return_voidptr_test.v similarity index 100% rename from vlib/v/tests/return_voidptr_test.v rename to vlib/v/tests/pointers/return_voidptr_test.v diff --git a/vlib/v/tests/selectorexpr_alias_to_ptr_test.v b/vlib/v/tests/pointers/selectorexpr_alias_to_ptr_test.v similarity index 100% rename from vlib/v/tests/selectorexpr_alias_to_ptr_test.v rename to vlib/v/tests/pointers/selectorexpr_alias_to_ptr_test.v diff --git a/vlib/v/tests/unsafe_test.c.v b/vlib/v/tests/pointers/unsafe_test.c.v similarity index 100% rename from vlib/v/tests/unsafe_test.c.v rename to vlib/v/tests/pointers/unsafe_test.c.v diff --git a/vlib/v/tests/vargs_reference_param_test.v b/vlib/v/tests/pointers/vargs_reference_param_test.v similarity index 100% rename from vlib/v/tests/vargs_reference_param_test.v rename to vlib/v/tests/pointers/vargs_reference_param_test.v diff --git a/vlib/v/tests/dump_c_structs/dump_c_struct_test.c.v b/vlib/v/tests/printing/dump_c_structs/dump_c_struct_test.c.v similarity index 100% rename from vlib/v/tests/dump_c_structs/dump_c_struct_test.c.v rename to vlib/v/tests/printing/dump_c_structs/dump_c_struct_test.c.v diff --git a/vlib/v/tests/dump_c_structs/epoll.h b/vlib/v/tests/printing/dump_c_structs/epoll.h similarity index 100% rename from vlib/v/tests/dump_c_structs/epoll.h rename to vlib/v/tests/printing/dump_c_structs/epoll.h diff --git a/vlib/v/tests/dump_c_structs/netdb.h b/vlib/v/tests/printing/dump_c_structs/netdb.h similarity index 100% rename from vlib/v/tests/dump_c_structs/netdb.h rename to vlib/v/tests/printing/dump_c_structs/netdb.h diff --git a/vlib/v/tests/dump_c_structs/v.mod b/vlib/v/tests/printing/dump_c_structs/v.mod similarity index 100% rename from vlib/v/tests/dump_c_structs/v.mod rename to vlib/v/tests/printing/dump_c_structs/v.mod diff --git a/vlib/v/tests/dump_fns_test.v b/vlib/v/tests/printing/dump_fns_test.v similarity index 100% rename from vlib/v/tests/dump_fns_test.v rename to vlib/v/tests/printing/dump_fns_test.v diff --git a/vlib/v/tests/dump_on_generic_func_test.v b/vlib/v/tests/printing/dump_on_generic_func_test.v similarity index 100% rename from vlib/v/tests/dump_on_generic_func_test.v rename to vlib/v/tests/printing/dump_on_generic_func_test.v diff --git a/vlib/v/tests/print_address_of_reference_int_test.v b/vlib/v/tests/printing/print_address_of_reference_int_test.v similarity index 100% rename from vlib/v/tests/print_address_of_reference_int_test.v rename to vlib/v/tests/printing/print_address_of_reference_int_test.v diff --git a/vlib/v/tests/print_address_of_reference_struct_test.v b/vlib/v/tests/printing/print_address_of_reference_struct_test.v similarity index 100% rename from vlib/v/tests/print_address_of_reference_struct_test.v rename to vlib/v/tests/printing/print_address_of_reference_struct_test.v diff --git a/vlib/v/tests/print_anon_fn_test.v b/vlib/v/tests/printing/print_anon_fn_test.v similarity index 100% rename from vlib/v/tests/print_anon_fn_test.v rename to vlib/v/tests/printing/print_anon_fn_test.v diff --git a/vlib/v/tests/print_fn_test.v b/vlib/v/tests/printing/print_fn_test.v similarity index 100% rename from vlib/v/tests/print_fn_test.v rename to vlib/v/tests/printing/print_fn_test.v diff --git a/vlib/v/tests/print_reference_function_test.v b/vlib/v/tests/printing/print_reference_function_test.v similarity index 100% rename from vlib/v/tests/print_reference_function_test.v rename to vlib/v/tests/printing/print_reference_function_test.v diff --git a/vlib/v/tests/print_smartcast_interface_variable_test.v b/vlib/v/tests/printing/print_smartcast_interface_variable_test.v similarity index 100% rename from vlib/v/tests/print_smartcast_interface_variable_test.v rename to vlib/v/tests/printing/print_smartcast_interface_variable_test.v diff --git a/vlib/v/tests/print_smartcast_variable_test.v b/vlib/v/tests/printing/print_smartcast_variable_test.v similarity index 100% rename from vlib/v/tests/print_smartcast_variable_test.v rename to vlib/v/tests/printing/print_smartcast_variable_test.v diff --git a/vlib/v/tests/print_test.v b/vlib/v/tests/printing/print_test.v similarity index 100% rename from vlib/v/tests/print_test.v rename to vlib/v/tests/printing/print_test.v diff --git a/vlib/v/tests/print_void_ret_test.v b/vlib/v/tests/printing/print_void_ret_test.v similarity index 100% rename from vlib/v/tests/print_void_ret_test.v rename to vlib/v/tests/printing/print_void_ret_test.v diff --git a/vlib/v/tests/json_serialisation_of_fixed_arrays_test.v b/vlib/v/tests/serialisation/json_serialisation_of_fixed_arrays_test.v similarity index 100% rename from vlib/v/tests/json_serialisation_of_fixed_arrays_test.v rename to vlib/v/tests/serialisation/json_serialisation_of_fixed_arrays_test.v diff --git a/vlib/v/tests/json_with_struct_having_fields_with_default_values_test.v b/vlib/v/tests/serialisation/json_with_struct_having_fields_with_default_values_test.v similarity index 100% rename from vlib/v/tests/json_with_struct_having_fields_with_default_values_test.v rename to vlib/v/tests/serialisation/json_with_struct_having_fields_with_default_values_test.v diff --git a/vlib/v/tests/anon_struct_alias_type_decl_embed_test.v b/vlib/v/tests/structs/anon_struct_alias_type_decl_embed_test.v similarity index 100% rename from vlib/v/tests/anon_struct_alias_type_decl_embed_test.v rename to vlib/v/tests/structs/anon_struct_alias_type_decl_embed_test.v diff --git a/vlib/v/tests/anon_struct_assign_test.v b/vlib/v/tests/structs/anon_struct_assign_test.v similarity index 100% rename from vlib/v/tests/anon_struct_assign_test.v rename to vlib/v/tests/structs/anon_struct_assign_test.v diff --git a/vlib/v/tests/anon_struct_default_value_test.v b/vlib/v/tests/structs/anon_struct_default_value_test.v similarity index 100% rename from vlib/v/tests/anon_struct_default_value_test.v rename to vlib/v/tests/structs/anon_struct_default_value_test.v diff --git a/vlib/v/tests/anon_struct_type_test.v b/vlib/v/tests/structs/anon_struct_type_test.v similarity index 100% rename from vlib/v/tests/anon_struct_type_test.v rename to vlib/v/tests/structs/anon_struct_type_test.v diff --git a/vlib/v/tests/anon_struct_with_default_expr_test.v b/vlib/v/tests/structs/anon_struct_with_default_expr_test.v similarity index 100% rename from vlib/v/tests/anon_struct_with_default_expr_test.v rename to vlib/v/tests/structs/anon_struct_with_default_expr_test.v diff --git a/vlib/v/tests/custom_str_on_struct_with_too_many_fields_test.v b/vlib/v/tests/structs/custom_str_on_struct_with_too_many_fields_test.v similarity index 100% rename from vlib/v/tests/custom_str_on_struct_with_too_many_fields_test.v rename to vlib/v/tests/structs/custom_str_on_struct_with_too_many_fields_test.v diff --git a/vlib/v/tests/differently_named_structs_test.v b/vlib/v/tests/structs/differently_named_structs_test.v similarity index 100% rename from vlib/v/tests/differently_named_structs_test.v rename to vlib/v/tests/structs/differently_named_structs_test.v diff --git a/vlib/v/tests/embed_error_in_returning_result_test.v b/vlib/v/tests/structs/embed_error_in_returning_result_test.v similarity index 100% rename from vlib/v/tests/embed_error_in_returning_result_test.v rename to vlib/v/tests/structs/embed_error_in_returning_result_test.v diff --git a/vlib/v/tests/embed_method_call_test.v b/vlib/v/tests/structs/embed_method_call_test.v similarity index 100% rename from vlib/v/tests/embed_method_call_test.v rename to vlib/v/tests/structs/embed_method_call_test.v diff --git a/vlib/v/tests/embed_struct_field_default_value_test.v b/vlib/v/tests/structs/embed_struct_field_default_value_test.v similarity index 100% rename from vlib/v/tests/embed_struct_field_default_value_test.v rename to vlib/v/tests/structs/embed_struct_field_default_value_test.v diff --git a/vlib/v/tests/embed_struct_name_test.v b/vlib/v/tests/structs/embed_struct_name_test.v similarity index 100% rename from vlib/v/tests/embed_struct_name_test.v rename to vlib/v/tests/structs/embed_struct_name_test.v diff --git a/vlib/v/tests/embed_struct_with_sumtype_field_test.v b/vlib/v/tests/structs/embed_struct_with_sumtype_field_test.v similarity index 100% rename from vlib/v/tests/embed_struct_with_sumtype_field_test.v rename to vlib/v/tests/structs/embed_struct_with_sumtype_field_test.v diff --git a/vlib/v/tests/empty_struct_compare_test.v b/vlib/v/tests/structs/empty_struct_compare_test.v similarity index 100% rename from vlib/v/tests/empty_struct_compare_test.v rename to vlib/v/tests/structs/empty_struct_compare_test.v diff --git a/vlib/v/tests/empty_struct_test.v b/vlib/v/tests/structs/empty_struct_test.v similarity index 100% rename from vlib/v/tests/empty_struct_test.v rename to vlib/v/tests/structs/empty_struct_test.v diff --git a/vlib/v/tests/free_method_test.v b/vlib/v/tests/structs/free_method_test.v similarity index 100% rename from vlib/v/tests/free_method_test.v rename to vlib/v/tests/structs/free_method_test.v diff --git a/vlib/v/tests/missing_config_struct_arg_test.v b/vlib/v/tests/structs/missing_config_struct_arg_test.v similarity index 100% rename from vlib/v/tests/missing_config_struct_arg_test.v rename to vlib/v/tests/structs/missing_config_struct_arg_test.v diff --git a/vlib/v/tests/modules/structs_with_noinit/shapes.v b/vlib/v/tests/structs/modules/structs_with_noinit/shapes.v similarity index 100% rename from vlib/v/tests/modules/structs_with_noinit/shapes.v rename to vlib/v/tests/structs/modules/structs_with_noinit/shapes.v diff --git a/vlib/v/tests/multiple_embed_struct_init_test.v b/vlib/v/tests/structs/multiple_embed_struct_init_test.v similarity index 100% rename from vlib/v/tests/multiple_embed_struct_init_test.v rename to vlib/v/tests/structs/multiple_embed_struct_init_test.v diff --git a/vlib/v/tests/multiple_embed_struct_with_duplicate_field_init_test.v b/vlib/v/tests/structs/multiple_embed_struct_with_duplicate_field_init_test.v similarity index 100% rename from vlib/v/tests/multiple_embed_struct_with_duplicate_field_init_test.v rename to vlib/v/tests/structs/multiple_embed_struct_with_duplicate_field_init_test.v diff --git a/vlib/v/tests/mut_receiver_returned_as_reference_test.v b/vlib/v/tests/structs/mut_receiver_returned_as_reference_test.v similarity index 100% rename from vlib/v/tests/mut_receiver_returned_as_reference_test.v rename to vlib/v/tests/structs/mut_receiver_returned_as_reference_test.v diff --git a/vlib/v/tests/mut_test.v b/vlib/v/tests/structs/mut_test.v similarity index 100% rename from vlib/v/tests/mut_test.v rename to vlib/v/tests/structs/mut_test.v diff --git a/vlib/v/tests/nested_struct_embed_method_call_test.v b/vlib/v/tests/structs/nested_struct_embed_method_call_test.v similarity index 100% rename from vlib/v/tests/nested_struct_embed_method_call_test.v rename to vlib/v/tests/structs/nested_struct_embed_method_call_test.v diff --git a/vlib/v/tests/nested_struct_embed_selector_test.v b/vlib/v/tests/structs/nested_struct_embed_selector_test.v similarity index 100% rename from vlib/v/tests/nested_struct_embed_selector_test.v rename to vlib/v/tests/structs/nested_struct_embed_selector_test.v diff --git a/vlib/v/tests/operator_overloading_cmp_test.v b/vlib/v/tests/structs/operator_overloading_cmp_test.v similarity index 100% rename from vlib/v/tests/operator_overloading_cmp_test.v rename to vlib/v/tests/structs/operator_overloading_cmp_test.v diff --git a/vlib/v/tests/operator_overloading_on_struct_with_too_many_fields_test.v b/vlib/v/tests/structs/operator_overloading_on_struct_with_too_many_fields_test.v similarity index 100% rename from vlib/v/tests/operator_overloading_on_struct_with_too_many_fields_test.v rename to vlib/v/tests/structs/operator_overloading_on_struct_with_too_many_fields_test.v diff --git a/vlib/v/tests/operator_overloading_type_alias_generic_parent_test.v b/vlib/v/tests/structs/operator_overloading_type_alias_generic_parent_test.v similarity index 100% rename from vlib/v/tests/operator_overloading_type_alias_generic_parent_test.v rename to vlib/v/tests/structs/operator_overloading_type_alias_generic_parent_test.v diff --git a/vlib/v/tests/operator_overloading_with_reference_operands_test.v b/vlib/v/tests/structs/operator_overloading_with_reference_operands_test.v similarity index 100% rename from vlib/v/tests/operator_overloading_with_reference_operands_test.v rename to vlib/v/tests/structs/operator_overloading_with_reference_operands_test.v diff --git a/vlib/v/tests/operator_overloading_with_string_interpolation_test.v b/vlib/v/tests/structs/operator_overloading_with_string_interpolation_test.v similarity index 100% rename from vlib/v/tests/operator_overloading_with_string_interpolation_test.v rename to vlib/v/tests/structs/operator_overloading_with_string_interpolation_test.v diff --git a/vlib/v/tests/short_struct_param_syntax_test.v b/vlib/v/tests/structs/short_struct_param_syntax_test.v similarity index 100% rename from vlib/v/tests/short_struct_param_syntax_test.v rename to vlib/v/tests/structs/short_struct_param_syntax_test.v diff --git a/vlib/v/tests/struct_allow_both_field_defaults_and_skip_flag_test.v b/vlib/v/tests/structs/struct_allow_both_field_defaults_and_skip_flag_test.v similarity index 100% rename from vlib/v/tests/struct_allow_both_field_defaults_and_skip_flag_test.v rename to vlib/v/tests/structs/struct_allow_both_field_defaults_and_skip_flag_test.v diff --git a/vlib/v/tests/struct_auto_eq_gen_interface_test.v b/vlib/v/tests/structs/struct_auto_eq_gen_interface_test.v similarity index 100% rename from vlib/v/tests/struct_auto_eq_gen_interface_test.v rename to vlib/v/tests/structs/struct_auto_eq_gen_interface_test.v diff --git a/vlib/v/tests/struct_chained_fields_correct_test.v b/vlib/v/tests/structs/struct_chained_fields_correct_test.v similarity index 100% rename from vlib/v/tests/struct_chained_fields_correct_test.v rename to vlib/v/tests/structs/struct_chained_fields_correct_test.v diff --git a/vlib/v/tests/struct_child_field_default_test.v b/vlib/v/tests/structs/struct_child_field_default_test.v similarity index 100% rename from vlib/v/tests/struct_child_field_default_test.v rename to vlib/v/tests/structs/struct_child_field_default_test.v diff --git a/vlib/v/tests/struct_embed_fn_type_test.v b/vlib/v/tests/structs/struct_embed_fn_type_test.v similarity index 100% rename from vlib/v/tests/struct_embed_fn_type_test.v rename to vlib/v/tests/structs/struct_embed_fn_type_test.v diff --git a/vlib/v/tests/struct_embed_is_interface_test.v b/vlib/v/tests/structs/struct_embed_is_interface_test.v similarity index 100% rename from vlib/v/tests/struct_embed_is_interface_test.v rename to vlib/v/tests/structs/struct_embed_is_interface_test.v diff --git a/vlib/v/tests/struct_embed_test.v b/vlib/v/tests/structs/struct_embed_test.v similarity index 100% rename from vlib/v/tests/struct_embed_test.v rename to vlib/v/tests/structs/struct_embed_test.v diff --git a/vlib/v/tests/struct_embedding_with_interface_test.v b/vlib/v/tests/structs/struct_embedding_with_interface_test.v similarity index 100% rename from vlib/v/tests/struct_embedding_with_interface_test.v rename to vlib/v/tests/structs/struct_embedding_with_interface_test.v diff --git a/vlib/v/tests/struct_eq_op_only_test.v b/vlib/v/tests/structs/struct_eq_op_only_test.v similarity index 100% rename from vlib/v/tests/struct_eq_op_only_test.v rename to vlib/v/tests/structs/struct_eq_op_only_test.v diff --git a/vlib/v/tests/struct_equality_test.v b/vlib/v/tests/structs/struct_equality_test.v similarity index 100% rename from vlib/v/tests/struct_equality_test.v rename to vlib/v/tests/structs/struct_equality_test.v diff --git a/vlib/v/tests/struct_field_array_index_test.v b/vlib/v/tests/structs/struct_field_array_index_test.v similarity index 100% rename from vlib/v/tests/struct_field_array_index_test.v rename to vlib/v/tests/structs/struct_field_array_index_test.v diff --git a/vlib/v/tests/struct_field_default_fn_type_value_init_test.v b/vlib/v/tests/structs/struct_field_default_fn_type_value_init_test.v similarity index 100% rename from vlib/v/tests/struct_field_default_fn_type_value_init_test.v rename to vlib/v/tests/structs/struct_field_default_fn_type_value_init_test.v diff --git a/vlib/v/tests/struct_field_default_union_of_structs_marked_with_noinit_test.v b/vlib/v/tests/structs/struct_field_default_union_of_structs_marked_with_noinit_test.v similarity index 100% rename from vlib/v/tests/struct_field_default_union_of_structs_marked_with_noinit_test.v rename to vlib/v/tests/structs/struct_field_default_union_of_structs_marked_with_noinit_test.v diff --git a/vlib/v/tests/struct_field_default_value_interface_cast_test.v b/vlib/v/tests/structs/struct_field_default_value_interface_cast_test.v similarity index 100% rename from vlib/v/tests/struct_field_default_value_interface_cast_test.v rename to vlib/v/tests/structs/struct_field_default_value_interface_cast_test.v diff --git a/vlib/v/tests/struct_field_default_value_sumtype_cast_test.v b/vlib/v/tests/structs/struct_field_default_value_sumtype_cast_test.v similarity index 100% rename from vlib/v/tests/struct_field_default_value_sumtype_cast_test.v rename to vlib/v/tests/structs/struct_field_default_value_sumtype_cast_test.v diff --git a/vlib/v/tests/struct_field_fixed_array_init_test.v b/vlib/v/tests/structs/struct_field_fixed_array_init_test.v similarity index 100% rename from vlib/v/tests/struct_field_fixed_array_init_test.v rename to vlib/v/tests/structs/struct_field_fixed_array_init_test.v diff --git a/vlib/v/tests/struct_field_fn_call_test.v b/vlib/v/tests/structs/struct_field_fn_call_test.v similarity index 100% rename from vlib/v/tests/struct_field_fn_call_test.v rename to vlib/v/tests/structs/struct_field_fn_call_test.v diff --git a/vlib/v/tests/struct_field_init_with_generic_anon_fn_test.v b/vlib/v/tests/structs/struct_field_init_with_generic_anon_fn_test.v similarity index 100% rename from vlib/v/tests/struct_field_init_with_generic_anon_fn_test.v rename to vlib/v/tests/structs/struct_field_init_with_generic_anon_fn_test.v diff --git a/vlib/v/tests/struct_field_init_with_generic_fn_test.v b/vlib/v/tests/structs/struct_field_init_with_generic_fn_test.v similarity index 100% rename from vlib/v/tests/struct_field_init_with_generic_fn_test.v rename to vlib/v/tests/structs/struct_field_init_with_generic_fn_test.v diff --git a/vlib/v/tests/struct_field_named_as_c_keyword_test.v b/vlib/v/tests/structs/struct_field_named_as_c_keyword_test.v similarity index 100% rename from vlib/v/tests/struct_field_named_as_c_keyword_test.v rename to vlib/v/tests/structs/struct_field_named_as_c_keyword_test.v diff --git a/vlib/v/tests/struct_field_option_type_with_default_value_init_test.v b/vlib/v/tests/structs/struct_field_option_type_with_default_value_init_test.v similarity index 100% rename from vlib/v/tests/struct_field_option_type_with_default_value_init_test.v rename to vlib/v/tests/structs/struct_field_option_type_with_default_value_init_test.v diff --git a/vlib/v/tests/struct_fields_required_test.v b/vlib/v/tests/structs/struct_fields_required_test.v similarity index 100% rename from vlib/v/tests/struct_fields_required_test.v rename to vlib/v/tests/structs/struct_fields_required_test.v diff --git a/vlib/v/tests/struct_fields_storing_functions_test.v b/vlib/v/tests/structs/struct_fields_storing_functions_test.v similarity index 100% rename from vlib/v/tests/struct_fields_storing_functions_test.v rename to vlib/v/tests/structs/struct_fields_storing_functions_test.v diff --git a/vlib/v/tests/struct_ierror_test.v b/vlib/v/tests/structs/struct_ierror_test.v similarity index 100% rename from vlib/v/tests/struct_ierror_test.v rename to vlib/v/tests/structs/struct_ierror_test.v diff --git a/vlib/v/tests/struct_init_and_assign_test.v b/vlib/v/tests/structs/struct_init_and_assign_test.v similarity index 100% rename from vlib/v/tests/struct_init_and_assign_test.v rename to vlib/v/tests/structs/struct_init_and_assign_test.v diff --git a/vlib/v/tests/struct_init_on_for_expr_test.v b/vlib/v/tests/structs/struct_init_on_for_expr_test.v similarity index 100% rename from vlib/v/tests/struct_init_on_for_expr_test.v rename to vlib/v/tests/structs/struct_init_on_for_expr_test.v diff --git a/vlib/v/tests/struct_init_update_with_generics_test.v b/vlib/v/tests/structs/struct_init_update_with_generics_test.v similarity index 100% rename from vlib/v/tests/struct_init_update_with_generics_test.v rename to vlib/v/tests/structs/struct_init_update_with_generics_test.v diff --git a/vlib/v/tests/struct_init_update_with_mutable_receiver_test.v b/vlib/v/tests/structs/struct_init_update_with_mutable_receiver_test.v similarity index 100% rename from vlib/v/tests/struct_init_update_with_mutable_receiver_test.v rename to vlib/v/tests/structs/struct_init_update_with_mutable_receiver_test.v diff --git a/vlib/v/tests/struct_init_with_chan_field_test.v b/vlib/v/tests/structs/struct_init_with_chan_field_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_chan_field_test.v rename to vlib/v/tests/structs/struct_init_with_chan_field_test.v diff --git a/vlib/v/tests/struct_init_with_complex_fields_test.v b/vlib/v/tests/structs/struct_init_with_complex_fields_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_complex_fields_test.v rename to vlib/v/tests/structs/struct_init_with_complex_fields_test.v diff --git a/vlib/v/tests/struct_init_with_embed_update_test.v b/vlib/v/tests/structs/struct_init_with_embed_update_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_embed_update_test.v rename to vlib/v/tests/structs/struct_init_with_embed_update_test.v diff --git a/vlib/v/tests/struct_init_with_fixed_array_field_test.v b/vlib/v/tests/structs/struct_init_with_fixed_array_field_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_fixed_array_field_test.v rename to vlib/v/tests/structs/struct_init_with_fixed_array_field_test.v diff --git a/vlib/v/tests/struct_init_with_interface_field_test.v b/vlib/v/tests/structs/struct_init_with_interface_field_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_interface_field_test.v rename to vlib/v/tests/structs/struct_init_with_interface_field_test.v diff --git a/vlib/v/tests/struct_init_with_interface_pointer_and_embed_test.v b/vlib/v/tests/structs/struct_init_with_interface_pointer_and_embed_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_interface_pointer_and_embed_test.v rename to vlib/v/tests/structs/struct_init_with_interface_pointer_and_embed_test.v diff --git a/vlib/v/tests/struct_init_with_multi_nested_embed_update_test.v b/vlib/v/tests/structs/struct_init_with_multi_nested_embed_update_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_multi_nested_embed_update_test.v rename to vlib/v/tests/structs/struct_init_with_multi_nested_embed_update_test.v diff --git a/vlib/v/tests/struct_init_with_multi_option_fn_type_test.v b/vlib/v/tests/structs/struct_init_with_multi_option_fn_type_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_multi_option_fn_type_test.v rename to vlib/v/tests/structs/struct_init_with_multi_option_fn_type_test.v diff --git a/vlib/v/tests/struct_init_with_update_test.v b/vlib/v/tests/structs/struct_init_with_update_test.v similarity index 100% rename from vlib/v/tests/struct_init_with_update_test.v rename to vlib/v/tests/structs/struct_init_with_update_test.v diff --git a/vlib/v/tests/struct_map_method_test.v b/vlib/v/tests/structs/struct_map_method_test.v similarity index 100% rename from vlib/v/tests/struct_map_method_test.v rename to vlib/v/tests/structs/struct_map_method_test.v diff --git a/vlib/v/tests/struct_multi_embed_method_call_test.v b/vlib/v/tests/structs/struct_multi_embed_method_call_test.v similarity index 100% rename from vlib/v/tests/struct_multi_embed_method_call_test.v rename to vlib/v/tests/structs/struct_multi_embed_method_call_test.v diff --git a/vlib/v/tests/struct_of_time_init_with_update_test.v b/vlib/v/tests/structs/struct_of_time_init_with_update_test.v similarity index 100% rename from vlib/v/tests/struct_of_time_init_with_update_test.v rename to vlib/v/tests/structs/struct_of_time_init_with_update_test.v diff --git a/vlib/v/tests/struct_option_field_zero_test.v b/vlib/v/tests/structs/struct_option_field_zero_test.v similarity index 100% rename from vlib/v/tests/struct_option_field_zero_test.v rename to vlib/v/tests/structs/struct_option_field_zero_test.v diff --git a/vlib/v/tests/struct_selector_or_block_test.v b/vlib/v/tests/structs/struct_selector_or_block_test.v similarity index 100% rename from vlib/v/tests/struct_selector_or_block_test.v rename to vlib/v/tests/structs/struct_selector_or_block_test.v diff --git a/vlib/v/tests/struct_shared_field_init_test.v b/vlib/v/tests/structs/struct_shared_field_init_test.v similarity index 100% rename from vlib/v/tests/struct_shared_field_init_test.v rename to vlib/v/tests/structs/struct_shared_field_init_test.v diff --git a/vlib/v/tests/struct_shared_field_with_default_init_test.v b/vlib/v/tests/structs/struct_shared_field_with_default_init_test.v similarity index 100% rename from vlib/v/tests/struct_shared_field_with_default_init_test.v rename to vlib/v/tests/structs/struct_shared_field_with_default_init_test.v diff --git a/vlib/v/tests/struct_test.v b/vlib/v/tests/structs/struct_test.v similarity index 100% rename from vlib/v/tests/struct_test.v rename to vlib/v/tests/structs/struct_test.v diff --git a/vlib/v/tests/struct_transmute_test.v b/vlib/v/tests/structs/struct_transmute_test.v similarity index 100% rename from vlib/v/tests/struct_transmute_test.v rename to vlib/v/tests/structs/struct_transmute_test.v diff --git a/vlib/v/tests/struct_with_reference_alias_field_test.v b/vlib/v/tests/structs/struct_with_reference_alias_field_test.v similarity index 100% rename from vlib/v/tests/struct_with_reference_alias_field_test.v rename to vlib/v/tests/structs/struct_with_reference_alias_field_test.v diff --git a/vlib/v/tests/structs_with_voidptr_fields_can_be_printed_test.v b/vlib/v/tests/structs/structs_with_voidptr_fields_can_be_printed_test.v similarity index 100% rename from vlib/v/tests/structs_with_voidptr_fields_can_be_printed_test.v rename to vlib/v/tests/structs/structs_with_voidptr_fields_can_be_printed_test.v diff --git a/vlib/v/tests/working_with_an_empty_struct_test.v b/vlib/v/tests/structs/working_with_an_empty_struct_test.v similarity index 100% rename from vlib/v/tests/working_with_an_empty_struct_test.v rename to vlib/v/tests/structs/working_with_an_empty_struct_test.v diff --git a/vlib/v/tests/aggregate_is_nodetype_test.v b/vlib/v/tests/sumtypes/aggregate_is_nodetype_test.v similarity index 100% rename from vlib/v/tests/aggregate_is_nodetype_test.v rename to vlib/v/tests/sumtypes/aggregate_is_nodetype_test.v diff --git a/vlib/v/tests/init_multiple_branches_test.v b/vlib/v/tests/sumtypes/init_multiple_branches_test.v similarity index 100% rename from vlib/v/tests/init_multiple_branches_test.v rename to vlib/v/tests/sumtypes/init_multiple_branches_test.v diff --git a/vlib/v/tests/mut_receiver_of_sumtype_test.v b/vlib/v/tests/sumtypes/mut_receiver_of_sumtype_test.v similarity index 100% rename from vlib/v/tests/mut_receiver_of_sumtype_test.v rename to vlib/v/tests/sumtypes/mut_receiver_of_sumtype_test.v diff --git a/vlib/v/tests/passing_sumtype_parameter_in_sumtype_matching_results_test.v b/vlib/v/tests/sumtypes/passing_sumtype_parameter_in_sumtype_matching_results_test.v similarity index 100% rename from vlib/v/tests/passing_sumtype_parameter_in_sumtype_matching_results_test.v rename to vlib/v/tests/sumtypes/passing_sumtype_parameter_in_sumtype_matching_results_test.v diff --git a/vlib/v/tests/sumtype_array_methods_test.v b/vlib/v/tests/sumtypes/sumtype_array_methods_test.v similarity index 100% rename from vlib/v/tests/sumtype_array_methods_test.v rename to vlib/v/tests/sumtypes/sumtype_array_methods_test.v diff --git a/vlib/v/tests/sumtype_as_cast_1_test.v b/vlib/v/tests/sumtypes/sumtype_as_cast_1_test.v similarity index 100% rename from vlib/v/tests/sumtype_as_cast_1_test.v rename to vlib/v/tests/sumtypes/sumtype_as_cast_1_test.v diff --git a/vlib/v/tests/sumtype_as_cast_2_test.v b/vlib/v/tests/sumtypes/sumtype_as_cast_2_test.v similarity index 100% rename from vlib/v/tests/sumtype_as_cast_2_test.v rename to vlib/v/tests/sumtypes/sumtype_as_cast_2_test.v diff --git a/vlib/v/tests/sumtype_assign_test.v b/vlib/v/tests/sumtypes/sumtype_assign_test.v similarity index 100% rename from vlib/v/tests/sumtype_assign_test.v rename to vlib/v/tests/sumtypes/sumtype_assign_test.v diff --git a/vlib/v/tests/sumtype_calls_test.v b/vlib/v/tests/sumtypes/sumtype_calls_test.v similarity index 100% rename from vlib/v/tests/sumtype_calls_test.v rename to vlib/v/tests/sumtypes/sumtype_calls_test.v diff --git a/vlib/v/tests/sum_type_common_fields_test.v b/vlib/v/tests/sumtypes/sumtype_common_fields_test.v similarity index 100% rename from vlib/v/tests/sum_type_common_fields_test.v rename to vlib/v/tests/sumtypes/sumtype_common_fields_test.v diff --git a/vlib/v/tests/sumtype_equality_test.v b/vlib/v/tests/sumtypes/sumtype_equality_test.v similarity index 100% rename from vlib/v/tests/sumtype_equality_test.v rename to vlib/v/tests/sumtypes/sumtype_equality_test.v diff --git a/vlib/v/tests/sumtype_init_test.v b/vlib/v/tests/sumtypes/sumtype_init_test.v similarity index 100% rename from vlib/v/tests/sumtype_init_test.v rename to vlib/v/tests/sumtypes/sumtype_init_test.v diff --git a/vlib/v/tests/sumtype_literal_test.v b/vlib/v/tests/sumtypes/sumtype_literal_test.v similarity index 100% rename from vlib/v/tests/sumtype_literal_test.v rename to vlib/v/tests/sumtypes/sumtype_literal_test.v diff --git a/vlib/v/tests/sumtype_on_match_test.v b/vlib/v/tests/sumtypes/sumtype_on_match_test.v similarity index 100% rename from vlib/v/tests/sumtype_on_match_test.v rename to vlib/v/tests/sumtypes/sumtype_on_match_test.v diff --git a/vlib/v/tests/sumtype_ptr_arg_test.v b/vlib/v/tests/sumtypes/sumtype_ptr_arg_test.v similarity index 100% rename from vlib/v/tests/sumtype_ptr_arg_test.v rename to vlib/v/tests/sumtypes/sumtype_ptr_arg_test.v diff --git a/vlib/v/tests/sumtype_str_for_subtypes_with_str_test.v b/vlib/v/tests/sumtypes/sumtype_str_for_subtypes_with_str_test.v similarity index 100% rename from vlib/v/tests/sumtype_str_for_subtypes_with_str_test.v rename to vlib/v/tests/sumtypes/sumtype_str_for_subtypes_with_str_test.v diff --git a/vlib/v/tests/sumtype_str_test.v b/vlib/v/tests/sumtypes/sumtype_str_test.v similarity index 100% rename from vlib/v/tests/sumtype_str_test.v rename to vlib/v/tests/sumtypes/sumtype_str_test.v diff --git a/vlib/v/tests/sum_type_test.v b/vlib/v/tests/sumtypes/sumtype_test.v similarity index 100% rename from vlib/v/tests/sum_type_test.v rename to vlib/v/tests/sumtypes/sumtype_test.v diff --git a/vlib/v/tests/sumtype_with_alias_fntype_fn_call_test.v b/vlib/v/tests/sumtypes/sumtype_with_alias_fntype_fn_call_test.v similarity index 100% rename from vlib/v/tests/sumtype_with_alias_fntype_fn_call_test.v rename to vlib/v/tests/sumtypes/sumtype_with_alias_fntype_fn_call_test.v diff --git a/vlib/v/tests/sumtype_with_alias_fntype_test.v b/vlib/v/tests/sumtypes/sumtype_with_alias_fntype_test.v similarity index 100% rename from vlib/v/tests/sumtype_with_alias_fntype_test.v rename to vlib/v/tests/sumtypes/sumtype_with_alias_fntype_test.v diff --git a/vlib/v/tests/sumtype_with_fntype_test.v b/vlib/v/tests/sumtypes/sumtype_with_fntype_test.v similarity index 100% rename from vlib/v/tests/sumtype_with_fntype_test.v rename to vlib/v/tests/sumtypes/sumtype_with_fntype_test.v diff --git a/vlib/v/tests/sumtype_with_reference_test.v b/vlib/v/tests/sumtypes/sumtype_with_reference_test.v similarity index 100% rename from vlib/v/tests/sumtype_with_reference_test.v rename to vlib/v/tests/sumtypes/sumtype_with_reference_test.v diff --git a/vlib/v/tests/sumtype_with_struct_fn_field_call_test.v b/vlib/v/tests/sumtypes/sumtype_with_struct_fn_field_call_test.v similarity index 100% rename from vlib/v/tests/sumtype_with_struct_fn_field_call_test.v rename to vlib/v/tests/sumtypes/sumtype_with_struct_fn_field_call_test.v diff --git a/vlib/v/tests/voidptr_sumtype_test.v b/vlib/v/tests/sumtypes/voidptr_sumtype_test.v similarity index 100% rename from vlib/v/tests/voidptr_sumtype_test.v rename to vlib/v/tests/sumtypes/voidptr_sumtype_test.v