v

Зеркало из https://github.com/vlang/v
Форк
0
/
cli_test.v 
34 строки · 817.0 Байт
1
module main
2

3
import v.util.diff
4
import term
5
import os
6

7
const vexe = @VEXE
8
const vroot = os.dir(vexe)
9

10
fn test_cli_programs() {
11
	testdata := os.join_path(vroot, 'vlib', 'cli', 'testdata')
12
	mut has_err := false
13
	for test in os.walk_ext(testdata, '.vv') {
14
		print(test + ' ')
15
		out_path := test.all_before_last('.vv') + '.out'
16
		if !os.exists(out_path) {
17
			println(term.red('FAIL'))
18
			eprintln('failed to find output file for `${test}`')
19
			has_err = true
20
			continue
21
		}
22
		expected_out := os.read_file(out_path)!.replace('\r\n', '\n')
23
		test_out := os.execute('${vexe} run ${test}').output.replace('\r\n', '\n')
24
		diff_ := diff.compare_text(expected_out, test_out)!
25
		if diff_ != '' {
26
			println(term.red('FAIL'))
27
			eprintln(diff_)
28
			has_err = true
29
		} else {
30
			println(term.green('OK'))
31
		}
32
	}
33
	assert !has_err
34
}
35

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.