bpt 0.1.6

Bedrock Linux package manager
pub trait StripFilename {
    fn strip_filename(&self) -> &str;
}

impl StripFilename for str {
    fn strip_filename(&self) -> &str {
        self.rfind('/').map(|i| &self[..i]).unwrap_or("")
    }
}

#[cfg(test)]
mod test {
    use super::*;

    #[test]
    fn test_stripfilename() {
        assert_eq!(
            "http://example.com/foo/bar.pkgidx".strip_filename(),
            "http://example.com/foo"
        );
        assert_eq!(
            "https://example.com/foo/bar.pkgidx".strip_filename(),
            "https://example.com/foo"
        );
        assert_eq!("/foo/bar.pkgidx".strip_filename(), "/foo");
        assert_eq!("bar.pkgidx".strip_filename(), "");
    }
}