use std::{
fs,
io::{Read, Seek, SeekFrom},
};
use anyhow::{Context, Result};
use camino::Utf8Path;
pub fn read_mcap<P: AsRef<Utf8Path>>(p: P) -> Result<Vec<u8>> {
let p = p.as_ref();
fs::read(p).with_context(|| format!("Couldn't read {p}"))
}
#[allow(dead_code)]
pub fn mcap_test_file() -> Result<Vec<u8>> {
if cfg!(feature = "zstd") {
read_mcap("tests/data/compressed.mcap")
} else {
read_mcap("tests/data/uncompressed.mcap")
}
}
#[allow(dead_code)]
pub fn read_back(file: &mut fs::File) -> Result<Vec<u8>> {
file.seek(SeekFrom::Start(0))?;
let mut bytes = Vec::new();
file.read_to_end(&mut bytes)?;
Ok(bytes)
}