v/vlib/net/http/http_test.v

63 lines
1.3 KiB
V
Raw Normal View History

2019-12-30 05:42:23 +01:00
import net.http
2019-08-06 13:57:58 +02:00
fn test_http_get() {
$if !network ? {
return
}
2019-08-22 21:48:31 +02:00
assert http.get_text('https://vlang.io/version') == '0.1.5'
println('http ok')
}
2019-08-06 13:57:58 +02:00
2020-01-16 18:16:11 +01:00
fn test_http_get_from_vlang_utc_now() {
$if !network ? {
return
}
2019-08-21 19:04:06 +02:00
urls := ['http://vlang.io/utc_now', 'https://vlang.io/utc_now']
for url in urls {
println('Test getting current time from $url by http.get')
res := http.get(url) or {
panic(err)
}
2019-08-21 19:04:06 +02:00
assert 200 == res.status_code
assert res.text.len > 0
assert res.text.int() > 1566403696
println('Current time is: $res.text.int()')
2019-08-21 19:04:06 +02:00
}
}
fn test_public_servers() {
$if !network ? {
return
}
2019-08-22 21:48:31 +02:00
urls := [
2019-08-21 19:04:06 +02:00
'http://github.com/robots.txt',
'http://google.com/robots.txt',
'https://github.com/robots.txt',
'https://google.com/robots.txt',
// 'http://yahoo.com/robots.txt',
// 'https://yahoo.com/robots.txt',
2019-08-21 19:04:06 +02:00
]
for url in urls {
println('Testing http.get on public url: $url ')
res := http.get(url) or {
panic(err)
}
2019-08-21 19:04:06 +02:00
assert 200 == res.status_code
assert res.text.len > 0
}
}
fn test_relative_redirects() {
$if !network ? {
return
} $else {
return
} // tempfix periodic: httpbin relative redirects are broken
res := http.get('https://httpbin.org/relative-redirect/3?abc=xyz') or {
panic(err)
}
assert 200 == res.status_code
assert res.text.len > 0
assert res.text.contains('"abc": "xyz"')
}