| 1 | module pico_http_parser |
| 2 | |
| 3 | pub 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 | |
| 17 | pub 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 | |
| 30 | pub fn test_response_alias_can_be_initialized() { |
| 31 | response := Response{} |
| 32 | |
| 33 | assert response.fd == 0 |
| 34 | } |
| 35 | |