/
mod.rs
28 lines (26 loc) · 827 Bytes
/
mod.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
use std::convert::TryInto;
#[test]
fn file_name() {
let name: git_ref::FullName = "refs/heads/main".try_into().unwrap();
assert_eq!(name.to_ref().file_name(), "main");
}
#[test]
fn prefix_with_namespace_and_stripping() {
let ns = git_ref::namespace::expand("foo").unwrap();
let mut name: git_ref::FullName = "refs/heads/main".try_into().unwrap();
assert_eq!(
name.prefix_namespace(&ns).as_bstr(),
"refs/namespaces/foo/refs/heads/main"
);
assert_eq!(
name.prefix_namespace(&ns).as_bstr(),
"refs/namespaces/foo/refs/heads/main",
"idempotent prefixing"
);
assert_eq!(name.strip_namespace(&ns).as_bstr(), "refs/heads/main");
assert_eq!(
name.strip_namespace(&ns).as_bstr(),
"refs/heads/main",
"idempotent stripping"
);
}