import os fn test_all_samples_can_be_compiled() { vexe := @VEXE vroot := os.dir(vexe) samples := os.walk_ext('$vroot/vlib/gg/testdata', '.vv') mut fails := []string{} for program_source in samples { compile_cmd := '${os.quoted_path(vexe)} ${os.quoted_path(program_source)}' res := os.execute(compile_cmd) if res.exit_code != 0 { eprintln('>>> FAIL $compile_cmd') eprintln(res.output) fails << compile_cmd } println('OK $compile_cmd') } if fails.len > 0 { eprintln('> Failed summary:') for f in fails { eprintln(' failed cmd: $f') } assert false } }