2021-06-16 18:57:51 +02:00
|
|
|
import os
|
|
|
|
|
|
|
|
const test_path = 'vcreate_test'
|
|
|
|
|
2021-06-19 20:36:12 +02:00
|
|
|
fn init_and_check() ? {
|
2021-06-22 17:52:34 +02:00
|
|
|
vexe := @VEXE
|
2021-07-20 13:04:35 +02:00
|
|
|
os.execute_or_exit('$vexe init')
|
2021-06-16 18:57:51 +02:00
|
|
|
|
|
|
|
assert os.read_file('vcreate_test.v') ? == [
|
|
|
|
'module main\n',
|
|
|
|
'fn main() {',
|
|
|
|
" println('Hello World!')",
|
|
|
|
'}',
|
|
|
|
'',
|
2021-12-17 15:11:19 +01:00
|
|
|
].join_lines()
|
2021-06-16 18:57:51 +02:00
|
|
|
|
|
|
|
assert os.read_file('v.mod') ? == [
|
|
|
|
'Module {',
|
|
|
|
" name: 'vcreate_test'",
|
|
|
|
" description: ''",
|
|
|
|
" version: ''",
|
|
|
|
" license: ''",
|
|
|
|
' dependencies: []',
|
|
|
|
'}',
|
|
|
|
'',
|
2021-12-17 15:11:19 +01:00
|
|
|
].join_lines()
|
2021-06-16 18:57:51 +02:00
|
|
|
|
|
|
|
assert os.read_file('.gitignore') ? == [
|
|
|
|
'# Binaries for programs and plugins',
|
|
|
|
'main',
|
|
|
|
'vcreate_test',
|
|
|
|
'*.exe',
|
|
|
|
'*.exe~',
|
|
|
|
'*.so',
|
|
|
|
'*.dylib',
|
|
|
|
'*.dll',
|
2021-11-19 18:23:35 +01:00
|
|
|
'vls.log',
|
2021-06-16 18:57:51 +02:00
|
|
|
'',
|
2021-12-17 15:11:19 +01:00
|
|
|
].join_lines()
|
|
|
|
|
|
|
|
assert os.read_file('.gitattributes') ? == [
|
|
|
|
'*.v linguist-language=V text=auto eol=lf',
|
|
|
|
'*.vv linguist-language=V text=auto eol=lf',
|
|
|
|
'',
|
|
|
|
].join_lines()
|
2021-06-16 18:57:51 +02:00
|
|
|
}
|
2021-06-19 20:36:12 +02:00
|
|
|
|
|
|
|
fn test_v_init() ? {
|
|
|
|
dir := os.join_path(os.temp_dir(), test_path)
|
|
|
|
os.rmdir_all(dir) or {}
|
2021-06-22 19:08:20 +02:00
|
|
|
os.mkdir(dir) or {}
|
2021-06-19 20:36:12 +02:00
|
|
|
defer {
|
|
|
|
os.rmdir_all(dir) or {}
|
|
|
|
}
|
2021-08-28 11:44:03 +02:00
|
|
|
os.chdir(dir) ?
|
2021-06-19 20:36:12 +02:00
|
|
|
|
|
|
|
init_and_check() ?
|
|
|
|
}
|
|
|
|
|
|
|
|
fn test_v_init_in_git_dir() ? {
|
|
|
|
dir := os.join_path(os.temp_dir(), test_path)
|
|
|
|
os.rmdir_all(dir) or {}
|
2021-06-22 19:08:20 +02:00
|
|
|
os.mkdir(dir) or {}
|
2021-06-19 20:36:12 +02:00
|
|
|
defer {
|
|
|
|
os.rmdir_all(dir) or {}
|
|
|
|
}
|
2021-08-28 11:44:03 +02:00
|
|
|
os.chdir(dir) ?
|
2021-07-20 13:04:35 +02:00
|
|
|
os.execute_or_exit('git init .')
|
2021-06-19 20:36:12 +02:00
|
|
|
init_and_check() ?
|
|
|
|
}
|
|
|
|
|
|
|
|
fn test_v_init_no_overwrite_gitignore() ? {
|
|
|
|
dir := os.join_path(os.temp_dir(), test_path)
|
|
|
|
os.rmdir_all(dir) or {}
|
|
|
|
os.mkdir(dir) or {}
|
|
|
|
os.write_file('$dir/.gitignore', 'blah') ?
|
|
|
|
defer {
|
|
|
|
os.rmdir_all(dir) or {}
|
|
|
|
}
|
2021-08-28 11:44:03 +02:00
|
|
|
os.chdir(dir) ?
|
2021-06-19 20:36:12 +02:00
|
|
|
|
2021-06-22 17:52:34 +02:00
|
|
|
vexe := @VEXE
|
2021-07-20 13:04:35 +02:00
|
|
|
os.execute_or_exit('$vexe init')
|
2021-06-19 20:36:12 +02:00
|
|
|
|
|
|
|
assert os.read_file('.gitignore') ? == 'blah'
|
|
|
|
}
|