use fastserial::json::decode;
#[test]
fn test_simd_whitespace_boundary_32() {
let mut input = vec![b' '; 31];
input.push(b'1');
let decoded: u64 = decode(&input).unwrap();
assert_eq!(decoded, 1);
}
#[test]
fn test_simd_whitespace_boundary_33() {
let mut input = vec![b' '; 32];
input.push(b'2');
let decoded: u64 = decode(&input).unwrap();
assert_eq!(decoded, 2);
}
#[test]
fn test_simd_string_boundary_32() {
let content = "a".repeat(32);
let input = format!("\"{}\"", content);
let decoded: &str = decode(input.as_bytes()).unwrap();
assert_eq!(decoded, content);
}
#[test]
fn test_simd_string_boundary_31() {
let content = "b".repeat(31);
let input = format!("\"{}\"", content);
let decoded: &str = decode(input.as_bytes()).unwrap();
assert_eq!(decoded, content);
}
#[test]
fn test_simd_string_with_escapes_near_boundary() {
let mut content = "a".repeat(30);
content.push_str("\\n"); let input = format!("\"{}\"", content);
let decoded: String = decode(input.as_bytes()).unwrap();
assert_eq!(decoded, "a".repeat(30) + "\n");
}
#[test]
fn test_multiple_simd_chunks_whitespace() {
let mut input = vec![b' '; 100];
input.push(b'5');
let decoded: u64 = decode(&input).unwrap();
assert_eq!(decoded, 5);
}