aboutsummaryrefslogtreecommitdiffstats
path: root/src/utils.rs
diff options
context:
space:
mode:
authorNathan Jaremko2019-03-02 20:47:52 -0500
committerNathan Jaremko2019-03-02 20:48:12 -0500
commitbfc821456a1164af45d79875c2793c02042efdd8 (patch)
treefd37a5d8ee15edba46c6f70831a91166b91046dd /src/utils.rs
parent394a7d9da0a21dd3453815ee9ecdfd10b1b479cd (diff)
downloadpodcast-bfc821456a1164af45d79875c2793c02042efdd8.tar.bz2
Improve extension handling
Diffstat (limited to 'src/utils.rs')
-rw-r--r--src/utils.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/utils.rs b/src/utils.rs
index e00df98..bb96909 100644
--- a/src/utils.rs
+++ b/src/utils.rs
@@ -13,8 +13,11 @@ const UNSUBSCRIBE_NOTE: &str = "Note: this does NOT delete any downloaded podcas
pub fn trim_extension(filename: &str) -> Option<String> {
let name = String::from(filename);
- let index = name.rfind('.')?;
- Some(String::from(&name[0..index]))
+ if name.contains(".") {
+ name.rfind('.').map(|index| String::from(&name[0..index]))
+ } else {
+ Some(name)
+ }
}
pub fn find_extension(input: &str) -> Option<String> {
@@ -166,6 +169,6 @@ mod tests {
#[test]
fn test_trim_extension_invalid() {
- assert_eq!(trim_extension("test"), None)
+ assert_eq!(trim_extension("test"), Some("test".into()))
}
}