v / vlib / pico_http_parser / pico_http_parser_test.v
34 lines · 28 sloc · 750 bytes · 35c3a1b7150305730491ee1307a86bb536aabac3
Raw
1module pico_http_parser
2
3pub fn test_request_alias_parses_a_simple_get_request() {
4 mut req := Request{}
5 parsed := req.parse_request('GET / HTTP/1.1\r\nHost: example.com\r\n\r\n') or {
6 assert false, 'error while parse request: ${err}'
7 0
8 }
9
10 assert parsed == 37
11 assert req.method == 'GET'
12 assert req.path == '/'
13 assert req.headers[0].name == 'Host'
14 assert req.headers[0].value == 'example.com'
15}
16
17pub fn test_u64toa_alias_formats_numbers() {
18 mut buf := [10]u8{}
19 len := unsafe {
20 u64toa(&buf[0], 12345) or {
21 assert false, 'error while formatting number: ${err}'
22 0
23 }
24 }
25
26 assert len == 5
27 assert buf[0..len] == '12345'.bytes()
28}
29
30pub fn test_response_alias_can_be_initialized() {
31 response := Response{}
32
33 assert response.fd == 0
34}
35