(actual: &[u8], expected: &[u8])
| 2460 | } |
| 2461 | |
| 2462 | fn assert_bytes_eq(actual: &[u8], expected: &[u8]) { |
| 2463 | if actual != expected { |
| 2464 | let to_hex = |b: &[u8]| { |
| 2465 | b.iter() |
| 2466 | .map(|x| format!("{:02X}", x)) |
| 2467 | .collect::<Vec<_>>() |
| 2468 | .join(" ") |
| 2469 | }; |
| 2470 | panic!( |
| 2471 | "mismatch\n expected: [{}]\n actual: [{}]", |
| 2472 | to_hex(expected), |
| 2473 | to_hex(actual) |
| 2474 | ); |
| 2475 | } |
| 2476 | } |
| 2477 | |
| 2478 | fn row_slice<'a>(buf: &'a [u8], offsets: &[usize], row: usize) -> &'a [u8] { |
| 2479 | let start = offsets[row]; |