mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
vfmt: shorten main.const_name
to just const_name
This commit is contained in:
parent
ea11488339
commit
dbaccd4272
@ -131,10 +131,10 @@ fn (vd VDoc) render_search_index(out Output) {
|
||||
|
||||
fn (mut vd VDoc) render_static_html(out Output) {
|
||||
vd.assets = {
|
||||
'doc_css': vd.get_resource(main.css_js_assets[0], out)
|
||||
'normalize_css': vd.get_resource(main.css_js_assets[1], out)
|
||||
'doc_js': vd.get_resource(main.css_js_assets[2], out)
|
||||
'dark_mode_js': vd.get_resource(main.css_js_assets[3], out)
|
||||
'doc_css': vd.get_resource(css_js_assets[0], out)
|
||||
'normalize_css': vd.get_resource(css_js_assets[1], out)
|
||||
'doc_js': vd.get_resource(css_js_assets[2], out)
|
||||
'dark_mode_js': vd.get_resource(css_js_assets[3], out)
|
||||
'light_icon': vd.get_resource('light.svg', out)
|
||||
'dark_icon': vd.get_resource('dark.svg', out)
|
||||
'menu_icon': vd.get_resource('menu.svg', out)
|
||||
@ -144,7 +144,7 @@ fn (mut vd VDoc) render_static_html(out Output) {
|
||||
|
||||
fn (vd VDoc) get_resource(name string, out Output) string {
|
||||
cfg := vd.cfg
|
||||
path := os.join_path(main.res_path, name)
|
||||
path := os.join_path(res_path, name)
|
||||
mut res := os.read_file(path) or { panic('vdoc: could not read $path') }
|
||||
/*
|
||||
if minify {
|
||||
@ -294,7 +294,7 @@ fn (vd VDoc) gen_html(d doc.Doc) string {
|
||||
symbols_toc_str := symbols_toc.str()
|
||||
modules_toc.free()
|
||||
symbols_toc.free()
|
||||
return main.html_content.replace('{{ title }}', d.head.name).replace('{{ head_name }}',
|
||||
return html_content.replace('{{ title }}', d.head.name).replace('{{ head_name }}',
|
||||
header_name).replace('{{ version }}', version).replace('{{ light_icon }}', vd.assets['light_icon']).replace('{{ dark_icon }}',
|
||||
vd.assets['dark_icon']).replace('{{ menu_icon }}', vd.assets['menu_icon']).replace('{{ head_assets }}',
|
||||
if cfg.inline_assets {
|
||||
@ -452,7 +452,7 @@ fn doc_node_html(dn doc.DocNode, link string, head bool, include_examples bool,
|
||||
dnw.write('${tabs[2]}<div class="title"><$head_tag>$dn.kind $sym_name$hash_link</$head_tag>')
|
||||
}
|
||||
if link.len != 0 {
|
||||
dnw.write('<a class="link" rel="noreferrer" target="_blank" href="$link">$main.link_svg</a>')
|
||||
dnw.write('<a class="link" rel="noreferrer" target="_blank" href="$link">$link_svg</a>')
|
||||
}
|
||||
dnw.write('</div>')
|
||||
}
|
||||
|
@ -247,7 +247,7 @@ fn (mut vd VDoc) generate_docs_from_file() {
|
||||
exit(1)
|
||||
}
|
||||
dir_path := if cfg.is_vlib {
|
||||
main.vroot
|
||||
vroot
|
||||
} else if os.is_dir(cfg.input_path) {
|
||||
cfg.input_path
|
||||
} else {
|
||||
@ -404,8 +404,8 @@ fn parse_arguments(args []string) Config {
|
||||
}
|
||||
'-f' {
|
||||
format := cmdline.option(current_args, '-f', '')
|
||||
if format !in main.allowed_formats {
|
||||
allowed_str := main.allowed_formats.join(', ')
|
||||
if format !in allowed_formats {
|
||||
allowed_str := allowed_formats.join(', ')
|
||||
eprintln('vdoc: "$format" is not a valid format. Only $allowed_str are allowed.')
|
||||
exit(1)
|
||||
}
|
||||
@ -472,7 +472,7 @@ fn parse_arguments(args []string) Config {
|
||||
if cfg.input_path.trim_right('/') == 'vlib' {
|
||||
cfg.is_vlib = true
|
||||
cfg.is_multi = true
|
||||
cfg.input_path = os.join_path(main.vroot, 'vlib')
|
||||
cfg.input_path = os.join_path(vroot, 'vlib')
|
||||
} else if !is_path {
|
||||
// TODO vd.vprintln('Input "$cfg.input_path" is not a valid path. Looking for modules named "$cfg.input_path"...')
|
||||
mod_path := doc.lookup_module(cfg.input_path) or {
|
||||
@ -486,7 +486,7 @@ fn parse_arguments(args []string) Config {
|
||||
|
||||
fn main() {
|
||||
if os.args.len < 2 || '-h' in os.args || '--help' in os.args || os.args[1..] == ['doc', 'help'] {
|
||||
os.system('$main.vexe help doc')
|
||||
os.system('$vexe help doc')
|
||||
exit(0)
|
||||
}
|
||||
args := os.args[2..].clone()
|
||||
|
@ -48,7 +48,7 @@ fn check_path(vexe string, dir string, tests []string) int {
|
||||
println(found)
|
||||
println('============\n')
|
||||
println('diff:')
|
||||
println(util.color_compare_strings(main.diff_cmd, found, expected))
|
||||
println(util.color_compare_strings(diff_cmd, found, expected))
|
||||
println('============\n')
|
||||
nb_fail++
|
||||
} else {
|
||||
|
@ -38,12 +38,12 @@ const show_warnings = '-hide-warnings' !in vet_options
|
||||
|
||||
fn main() {
|
||||
opt := Options{
|
||||
is_verbose: main.is_verbose
|
||||
is_verbose: is_verbose
|
||||
}
|
||||
mut vet := Vet{
|
||||
opt: opt
|
||||
}
|
||||
mut paths := cmdline.only_non_options(main.vet_options)
|
||||
mut paths := cmdline.only_non_options(vet_options)
|
||||
vtmp := os.getenv('VTMP')
|
||||
if vtmp != '' {
|
||||
// `v test-cleancode` passes also `-o tmpfolder` as well as all options in VFLAGS
|
||||
@ -57,7 +57,7 @@ fn main() {
|
||||
}
|
||||
if path.ends_with('.v') || path.ends_with('.vv') {
|
||||
if path.contains('cmd/tools/vvet/tests/') {
|
||||
if main.is_force || paths.len == 1 {
|
||||
if is_force || paths.len == 1 {
|
||||
vet.vet_file(path, true)
|
||||
continue
|
||||
} else {
|
||||
@ -79,7 +79,7 @@ fn main() {
|
||||
files << vfiles
|
||||
files << vvfiles
|
||||
for file in files {
|
||||
if !main.is_force && file.ends_with('.vv') && file.contains('cmd/tools/vvet/tests/') {
|
||||
if !is_force && file.ends_with('.vv') && file.contains('cmd/tools/vvet/tests/') {
|
||||
continue
|
||||
}
|
||||
vet.vet_file(file, false)
|
||||
@ -90,7 +90,7 @@ fn main() {
|
||||
warnings := vet.errors.filter(it.kind == .warning)
|
||||
errors := vet.errors.filter(it.kind == .error)
|
||||
errors_vfmt := vet.errors.filter(it.kind == .error && it.fix == .vfmt)
|
||||
if main.show_warnings {
|
||||
if show_warnings {
|
||||
for err in warnings {
|
||||
eprintln('$err.file_path:$err.pos.line_nr: warning: $err.message')
|
||||
}
|
||||
|
@ -94,7 +94,7 @@ fn main() {
|
||||
}
|
||||
// Start calling the correct functions/external tools
|
||||
// Note for future contributors: Please add new subcommands in the `match` block below.
|
||||
if command in main.simple_cmd {
|
||||
if command in simple_cmd {
|
||||
// External tools
|
||||
util.launch_tool(prefs.is_verbose, 'v' + command, os.args[1..])
|
||||
return
|
||||
|
16
doc/docs.md
16
doc/docs.md
@ -1679,8 +1679,8 @@ const (
|
||||
world = '世界'
|
||||
)
|
||||
|
||||
println(main.pi)
|
||||
println(main.world)
|
||||
println(pi)
|
||||
println(world)
|
||||
```
|
||||
|
||||
Constants are declared with `const`. They can only be defined
|
||||
@ -1716,17 +1716,19 @@ const (
|
||||
blue = rgb(0, 0, 255)
|
||||
)
|
||||
|
||||
println(main.numbers)
|
||||
println(main.red)
|
||||
println(main.blue)
|
||||
println(numbers)
|
||||
println(red)
|
||||
println(blue)
|
||||
```
|
||||
|
||||
Global variables are not allowed, so this can be really useful.
|
||||
|
||||
When naming constants, `snake_case` must be used. In order to distinguish consts
|
||||
from local variables, the full path to consts must be specified. For example,
|
||||
to access the PI const, full `math.pi` name must be used both outside the `math` module,
|
||||
and inside it. This can be seen in the example above with `println(main.numbers)`.
|
||||
to access the PI const, full `math.pi` name must be used both outside the `math`
|
||||
module, and inside it. That restriction is relaxed only for the `main` module
|
||||
(the one containing your `fn main()`, where you can use the shorter name of the
|
||||
constants too, i.e. just `println(numbers)`, not `println(main.numbers)` .
|
||||
|
||||
vfmt takes care of this rule, so you can type `println(pi)` inside the `math` module,
|
||||
and vffmt will automatically update it to `println(math.pi)`.
|
||||
|
@ -307,7 +307,7 @@ fn test_fixed() {
|
||||
nums[1] = 7
|
||||
assert nums[1] == 7
|
||||
nums2 := [5]int{} // c_n
|
||||
assert nums2[main.c_n - 1] == 0
|
||||
assert nums2[c_n - 1] == 0
|
||||
}
|
||||
|
||||
fn modify(mut numbers []int) {
|
||||
@ -1101,12 +1101,12 @@ const (
|
||||
)
|
||||
|
||||
fn test_multidimensional_array_initialization_with_consts() {
|
||||
mut data := [][][]int{len: main.grid_size_1, init: [][]int{len: main.grid_size_2, init: []int{len: main.grid_size_3, init: main.cell_value}}}
|
||||
assert data.len == main.grid_size_1
|
||||
assert data[0].len == main.grid_size_2
|
||||
assert data[0][0].len == main.grid_size_3
|
||||
assert data[0][0][0] == main.cell_value
|
||||
assert data[1][1][1] == main.cell_value
|
||||
mut data := [][][]int{len: grid_size_1, init: [][]int{len: grid_size_2, init: []int{len: grid_size_3, init: cell_value}}}
|
||||
assert data.len == grid_size_1
|
||||
assert data[0].len == grid_size_2
|
||||
assert data[0][0].len == grid_size_3
|
||||
assert data[0][0][0] == cell_value
|
||||
assert data[1][1][1] == cell_value
|
||||
}
|
||||
|
||||
fn test_byteptr_vbytes() {
|
||||
|
@ -67,7 +67,7 @@ const (
|
||||
|
||||
fn main() {
|
||||
// get a mutable reference to the subscriber
|
||||
mut sub := main.eb.subscriber
|
||||
mut sub := eb.subscriber
|
||||
// subscribe to the 'error' event
|
||||
sub.subscribe('error', on_error)
|
||||
// start the work
|
||||
|
@ -8,18 +8,18 @@ const (
|
||||
)
|
||||
|
||||
fn testsuite_begin() {
|
||||
eprintln('testsuite_begin, tfolder = $main.tfolder')
|
||||
os.rmdir_all(main.tfolder)
|
||||
assert !os.is_dir(main.tfolder)
|
||||
os.mkdir_all(main.tfolder)
|
||||
os.chdir(main.tfolder)
|
||||
assert os.is_dir(main.tfolder)
|
||||
eprintln('testsuite_begin, tfolder = $tfolder')
|
||||
os.rmdir_all(tfolder)
|
||||
assert !os.is_dir(tfolder)
|
||||
os.mkdir_all(tfolder)
|
||||
os.chdir(tfolder)
|
||||
assert os.is_dir(tfolder)
|
||||
}
|
||||
|
||||
fn testsuite_end() {
|
||||
os.chdir(os.wd_at_startup)
|
||||
os.rmdir_all(main.tfolder)
|
||||
assert !os.is_dir(main.tfolder)
|
||||
os.rmdir_all(tfolder)
|
||||
assert !os.is_dir(tfolder)
|
||||
}
|
||||
|
||||
fn test_inode_file_type() {
|
||||
|
@ -12,21 +12,21 @@ const (
|
||||
const args_at_start = os.args.clone()
|
||||
|
||||
fn testsuite_begin() {
|
||||
eprintln('testsuite_begin, tfolder = $main.tfolder')
|
||||
os.rmdir_all(main.tfolder)
|
||||
assert !os.is_dir(main.tfolder)
|
||||
os.mkdir_all(main.tfolder)
|
||||
os.chdir(main.tfolder)
|
||||
assert os.is_dir(main.tfolder)
|
||||
eprintln('testsuite_begin, tfolder = $tfolder')
|
||||
os.rmdir_all(tfolder)
|
||||
assert !os.is_dir(tfolder)
|
||||
os.mkdir_all(tfolder)
|
||||
os.chdir(tfolder)
|
||||
assert os.is_dir(tfolder)
|
||||
// println('args_at_start: $args_at_start')
|
||||
assert main.args_at_start.len > 0
|
||||
assert main.args_at_start == os.args
|
||||
assert args_at_start.len > 0
|
||||
assert args_at_start == os.args
|
||||
}
|
||||
|
||||
fn testsuite_end() {
|
||||
os.chdir(os.wd_at_startup)
|
||||
os.rmdir_all(main.tfolder)
|
||||
assert !os.is_dir(main.tfolder)
|
||||
os.rmdir_all(tfolder)
|
||||
assert !os.is_dir(tfolder)
|
||||
// eprintln('testsuite_end , tfolder = $tfolder removed.')
|
||||
}
|
||||
|
||||
@ -434,8 +434,8 @@ struct IntPoint {
|
||||
|
||||
fn test_write_file_array_bytes() {
|
||||
fpath := './abytes.bin'
|
||||
mut arr := []byte{len: main.maxn}
|
||||
for i in 0 .. main.maxn {
|
||||
mut arr := []byte{len: maxn}
|
||||
for i in 0 .. maxn {
|
||||
arr[i] = 65 + byte(i)
|
||||
}
|
||||
os.write_file_array(fpath, arr)
|
||||
@ -447,14 +447,14 @@ fn test_write_file_array_bytes() {
|
||||
|
||||
fn test_write_file_array_structs() {
|
||||
fpath := './astructs.bin'
|
||||
mut arr := []IntPoint{len: main.maxn}
|
||||
for i in 0 .. main.maxn {
|
||||
mut arr := []IntPoint{len: maxn}
|
||||
for i in 0 .. maxn {
|
||||
arr[i] = IntPoint{65 + i, 65 + i + 10}
|
||||
}
|
||||
os.write_file_array(fpath, arr)
|
||||
rarr := os.read_file_array<IntPoint>(fpath)
|
||||
assert rarr == arr
|
||||
assert rarr.len == main.maxn
|
||||
assert rarr.len == maxn
|
||||
// eprintln( rarr.str().replace('\n', ' ').replace('},', '},\n'))
|
||||
}
|
||||
|
||||
|
@ -76,7 +76,7 @@ const (
|
||||
)
|
||||
|
||||
fn test_from() {
|
||||
for item in main.versions_to_test {
|
||||
for item in versions_to_test {
|
||||
ver := semver.from(item.raw) or {
|
||||
assert false
|
||||
return
|
||||
@ -87,7 +87,7 @@ fn test_from() {
|
||||
assert ver.metadata == item.metadata
|
||||
assert ver.prerelease == item.prerelease
|
||||
}
|
||||
for ver in main.invalid_versions_to_test {
|
||||
for ver in invalid_versions_to_test {
|
||||
semver.from(ver) or {
|
||||
assert true
|
||||
continue
|
||||
@ -140,7 +140,7 @@ fn test_compare() {
|
||||
}
|
||||
|
||||
fn test_satisfies() {
|
||||
for item in main.ranges_to_test {
|
||||
for item in ranges_to_test {
|
||||
ver := semver.from(item.raw_version) or {
|
||||
assert false
|
||||
return
|
||||
@ -155,13 +155,13 @@ fn test_satisfies_invalid() {
|
||||
assert false
|
||||
return
|
||||
}
|
||||
for item in main.invalid_ranges_to_test {
|
||||
for item in invalid_ranges_to_test {
|
||||
assert ver.satisfies(item) == false
|
||||
}
|
||||
}
|
||||
|
||||
fn test_coerce() {
|
||||
for item in main.coerce_to_test {
|
||||
for item in coerce_to_test {
|
||||
valid := semver.from(item.valid) or {
|
||||
assert false
|
||||
return
|
||||
@ -183,10 +183,10 @@ fn test_coerce_invalid() {
|
||||
}
|
||||
|
||||
fn test_is_valid() {
|
||||
for item in main.versions_to_test {
|
||||
for item in versions_to_test {
|
||||
assert semver.is_valid(item.raw)
|
||||
}
|
||||
for item in main.invalid_versions_to_test {
|
||||
for item in invalid_versions_to_test {
|
||||
assert semver.is_valid(item) == false
|
||||
}
|
||||
}
|
||||
|
@ -48,19 +48,19 @@ const (
|
||||
fn test_big_sb() {
|
||||
mut sb := strings.new_builder(100)
|
||||
mut sb2 := strings.new_builder(10000)
|
||||
for i in 0 .. main.maxn {
|
||||
for i in 0 .. maxn {
|
||||
sb.writeln(i.str())
|
||||
sb2.write('+')
|
||||
}
|
||||
s := sb.str()
|
||||
lines := s.split_into_lines()
|
||||
assert lines.len == main.maxn
|
||||
assert lines.len == maxn
|
||||
assert lines[0] == '0'
|
||||
assert lines[1] == '1'
|
||||
assert lines[777] == '777'
|
||||
assert lines[98765] == '98765'
|
||||
println(sb2.len)
|
||||
assert sb2.len == main.maxn
|
||||
assert sb2.len == maxn
|
||||
}
|
||||
|
||||
fn test_byte_write() {
|
||||
|
@ -19,70 +19,70 @@ fn test_now_format() {
|
||||
}
|
||||
|
||||
fn test_format() {
|
||||
assert '11.07.1980 21:23' == main.time_to_test.get_fmt_str(.dot, .hhmm24, .ddmmyyyy)
|
||||
assert '11.07.1980 21:23' == time_to_test.get_fmt_str(.dot, .hhmm24, .ddmmyyyy)
|
||||
}
|
||||
|
||||
fn test_hhmm() {
|
||||
assert '21:23' == main.time_to_test.hhmm()
|
||||
assert '21:23' == time_to_test.hhmm()
|
||||
}
|
||||
|
||||
fn test_hhmm12() {
|
||||
assert '9:23 p.m.' == main.time_to_test.hhmm12()
|
||||
assert '9:23 p.m.' == time_to_test.hhmm12()
|
||||
}
|
||||
|
||||
fn test_hhmmss() {
|
||||
assert '21:23:42' == main.time_to_test.hhmmss()
|
||||
assert '21:23:42' == time_to_test.hhmmss()
|
||||
}
|
||||
|
||||
fn test_ymmdd() {
|
||||
assert '1980-07-11' == main.time_to_test.ymmdd()
|
||||
assert '1980-07-11' == time_to_test.ymmdd()
|
||||
}
|
||||
|
||||
fn test_ddmmy() {
|
||||
assert '11.07.1980' == main.time_to_test.ddmmy()
|
||||
assert '11.07.1980' == time_to_test.ddmmy()
|
||||
}
|
||||
|
||||
fn test_md() {
|
||||
assert 'Jul 11' == main.time_to_test.md()
|
||||
assert 'Jul 11' == time_to_test.md()
|
||||
}
|
||||
|
||||
fn test_get_fmt_time_str() {
|
||||
assert '21:23:42' == main.time_to_test.get_fmt_time_str(.hhmmss24)
|
||||
assert '21:23' == main.time_to_test.get_fmt_time_str(.hhmm24)
|
||||
assert '9:23:42 p.m.' == main.time_to_test.get_fmt_time_str(.hhmmss12)
|
||||
assert '9:23 p.m.' == main.time_to_test.get_fmt_time_str(.hhmm12)
|
||||
assert '21:23:42' == time_to_test.get_fmt_time_str(.hhmmss24)
|
||||
assert '21:23' == time_to_test.get_fmt_time_str(.hhmm24)
|
||||
assert '9:23:42 p.m.' == time_to_test.get_fmt_time_str(.hhmmss12)
|
||||
assert '9:23 p.m.' == time_to_test.get_fmt_time_str(.hhmm12)
|
||||
}
|
||||
|
||||
fn test_get_fmt_date_str() {
|
||||
assert '11.07.1980' == main.time_to_test.get_fmt_date_str(.dot, .ddmmyyyy)
|
||||
assert '11/07/1980' == main.time_to_test.get_fmt_date_str(.slash, .ddmmyyyy)
|
||||
assert '11-07-1980' == main.time_to_test.get_fmt_date_str(.hyphen, .ddmmyyyy)
|
||||
assert '11 07 1980' == main.time_to_test.get_fmt_date_str(.space, .ddmmyyyy)
|
||||
assert '07.11.1980' == main.time_to_test.get_fmt_date_str(.dot, .mmddyyyy)
|
||||
assert '07/11/1980' == main.time_to_test.get_fmt_date_str(.slash, .mmddyyyy)
|
||||
assert '07-11-1980' == main.time_to_test.get_fmt_date_str(.hyphen, .mmddyyyy)
|
||||
assert '07 11 1980' == main.time_to_test.get_fmt_date_str(.space, .mmddyyyy)
|
||||
assert '11.07.80' == main.time_to_test.get_fmt_date_str(.dot, .ddmmyy)
|
||||
assert '11/07/80' == main.time_to_test.get_fmt_date_str(.slash, .ddmmyy)
|
||||
assert '11-07-80' == main.time_to_test.get_fmt_date_str(.hyphen, .ddmmyy)
|
||||
assert '11 07 80' == main.time_to_test.get_fmt_date_str(.space, .ddmmyy)
|
||||
assert '07.11.80' == main.time_to_test.get_fmt_date_str(.dot, .mmddyy)
|
||||
assert '07/11/80' == main.time_to_test.get_fmt_date_str(.slash, .mmddyy)
|
||||
assert '07-11-80' == main.time_to_test.get_fmt_date_str(.hyphen, .mmddyy)
|
||||
assert '07 11 80' == main.time_to_test.get_fmt_date_str(.space, .mmddyy)
|
||||
assert 'Jul 11' == main.time_to_test.get_fmt_date_str(.space, .mmmd)
|
||||
assert 'Jul 11' == main.time_to_test.get_fmt_date_str(.space, .mmmdd)
|
||||
assert 'Jul 11 1980' == main.time_to_test.get_fmt_date_str(.space, .mmmddyyyy)
|
||||
assert '1980-07-11' == main.time_to_test.get_fmt_date_str(.hyphen, .yyyymmdd)
|
||||
assert '11.07.1980' == time_to_test.get_fmt_date_str(.dot, .ddmmyyyy)
|
||||
assert '11/07/1980' == time_to_test.get_fmt_date_str(.slash, .ddmmyyyy)
|
||||
assert '11-07-1980' == time_to_test.get_fmt_date_str(.hyphen, .ddmmyyyy)
|
||||
assert '11 07 1980' == time_to_test.get_fmt_date_str(.space, .ddmmyyyy)
|
||||
assert '07.11.1980' == time_to_test.get_fmt_date_str(.dot, .mmddyyyy)
|
||||
assert '07/11/1980' == time_to_test.get_fmt_date_str(.slash, .mmddyyyy)
|
||||
assert '07-11-1980' == time_to_test.get_fmt_date_str(.hyphen, .mmddyyyy)
|
||||
assert '07 11 1980' == time_to_test.get_fmt_date_str(.space, .mmddyyyy)
|
||||
assert '11.07.80' == time_to_test.get_fmt_date_str(.dot, .ddmmyy)
|
||||
assert '11/07/80' == time_to_test.get_fmt_date_str(.slash, .ddmmyy)
|
||||
assert '11-07-80' == time_to_test.get_fmt_date_str(.hyphen, .ddmmyy)
|
||||
assert '11 07 80' == time_to_test.get_fmt_date_str(.space, .ddmmyy)
|
||||
assert '07.11.80' == time_to_test.get_fmt_date_str(.dot, .mmddyy)
|
||||
assert '07/11/80' == time_to_test.get_fmt_date_str(.slash, .mmddyy)
|
||||
assert '07-11-80' == time_to_test.get_fmt_date_str(.hyphen, .mmddyy)
|
||||
assert '07 11 80' == time_to_test.get_fmt_date_str(.space, .mmddyy)
|
||||
assert 'Jul 11' == time_to_test.get_fmt_date_str(.space, .mmmd)
|
||||
assert 'Jul 11' == time_to_test.get_fmt_date_str(.space, .mmmdd)
|
||||
assert 'Jul 11 1980' == time_to_test.get_fmt_date_str(.space, .mmmddyyyy)
|
||||
assert '1980-07-11' == time_to_test.get_fmt_date_str(.hyphen, .yyyymmdd)
|
||||
}
|
||||
|
||||
fn test_get_fmt_str() {
|
||||
// Since get_fmt_time_str and get_fmt_date_str do have comprehensive
|
||||
// tests I don't want to exaggerate here with all possible
|
||||
// combinations.
|
||||
assert '11.07.1980 21:23:42' == main.time_to_test.get_fmt_str(.dot, .hhmmss24, .ddmmyyyy)
|
||||
assert '11.07.1980 21:23:42' == time_to_test.get_fmt_str(.dot, .hhmmss24, .ddmmyyyy)
|
||||
}
|
||||
|
||||
fn test_utc_string() {
|
||||
assert 'Fri, 11 Jul 1980 21:23:42 UTC' == main.time_to_test.utc_string()
|
||||
assert 'Fri, 11 Jul 1980 21:23:42 UTC' == time_to_test.utc_string()
|
||||
}
|
||||
|
@ -83,17 +83,17 @@ fn test_unix() {
|
||||
}
|
||||
|
||||
fn test_format_ss() {
|
||||
assert '11.07.1980 21:23:42' == main.time_to_test.get_fmt_str(.dot, .hhmmss24, .ddmmyyyy)
|
||||
assert '11.07.1980 21:23:42' == time_to_test.get_fmt_str(.dot, .hhmmss24, .ddmmyyyy)
|
||||
}
|
||||
|
||||
fn test_format_ss_milli() {
|
||||
assert '11.07.1980 21:23:42.123' == main.time_to_test.get_fmt_str(.dot, .hhmmss24_milli, .ddmmyyyy)
|
||||
assert '1980-07-11 21:23:42.123' == main.time_to_test.format_ss_milli()
|
||||
assert '11.07.1980 21:23:42.123' == time_to_test.get_fmt_str(.dot, .hhmmss24_milli, .ddmmyyyy)
|
||||
assert '1980-07-11 21:23:42.123' == time_to_test.format_ss_milli()
|
||||
}
|
||||
|
||||
fn test_format_ss_micro() {
|
||||
assert '11.07.1980 21:23:42.123456' == main.time_to_test.get_fmt_str(.dot, .hhmmss24_micro, .ddmmyyyy)
|
||||
assert '1980-07-11 21:23:42.123456' == main.time_to_test.format_ss_micro()
|
||||
assert '11.07.1980 21:23:42.123456' == time_to_test.get_fmt_str(.dot, .hhmmss24_micro, .ddmmyyyy)
|
||||
assert '1980-07-11 21:23:42.123456' == time_to_test.format_ss_micro()
|
||||
}
|
||||
|
||||
fn test_smonth() {
|
||||
@ -153,12 +153,12 @@ fn test_add() {
|
||||
d_seconds := 3
|
||||
d_microseconds := 13
|
||||
duration := time.Duration(d_seconds * time.second + d_microseconds * time.microsecond)
|
||||
t1 := main.time_to_test
|
||||
t2 := main.time_to_test.add(duration)
|
||||
t1 := time_to_test
|
||||
t2 := time_to_test.add(duration)
|
||||
assert t2.second == t1.second + d_seconds
|
||||
assert t2.microsecond == t1.microsecond + d_microseconds
|
||||
assert t2.unix == t1.unix + u64(d_seconds)
|
||||
t3 := main.time_to_test.add(-duration)
|
||||
t3 := time_to_test.add(-duration)
|
||||
assert t3.second == t1.second - d_seconds
|
||||
assert t3.microsecond == t1.microsecond - d_microseconds
|
||||
assert t3.unix == t1.unix - u64(d_seconds)
|
||||
@ -166,13 +166,13 @@ fn test_add() {
|
||||
|
||||
fn test_add_days() {
|
||||
num_of_days := 3
|
||||
t := main.time_to_test.add_days(num_of_days)
|
||||
assert t.day == main.time_to_test.day + num_of_days
|
||||
assert t.unix == main.time_to_test.unix + 86400 * u64(num_of_days)
|
||||
t := time_to_test.add_days(num_of_days)
|
||||
assert t.day == time_to_test.day + num_of_days
|
||||
assert t.unix == time_to_test.unix + 86400 * u64(num_of_days)
|
||||
}
|
||||
|
||||
fn test_str() {
|
||||
assert '1980-07-11 21:23:42' == main.time_to_test.str()
|
||||
assert '1980-07-11 21:23:42' == time_to_test.str()
|
||||
}
|
||||
|
||||
// not optimal test but will find obvious bugs
|
||||
|
@ -1150,16 +1150,24 @@ pub fn (mut f Fmt) ident(node ast.Ident) {
|
||||
// This allows using the variable `minute` inside time's functions
|
||||
// and also makes it clear that a module const is being used
|
||||
// (since V's conts are no longer ALL_CAP).
|
||||
// ^^^ except for `main`, where consts are allowed to not have a `main.` prefix.
|
||||
if !node.name.contains('.') && !f.inside_const {
|
||||
full_name := f.cur_mod + '.' + node.name
|
||||
if obj := f.file.global_scope.find(full_name) {
|
||||
if obj is ast.ConstField {
|
||||
// "v.fmt.foo" => "fmt.foo"
|
||||
vals := full_name.split('.')
|
||||
short := vals[vals.len - 2] + '.' + vals[vals.len - 1]
|
||||
mod_prefix := vals[vals.len - 2]
|
||||
const_name := vals[vals.len - 1]
|
||||
// f.write(f.short_module(full_name))
|
||||
f.write(short)
|
||||
return
|
||||
if mod_prefix == 'main' {
|
||||
f.write(const_name)
|
||||
return
|
||||
} else {
|
||||
short := mod_prefix + '.' + const_name
|
||||
f.write(short)
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ fn test_fmt() {
|
||||
vexe := os.getenv('VEXE')
|
||||
if vexe.len == 0 || !os.exists(vexe) {
|
||||
eprintln('VEXE must be set')
|
||||
exit(main.error_missing_vexe)
|
||||
exit(error_missing_vexe)
|
||||
}
|
||||
vroot := os.dir(vexe)
|
||||
os.chdir(vroot)
|
||||
@ -59,7 +59,7 @@ fn test_fmt() {
|
||||
if expected_ocontent != result_ocontent {
|
||||
fmt_bench.fail()
|
||||
eprintln(fmt_bench.step_message_fail('file $vrelpath after formatting, does not look as expected.'))
|
||||
if ipath.ends_with(main.b2v_keep_path) {
|
||||
if ipath.ends_with(b2v_keep_path) {
|
||||
continue
|
||||
}
|
||||
if diff_cmd == '' {
|
||||
@ -79,19 +79,19 @@ fn test_fmt() {
|
||||
eprintln(term.h_divider('-'))
|
||||
eprintln(fmt_bench.total_message(fmt_message))
|
||||
if fmt_bench.nfail > 0 {
|
||||
exit(main.error_failed_tests)
|
||||
exit(error_failed_tests)
|
||||
}
|
||||
}
|
||||
|
||||
fn fill_bin2v_keep() ? {
|
||||
img0 := os.join_path('tutorials', 'img', 'hello.png')
|
||||
img1 := os.join_path('tutorials', 'img', 'time.png')
|
||||
os.rm(main.b2v_keep_path) ?
|
||||
os.exec('v bin2v -w $main.b2v_keep_path $img0 $img1') ?
|
||||
os.rm(b2v_keep_path) ?
|
||||
os.exec('v bin2v -w $b2v_keep_path $img0 $img1') ?
|
||||
}
|
||||
|
||||
fn restore_bin2v_placeholder() ? {
|
||||
text := '// This is a placeholder file which will be filled with bin2v output before the test.
|
||||
// HINT: do NOT delete, move or rename this file!\n'
|
||||
os.write_file(main.b2v_keep_path, text) ?
|
||||
os.write_file(b2v_keep_path, text) ?
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ fn test_fmt() {
|
||||
vexe := os.getenv('VEXE')
|
||||
if vexe.len == 0 || !os.exists(vexe) {
|
||||
eprintln('VEXE must be set')
|
||||
exit(main.error_missing_vexe)
|
||||
exit(error_missing_vexe)
|
||||
}
|
||||
vroot := os.dir(vexe)
|
||||
tmpfolder := os.temp_dir()
|
||||
@ -69,6 +69,6 @@ fn test_fmt() {
|
||||
eprintln(term.h_divider('-'))
|
||||
eprintln(fmt_bench.total_message(fmt_message))
|
||||
if fmt_bench.nfail > 0 {
|
||||
exit(main.error_failed_tests)
|
||||
exit(error_failed_tests)
|
||||
}
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ fn test_vlib_fmt() {
|
||||
vexe := os.getenv('VEXE')
|
||||
if vexe.len == 0 || !os.exists(vexe) {
|
||||
eprintln('VEXE must be set')
|
||||
exit(main.error_missing_vexe)
|
||||
exit(error_missing_vexe)
|
||||
}
|
||||
vroot := os.dir(vexe)
|
||||
tmpfolder := os.temp_dir()
|
||||
@ -67,6 +67,6 @@ fn test_vlib_fmt() {
|
||||
eprintln(term.h_divider('-'))
|
||||
eprintln(fmt_bench.total_message(fmt_message))
|
||||
if fmt_bench.nfail > 0 {
|
||||
exit(main.error_failed_tests)
|
||||
exit(error_failed_tests)
|
||||
}
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ fn test_channel_array_mut() {
|
||||
sem := sync.new_semaphore()
|
||||
go do_rec_calc_send(chs, sem)
|
||||
mut t := i64(100)
|
||||
for _ in 0 .. main.num_iterations {
|
||||
for _ in 0 .. num_iterations {
|
||||
chs[0] <- t
|
||||
t = <-chs[1]
|
||||
}
|
||||
@ -55,7 +55,7 @@ fn test_channel_array_mut() {
|
||||
c := ch[1].cap
|
||||
d := ch[o].len
|
||||
sem.wait()
|
||||
assert t == 100 + main.num_iterations
|
||||
assert t == 100 + num_iterations
|
||||
ch2 := chan mut St{cap: 10}
|
||||
go g(ch2)
|
||||
}
|
||||
|
@ -2,13 +2,13 @@ const n = 1000
|
||||
|
||||
fn f(ch chan int) {
|
||||
mut s := 0
|
||||
for _ in 0 .. main.n {
|
||||
for _ in 0 .. n {
|
||||
s += <-ch or {
|
||||
println('Something went wrong:')
|
||||
println('got $err')
|
||||
}
|
||||
}
|
||||
assert s == main.n * (main.n + 1) / 2
|
||||
assert s == n * (n + 1) / 2
|
||||
ch.close()
|
||||
}
|
||||
|
||||
@ -29,5 +29,5 @@ fn main() {
|
||||
for {
|
||||
s = do_send(ch, s) or { break }
|
||||
}
|
||||
assert s == main.n + 1
|
||||
assert s == n + 1
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ mut:
|
||||
}
|
||||
|
||||
fn (shared x St) f(shared z St) {
|
||||
for _ in 0 .. main.reads_per_thread {
|
||||
for _ in 0 .. reads_per_thread {
|
||||
rlock x { // other instances may read at the same time
|
||||
time.sleep_ms(1)
|
||||
assert x.a == 7 || x.a == 5
|
||||
@ -29,12 +29,12 @@ fn test_shared_lock() {
|
||||
a: 5
|
||||
}
|
||||
shared z := &St{
|
||||
a: main.read_threads
|
||||
a: read_threads
|
||||
}
|
||||
for _ in 0 .. main.read_threads {
|
||||
for _ in 0 .. read_threads {
|
||||
go x.f(shared z)
|
||||
}
|
||||
for i in 0 .. main.writes {
|
||||
for i in 0 .. writes {
|
||||
lock x { // wait for ongoing reads to finish, don't start new ones
|
||||
x.a = 17 // this value should never be read
|
||||
time.sleep_ms(50)
|
||||
|
@ -16,7 +16,7 @@ fn test_c_files() {
|
||||
println('Running V => C tests')
|
||||
vexe := os.getenv('VEXE')
|
||||
vroot := os.dir(vexe)
|
||||
for i in 1 .. (main.nr_tests + 1) {
|
||||
for i in 1 .. (nr_tests + 1) {
|
||||
path := '$vroot/vlib/v/gen/tests/${i}.vv'
|
||||
ctext := os.read_file('$vroot/vlib/v/gen/tests/${i}.c') or { panic(err) }
|
||||
mut b := builder.new_builder(pref.Preferences{})
|
||||
@ -28,7 +28,7 @@ fn test_c_files() {
|
||||
res = res[..pos] + res[end + 15..]
|
||||
}
|
||||
if compare_texts(res, ctext, path) {
|
||||
println('$main.term_ok $i')
|
||||
println('$term_ok $i')
|
||||
} else {
|
||||
assert false
|
||||
}
|
||||
@ -57,7 +57,7 @@ fn compare_texts(a string, b string, path string) bool {
|
||||
line_b := lines_b[i]
|
||||
if line_a.trim_space() != line_b.trim_space() {
|
||||
println('$path: Got\n$a')
|
||||
println('$path:$i: $main.term_fail')
|
||||
println('$path:$i: $term_fail')
|
||||
println(term.bold(term.bright_yellow('actual : ')) + line_a)
|
||||
println(term.green('expected: ') + line_b)
|
||||
println(lines_b[i + 1])
|
||||
|
@ -14,12 +14,12 @@ fn test_parse_valid_cflags() {
|
||||
expected_flags := [
|
||||
make_flag('freebsd', '-I', '/usr/local/include/freetype2'),
|
||||
make_flag('linux', '-l', 'glfw'),
|
||||
make_flag('mingw', main.no_name, '-mwindows'),
|
||||
make_flag('mingw', no_name, '-mwindows'),
|
||||
make_flag('solaris', '-L', '/opt/local/lib'),
|
||||
make_flag('darwin', '-framework', 'Cocoa'),
|
||||
make_flag('windows', '-l', 'gdi32'),
|
||||
make_flag(main.no_os, '-l', 'mysqlclient'),
|
||||
make_flag(main.no_os, main.no_name, '-test'),
|
||||
make_flag(no_os, '-l', 'mysqlclient'),
|
||||
make_flag(no_os, no_name, '-test'),
|
||||
]
|
||||
parse_valid_flag(mut t, '-lmysqlclient')
|
||||
parse_valid_flag(mut t, '-test')
|
||||
@ -49,22 +49,22 @@ fn test_parse_invalid_cflags() {
|
||||
assert_parse_invalid_flag(mut t, 'solaris')
|
||||
assert_parse_invalid_flag(mut t, 'windows')
|
||||
// Empty flag is not allowed
|
||||
assert_parse_invalid_flag(mut t, main.no_flag)
|
||||
assert_parse_invalid_flag(mut t, no_flag)
|
||||
assert t.cflags.len == 0
|
||||
}
|
||||
|
||||
fn parse_valid_flag(mut t table.Table, flag string) {
|
||||
t.parse_cflag(flag, main.module_name, main.cdefines) or { }
|
||||
t.parse_cflag(flag, module_name, cdefines) or { }
|
||||
}
|
||||
|
||||
fn assert_parse_invalid_flag(mut t table.Table, flag string) {
|
||||
t.parse_cflag(flag, main.module_name, main.cdefines) or { return }
|
||||
t.parse_cflag(flag, module_name, cdefines) or { return }
|
||||
assert false
|
||||
}
|
||||
|
||||
fn make_flag(os string, name string, value string) cflag.CFlag {
|
||||
return cflag.CFlag{
|
||||
mod: main.module_name
|
||||
mod: module_name
|
||||
os: os
|
||||
name: name
|
||||
value: value
|
||||
|
@ -18,18 +18,18 @@ const (
|
||||
|
||||
// setup of vweb webserver
|
||||
fn testsuite_begin() {
|
||||
os.chdir(main.vroot)
|
||||
if os.exists(main.serverexe) {
|
||||
os.rm(main.serverexe)
|
||||
os.chdir(vroot)
|
||||
if os.exists(serverexe) {
|
||||
os.rm(serverexe)
|
||||
}
|
||||
}
|
||||
|
||||
fn test_a_simple_vweb_app_can_be_compiled() {
|
||||
// did_server_compile := os.system('$vexe -g -o $serverexe vlib/vweb/tests/vweb_test_server.v')
|
||||
// TODO: find out why it does not compile with -usecache and -g
|
||||
did_server_compile := os.system('$main.vexe -o $main.serverexe vlib/vweb/tests/vweb_test_server.v')
|
||||
did_server_compile := os.system('$vexe -o $serverexe vlib/vweb/tests/vweb_test_server.v')
|
||||
assert did_server_compile == 0
|
||||
assert os.exists(main.serverexe)
|
||||
assert os.exists(serverexe)
|
||||
}
|
||||
|
||||
fn test_a_simple_vweb_app_runs_in_the_background() {
|
||||
@ -37,10 +37,10 @@ fn test_a_simple_vweb_app_runs_in_the_background() {
|
||||
$if !windows {
|
||||
suffix = ' > /dev/null &'
|
||||
}
|
||||
if main.vweb_logfile != '' {
|
||||
suffix = ' 2>> $main.vweb_logfile >> $main.vweb_logfile &'
|
||||
if vweb_logfile != '' {
|
||||
suffix = ' 2>> $vweb_logfile >> $vweb_logfile &'
|
||||
}
|
||||
server_exec_cmd := '$main.serverexe $main.sport $main.exit_after_time $suffix'
|
||||
server_exec_cmd := '$serverexe $sport $exit_after_time $suffix'
|
||||
$if debug_net_socket_client ? {
|
||||
eprintln('running:\n$server_exec_cmd')
|
||||
}
|
||||
@ -102,14 +102,14 @@ fn assert_common_http_headers(x http.Response) {
|
||||
}
|
||||
|
||||
fn test_http_client_index() {
|
||||
x := http.get('http://127.0.0.1:$main.sport/') or { panic(err) }
|
||||
x := http.get('http://127.0.0.1:$sport/') or { panic(err) }
|
||||
assert_common_http_headers(x)
|
||||
assert x.headers['Content-Type'] == 'text/plain'
|
||||
assert x.text == 'Welcome to VWeb'
|
||||
}
|
||||
|
||||
fn test_http_client_chunk_transfer() {
|
||||
x := http.get('http://127.0.0.1:$main.sport/chunk') or { panic(err) }
|
||||
x := http.get('http://127.0.0.1:$sport/chunk') or { panic(err) }
|
||||
assert_common_http_headers(x)
|
||||
assert x.headers['Transfer-Encoding'] == 'chunked'
|
||||
assert x.text == 'Lorem ipsum dolor sit amet, consetetur sadipscing'
|
||||
@ -117,9 +117,9 @@ fn test_http_client_chunk_transfer() {
|
||||
|
||||
fn test_http_client_404() {
|
||||
url_404_list := [
|
||||
'http://127.0.0.1:$main.sport/zxcnbnm',
|
||||
'http://127.0.0.1:$main.sport/JHKAJA',
|
||||
'http://127.0.0.1:$main.sport/unknown',
|
||||
'http://127.0.0.1:$sport/zxcnbnm',
|
||||
'http://127.0.0.1:$sport/JHKAJA',
|
||||
'http://127.0.0.1:$sport/unknown',
|
||||
]
|
||||
for url in url_404_list {
|
||||
res := http.get(url) or { panic(err) }
|
||||
@ -128,39 +128,39 @@ fn test_http_client_404() {
|
||||
}
|
||||
|
||||
fn test_http_client_simple() {
|
||||
x := http.get('http://127.0.0.1:$main.sport/simple') or { panic(err) }
|
||||
x := http.get('http://127.0.0.1:$sport/simple') or { panic(err) }
|
||||
assert_common_http_headers(x)
|
||||
assert x.headers['Content-Type'] == 'text/plain'
|
||||
assert x.text == 'A simple result'
|
||||
}
|
||||
|
||||
fn test_http_client_html_page() {
|
||||
x := http.get('http://127.0.0.1:$main.sport/html_page') or { panic(err) }
|
||||
x := http.get('http://127.0.0.1:$sport/html_page') or { panic(err) }
|
||||
assert_common_http_headers(x)
|
||||
assert x.headers['Content-Type'] == 'text/html'
|
||||
assert x.text == '<h1>ok</h1>'
|
||||
}
|
||||
|
||||
fn test_http_client_settings_page() {
|
||||
x := http.get('http://127.0.0.1:$main.sport/bilbo/settings') or { panic(err) }
|
||||
x := http.get('http://127.0.0.1:$sport/bilbo/settings') or { panic(err) }
|
||||
assert_common_http_headers(x)
|
||||
assert x.text == 'username: bilbo'
|
||||
//
|
||||
y := http.get('http://127.0.0.1:$main.sport/kent/settings') or { panic(err) }
|
||||
y := http.get('http://127.0.0.1:$sport/kent/settings') or { panic(err) }
|
||||
assert_common_http_headers(y)
|
||||
assert y.text == 'username: kent'
|
||||
}
|
||||
|
||||
fn test_http_client_user_repo_settings_page() {
|
||||
x := http.get('http://127.0.0.1:$main.sport/bilbo/gostamp/settings') or { panic(err) }
|
||||
x := http.get('http://127.0.0.1:$sport/bilbo/gostamp/settings') or { panic(err) }
|
||||
assert_common_http_headers(x)
|
||||
assert x.text == 'username: bilbo | repository: gostamp'
|
||||
//
|
||||
y := http.get('http://127.0.0.1:$main.sport/kent/golang/settings') or { panic(err) }
|
||||
y := http.get('http://127.0.0.1:$sport/kent/golang/settings') or { panic(err) }
|
||||
assert_common_http_headers(y)
|
||||
assert y.text == 'username: kent | repository: golang'
|
||||
//
|
||||
z := http.get('http://127.0.0.1:$main.sport/missing/golang/settings') or { panic(err) }
|
||||
z := http.get('http://127.0.0.1:$sport/missing/golang/settings') or { panic(err) }
|
||||
assert z.status_code == 404
|
||||
}
|
||||
|
||||
@ -175,9 +175,7 @@ fn test_http_client_json_post() {
|
||||
age: 123
|
||||
}
|
||||
json_for_ouser := json.encode(ouser)
|
||||
mut x := http.post_json('http://127.0.0.1:$main.sport/json_echo', json_for_ouser) or {
|
||||
panic(err)
|
||||
}
|
||||
mut x := http.post_json('http://127.0.0.1:$sport/json_echo', json_for_ouser) or { panic(err) }
|
||||
$if debug_net_socket_client ? {
|
||||
eprintln('/json_echo endpoint response: $x')
|
||||
}
|
||||
@ -186,7 +184,7 @@ fn test_http_client_json_post() {
|
||||
nuser := json.decode(User, x.text) or { User{} }
|
||||
assert '$ouser' == '$nuser'
|
||||
//
|
||||
x = http.post_json('http://127.0.0.1:$main.sport/json', json_for_ouser) or { panic(err) }
|
||||
x = http.post_json('http://127.0.0.1:$sport/json', json_for_ouser) or { panic(err) }
|
||||
$if debug_net_socket_client ? {
|
||||
eprintln('/json endpoint response: $x')
|
||||
}
|
||||
@ -197,7 +195,7 @@ fn test_http_client_json_post() {
|
||||
}
|
||||
|
||||
fn test_http_client_shutdown_does_not_work_without_a_cookie() {
|
||||
x := http.get('http://127.0.0.1:$main.sport/shutdown') or {
|
||||
x := http.get('http://127.0.0.1:$sport/shutdown') or {
|
||||
assert err == ''
|
||||
return
|
||||
}
|
||||
@ -208,7 +206,7 @@ fn test_http_client_shutdown_does_not_work_without_a_cookie() {
|
||||
fn testsuite_end() {
|
||||
// This test is guaranteed to be called last.
|
||||
// It sends a request to the server to shutdown.
|
||||
x := http.fetch('http://127.0.0.1:$main.sport/shutdown',
|
||||
x := http.fetch('http://127.0.0.1:$sport/shutdown',
|
||||
method: .get
|
||||
cookies: {
|
||||
'skey': 'superman'
|
||||
@ -236,7 +234,7 @@ fn simple_tcp_client(config SimpleTcpClientConfig) ?string {
|
||||
mut tries := 0
|
||||
for tries < config.retries {
|
||||
tries++
|
||||
client = net.dial_tcp('127.0.0.1:$main.sport') or {
|
||||
client = net.dial_tcp('127.0.0.1:$sport') or {
|
||||
if tries > config.retries {
|
||||
return error(err)
|
||||
}
|
||||
@ -245,8 +243,8 @@ fn simple_tcp_client(config SimpleTcpClientConfig) ?string {
|
||||
}
|
||||
break
|
||||
}
|
||||
client.set_read_timeout(main.tcp_r_timeout)
|
||||
client.set_write_timeout(main.tcp_w_timeout)
|
||||
client.set_read_timeout(tcp_r_timeout)
|
||||
client.set_write_timeout(tcp_w_timeout)
|
||||
defer {
|
||||
client.close()
|
||||
}
|
||||
|
@ -64,7 +64,7 @@ pub fn (mut app App) chunk() vweb.Result {
|
||||
// the following serve custom routes
|
||||
['/:user/settings']
|
||||
pub fn (mut app App) settings(username string) vweb.Result {
|
||||
if username !in main.known_users {
|
||||
if username !in known_users {
|
||||
return app.not_found()
|
||||
}
|
||||
return app.html('username: $username')
|
||||
@ -72,7 +72,7 @@ pub fn (mut app App) settings(username string) vweb.Result {
|
||||
|
||||
['/:user/:repo/settings']
|
||||
pub fn (mut app App) user_repo_settings(username string, repository string) vweb.Result {
|
||||
if username !in main.known_users {
|
||||
if username !in known_users {
|
||||
return app.not_found()
|
||||
}
|
||||
return app.html('username: $username | repository: $repository')
|
||||
|
Loading…
Reference in New Issue
Block a user