tsk-73: Change data type of song from string to date (#77)
All checks were successful
Release Tagging / release (push) Successful in 42s
Release Tagging / release (pull_request) Successful in 1m4s
Rust Build / Check (pull_request) Successful in 34s
Rust Build / Clippy (pull_request) Successful in 31s
Rust Build / Test Suite (pull_request) Successful in 58s
Rust Build / Rustfmt (pull_request) Successful in 1m2s
Rust Build / build (pull_request) Successful in 35s
All checks were successful
Release Tagging / release (push) Successful in 42s
Release Tagging / release (pull_request) Successful in 1m4s
Rust Build / Check (pull_request) Successful in 34s
Rust Build / Clippy (pull_request) Successful in 31s
Rust Build / Test Suite (pull_request) Successful in 58s
Rust Build / Rustfmt (pull_request) Successful in 1m2s
Rust Build / build (pull_request) Successful in 35s
Closes #73 Reviewed-on: #77 Co-authored-by: phoenix <kundeng00@pm.me> Co-committed-by: phoenix <kundeng00@pm.me>
This commit is contained in:
21
src/song.rs
21
src/song.rs
@@ -39,8 +39,8 @@ pub struct Song {
|
||||
pub track_count: i32,
|
||||
#[serde(skip_serializing_if = "String::is_empty")]
|
||||
pub audio_type: String,
|
||||
#[serde(skip_serializing_if = "String::is_empty")]
|
||||
pub date_created: String,
|
||||
#[serde(with = "time::serde::rfc3339::option")]
|
||||
pub date_created: Option<time::OffsetDateTime>,
|
||||
#[serde(skip_serializing_if = "String::is_empty")]
|
||||
pub filename: String,
|
||||
#[serde(skip_serializing_if = "init::is_uuid_nil")]
|
||||
@@ -71,21 +71,22 @@ impl Song {
|
||||
|
||||
pub fn song_path(&self) -> Result<String, std::io::Error> {
|
||||
if self.directory.is_empty() {
|
||||
return Err(std::io::Error::other("Directory does not exist"));
|
||||
return Err(std::io::Error::other("Directory has not been initialized"));
|
||||
} else if self.filename.is_empty() {
|
||||
return Err(std::io::Error::other("Filename has not bee initialized"));
|
||||
}
|
||||
|
||||
let directory = &self.directory;
|
||||
let mut buffer: String = directory.clone();
|
||||
let last_index = directory.len() - 1;
|
||||
|
||||
if let Some(character) = directory.chars().nth(last_index) {
|
||||
if character != '/' {
|
||||
buffer += "/";
|
||||
}
|
||||
let buffer: String = if character != '/' {
|
||||
directory.clone() + "/"
|
||||
} else {
|
||||
directory.clone()
|
||||
};
|
||||
|
||||
buffer += &self.filename.clone();
|
||||
|
||||
Ok(buffer)
|
||||
Ok(buffer + &self.filename.clone())
|
||||
} else {
|
||||
Err(std::io::Error::other(
|
||||
"Could not access last character of directory",
|
||||
|
Reference in New Issue
Block a user