use std::path::PathBuf;mod borrowed;mod owned;#[cfg(not(windows))]fn fixup(v: Vec<u8>) -> Vec<u8> { v}#[cfg(windows)]fn fixup(v: Vec<u8>) -> Vec<u8> { // Git checks out text files with line ending conversions, git itself will of course not put '\r\n' anywhere, // so that wouldn't be expected in an object and doesn't have to be parsed. use bstr::ByteSlice; v.replace(b"\r\n", "\n")}pub fn hex_to_id(hex: &str) -> git_object::owned::Id { git_object::owned::Id::from_40_bytes_in_hex(hex.as_bytes()).expect("40 bytes hex")}pub fn fixture(path: &str) -> PathBuf { PathBuf::from("tests/fixtures").join(path)}fn fixture_bytes(path: &str) -> Vec<u8> { fixup(std::fs::read(fixture(path)).unwrap())}
use std::path::PathBuf;
mod borrowed;
mod owned;
#[cfg(not(windows))]
fn fixup(v: Vec<u8>) -> Vec<u8> {
v
}
#[cfg(windows)]
fn fixup(v: Vec<u8>) -> Vec<u8> {
// Git checks out text files with line ending conversions, git itself will of course not put '\r\n' anywhere,
// so that wouldn't be expected in an object and doesn't have to be parsed.
use bstr::ByteSlice;
v.replace(b"\r\n", "\n")
}
pub fn hex_to_id(hex: &str) -> git_object::owned::Id {
git_object::owned::Id::from_40_bytes_in_hex(hex.as_bytes()).expect("40 bytes hex")
}
pub fn fixture(path: &str) -> PathBuf {
PathBuf::from("tests/fixtures").join(path)
}
fn fixture_bytes(path: &str) -> Vec<u8> {
fixup(std::fs::read(fixture(path)).unwrap())
}