#[cfg(test)]
use super::*;
#[test]
fn test_http_request_from_bytes_complete() {
let bytes = b"GET /test HTTP/1.1\r\nHost: example.com\r\nUser-Agent: test-agent\r\n\r\n";
let (request, _) = HttpRequest::from_bytes(bytes).unwrap();
assert_eq!(request.method, Method::GET);
assert_eq!(request.uri, "/test".parse::<Uri>().unwrap());
assert_eq!(request.version, Version::HTTP_11);
let host_header = request.headers.get("Host").unwrap();
assert_eq!(host_header, "example.com");
let user_agent_header = request.headers.get("User-Agent").unwrap();
assert_eq!(user_agent_header, "test-agent");
}
#[test]
fn test_http_request_from_bytes_incomplete() {
let bytes = b"GET /test HTTP/1.1\r\nHost: example.com";
let result = HttpRequest::from_bytes(bytes);
assert!(result.is_err());
}