mod valid { use bstr::ByteSlice; use git_validate; macro_rules! mktest { ($name:ident, $input:expr) => { #[test] fn $name() { assert!(git_validate::refname($input.as_bstr()).is_ok()) } }; } mktest!(a_path, b"/refs/heads/main"); mktest!(a_path_with_underscores_and_dashes, b"/refs/heads/main-2nd_ext"); mktest!(uppercase_name, b"Main"); mktest!(all_uppercase, b"MAIN");} mod invalid { // use git_ref::validate; // macro_rules! mktest { // ($name:ident, $input:literal, $expected:ident) => { // #[test] // fn $name() { // match git_validate::refname($input.as_bstr()) { // Err(validate::refname::Error::$expected) => {} // got => panic!("Wanted {}, got {:?}", stringify!($expected), got), // } // } // }; // } // mktest!(lowercase_name_without_path, b"main"); // mktest!(starts_with_underscore, b"_private"); // mktest!(ends_with_underscore, b"private_"); // mktest!(starts_with_slash, b"/etc/foo"); // mktest!(refs_starts_with_slash, b"/refs/heads/main"); // mktest!(ends_with_slash, b"refs/heads/main/"); // mktest!(a_path_with_duplicate_slashes, b"refs//heads/main");}
mod valid {
use bstr::ByteSlice;
use git_validate;
macro_rules! mktest {
($name:ident, $input:expr) => {
#[test]
fn $name() {
assert!(git_validate::refname($input.as_bstr()).is_ok())
}
};
}
mktest!(a_path, b"/refs/heads/main");
mktest!(a_path_with_underscores_and_dashes, b"/refs/heads/main-2nd_ext");
mktest!(uppercase_name, b"Main");
mktest!(all_uppercase, b"MAIN");
}
mod invalid {
// use git_ref::validate;
// macro_rules! mktest {
// ($name:ident, $input:literal, $expected:ident) => {
// #[test]
// fn $name() {
// match git_validate::refname($input.as_bstr()) {
// Err(validate::refname::Error::$expected) => {}
// got => panic!("Wanted {}, got {:?}", stringify!($expected), got),
// }
// }
// };
// }
// mktest!(lowercase_name_without_path, b"main");
// mktest!(starts_with_underscore, b"_private");
// mktest!(ends_with_underscore, b"private_");
// mktest!(starts_with_slash, b"/etc/foo");
// mktest!(refs_starts_with_slash, b"/refs/heads/main");
// mktest!(ends_with_slash, b"refs/heads/main/");
// mktest!(a_path_with_duplicate_slashes, b"refs//heads/main");
}