From 65d9c8fa6f8139d4bbe0408870ee99991655f8f4 Mon Sep 17 00:00:00 2001 From: Delyan Angelov Date: Tue, 17 May 2022 20:19:37 +0300 Subject: [PATCH] tools: add a vet_known_failing_windows skip list to `v test-cleancode` --- cmd/tools/vtest-cleancode.v | 111 +++++++++++++++++++++--------------- 1 file changed, 65 insertions(+), 46 deletions(-) diff --git a/cmd/tools/vtest-cleancode.v b/cmd/tools/vtest-cleancode.v index f4a65a12b..6e559e054 100644 --- a/cmd/tools/vtest-cleancode.v +++ b/cmd/tools/vtest-cleancode.v @@ -5,52 +5,67 @@ import testing import v.util import arrays -const ( - vet_known_failing_exceptions = []string{} - vet_folders = [ - 'vlib/sqlite', - 'vlib/v', - 'vlib/x/json2', - 'vlib/x/ttf', - 'cmd/v', - 'cmd/tools', - 'examples/2048', - 'examples/tetris', - 'examples/term.ui', - ] - verify_known_failing_exceptions = [ - // Handcrafted meaningful formatting of code parts (mostly arrays) - 'examples/sokol/02_cubes_glsl/cube_glsl.v', - 'examples/sokol/03_march_tracing_glsl/rt_glsl.v', - 'examples/sokol/04_multi_shader_glsl/rt_glsl.v', - 'examples/sokol/05_instancing_glsl/rt_glsl.v', - 'examples/sokol/06_obj_viewer/show_obj.v', - 'vlib/v/checker/tests/modules/deprecated_module/main.v' /* adds deprecated_module. module prefix to imports, even though the folder has v.mod */, - 'vlib/gg/m4/graphic.v', - 'vlib/gg/m4/m4_test.v', - 'vlib/gg/m4/matrix.v', - 'vlib/builtin/int_test.v' /* special number formatting that should be tested */, - // TODOs and unfixed vfmt bugs - 'vlib/v/gen/js/tests/js.v', /* local `hello` fn, gets replaced with module `hello` aliased as `hl` */ - ] - vfmt_verify_list = [ - 'cmd/', - 'examples/', - 'tutorials/', - 'vlib/', - ] - vfmt_known_failing_exceptions = arrays.merge(verify_known_failing_exceptions, [ - 'vlib/regex/regex_test.v' /* contains meaningfull formatting of the test case data */, - 'vlib/crypto/sha512/sha512block_generic.v' /* formatting of large constant arrays wraps to too many lines */, - 'vlib/crypto/aes/const.v' /* formatting of large constant arrays wraps to too many lines */, - ]) -) +const vet_known_failing = [ + 'do_not_delete_this', +] -const ( - vexe = os.getenv('VEXE') - vroot = os.dir(vexe) - is_fix = '-fix' in os.args -) +const vet_known_failing_windows = [ + 'do_not_delete_this', + 'vlib/v/gen/js/tests/testdata/byte_is_space.v', + 'vlib/v/gen/js/tests/testdata/compare_ints.v', + 'vlib/v/gen/js/tests/testdata/hw.v', + 'vlib/v/gen/js/tests/testdata/string_methods.v', + 'vlib/v/tests/project_with_modules_having_submodules/bin/main.vsh', + 'vlib/v/tests/valgrind/simple_interpolation_script_mode.v', + 'vlib/v/tests/valgrind/simple_interpolation_script_mode_more_scopes.v', +] + +const vet_folders = [ + 'vlib/sqlite', + 'vlib/v', + 'vlib/x/json2', + 'vlib/x/ttf', + 'cmd/v', + 'cmd/tools', + 'examples/2048', + 'examples/tetris', + 'examples/term.ui', +] + +const verify_known_failing_exceptions = [ + // Handcrafted meaningful formatting of code parts (mostly arrays) + 'examples/sokol/02_cubes_glsl/cube_glsl.v', + 'examples/sokol/03_march_tracing_glsl/rt_glsl.v', + 'examples/sokol/04_multi_shader_glsl/rt_glsl.v', + 'examples/sokol/05_instancing_glsl/rt_glsl.v', + 'examples/sokol/06_obj_viewer/show_obj.v', + 'vlib/v/checker/tests/modules/deprecated_module/main.v' /* adds deprecated_module. module prefix to imports, even though the folder has v.mod */, + 'vlib/gg/m4/graphic.v', + 'vlib/gg/m4/m4_test.v', + 'vlib/gg/m4/matrix.v', + 'vlib/builtin/int_test.v' /* special number formatting that should be tested */, + // TODOs and unfixed vfmt bugs + 'vlib/v/gen/js/tests/js.v', /* local `hello` fn, gets replaced with module `hello` aliased as `hl` */ +] + +const vfmt_verify_list = [ + 'cmd/', + 'examples/', + 'tutorials/', + 'vlib/', +] + +const vfmt_known_failing_exceptions = arrays.merge(verify_known_failing_exceptions, [ + 'vlib/regex/regex_test.v' /* contains meaningfull formatting of the test case data */, + 'vlib/crypto/sha512/sha512block_generic.v' /* formatting of large constant arrays wraps to too many lines */, + 'vlib/crypto/aes/const.v' /* formatting of large constant arrays wraps to too many lines */, +]) + +const vexe = os.getenv('VEXE') + +const vroot = os.dir(vexe) + +const is_fix = '-fix' in os.args fn main() { args_string := os.args[1..].join(' ') @@ -76,8 +91,12 @@ fn tsession(vargs string, tool_source string, tool_cmd string, tool_args string, fn v_test_vetting(vargs string) { expanded_vet_list := util.find_all_v_files(vet_folders) or { return } + mut vet_known_exceptions := vet_known_failing.clone() + if os.user_os() == 'windows' { + vet_known_exceptions << vet_known_failing_windows + } vet_session := tsession(vargs, 'vvet', '${os.quoted_path(vexe)} vet', 'vet', expanded_vet_list, - vet_known_failing_exceptions) + vet_known_exceptions) // fmt_cmd, fmt_args := if is_fix { '${os.quoted_path(vexe)} fmt -w', 'fmt -w' -- 2.30.2