Use multiple files in tests #168

Merged
kdeng00 merged 8 commits from use_multiple_files_in_tests into v0.2 2025-07-30 15:28:47 -04:00
Showing only changes of commit 21ba754132 - Show all commits
+58 -51
View File
@@ -1952,23 +1952,26 @@ mod tests {
pub mod test_data {
pub async fn song_id() -> Result<(uuid::Uuid, String, String, String), uuid::Error> {
match uuid::Uuid::parse_str("44cf7940-34ff-489f-9124-d0ec90a55af9") {
Ok(id) => {
Ok((id, String::from("tests/I/"), String::from("track01.flac"), String::from("tests/I/Coverart-1.jpg")))
}
Err(err) => {
Err(err)
}
Ok(id) => Ok((
id,
String::from("tests/I/"),
String::from("track01.flac"),
String::from("tests/I/Coverart-1.jpg"),
)),
Err(err) => Err(err),
}
}
pub async fn other_song_id() -> Result<(uuid::Uuid, String, String, String), uuid::Error> {
pub async fn other_song_id() -> Result<(uuid::Uuid, String, String, String), uuid::Error>
{
match uuid::Uuid::parse_str("94cf7940-34ff-489f-9124-d0ec90a55af4") {
Ok(id) => {
Ok((id, String::from("tests/I/"), String::from("track02.flac"), String::from("tests/I/Coverart-2.jpg")))
}
Err(err) => {
Err(err)
}
Ok(id) => Ok((
id,
String::from("tests/I/"),
String::from("track02.flac"),
String::from("tests/I/Coverart-2.jpg"),
)),
Err(err) => Err(err),
}
}
@@ -2144,7 +2147,11 @@ mod tests {
let _ = super::db_mgr::drop_database(&tm_pool, &db_name).await;
}
async fn get_test_data(song_directory: &String, song_filename: &String, coverart_path: &String) -> Result<(Vec<u8>, Vec<u8>), std::io::Error> {
async fn get_test_data(
song_directory: &String,
song_filename: &String,
coverart_path: &String,
) -> Result<(Vec<u8>, Vec<u8>), std::io::Error> {
let song = icarus_models::song::Song {
directory: song_directory.clone(),
filename: song_filename.clone(),
@@ -2158,20 +2165,20 @@ mod tests {
match song.to_data() {
Ok(song_data) => match coverart.to_data() {
Ok(coverart_data) => {
Ok((song_data, coverart_data))
}
Err(err) => {
Err(err)
}
}
Err(err) => {
Err(err)
}
Ok(coverart_data) => Ok((song_data, coverart_data)),
Err(err) => Err(err),
},
Err(err) => Err(err),
}
}
async fn save_test_again(song_directory: &String, song_filename: &String, song_data: Vec<u8>, coverart_path: &String, coverart_data: Vec<u8>) -> Result<(), std::io::Error> {
async fn save_test_again(
song_directory: &String,
song_filename: &String,
song_data: Vec<u8>,
coverart_path: &String,
coverart_data: Vec<u8>,
) -> Result<(), std::io::Error> {
let song = icarus_models::song::Song {
directory: song_directory.clone(),
filename: song_filename.clone(),
@@ -2189,15 +2196,12 @@ mod tests {
Ok(song_path) => {
let song_p = std::path::Path::new(&song_path);
match std::fs::File::create(song_p) {
Ok(mut song_file) => {
match song_file.write_all(&song_data) {
Ok(_) => {
}
Err(err) => {
return Err(err);
}
Ok(mut song_file) => match song_file.write_all(&song_data) {
Ok(_) => {}
Err(err) => {
return Err(err);
}
}
},
Err(err) => {
return Err(err);
}
@@ -2210,19 +2214,11 @@ mod tests {
let coverart_p = std::path::Path::new(&coverart.path);
match std::fs::File::create(coverart_p) {
Ok(mut coverart_file) => {
match coverart_file.write_all(&coverart_data) {
Ok(_) => {
Ok(())
}
Err(err) => {
Err(err)
}
}
}
Err(err) => {
Err(err)
}
Ok(mut coverart_file) => match coverart_file.write_all(&coverart_data) {
Ok(_) => Ok(()),
Err(err) => Err(err),
},
Err(err) => Err(err),
}
}
@@ -2245,8 +2241,12 @@ mod tests {
let app = super::init::app(pool).await;
let (id, song_directory, song_filename, coverart_path) = test_data::other_song_id().await.unwrap();
let (song_data, coverart_data) = get_test_data(&song_directory, &song_filename, &coverart_path).await.unwrap();
let (id, song_directory, song_filename, coverart_path) =
test_data::other_song_id().await.unwrap();
let (song_data, coverart_data) =
get_test_data(&song_directory, &song_filename, &coverart_path)
.await
.unwrap();
let uri =
super::format_url_with_value(crate::callers::endpoints::DELETESONG, &id).await;
@@ -2276,9 +2276,16 @@ mod tests {
song_and_coverart.song.id
);
match save_test_again(&song_directory, &song_filename, song_data, &coverart_path, coverart_data).await {
Ok(_) => {
}
match save_test_again(
&song_directory,
&song_filename,
song_data,
&coverart_path,
coverart_data,
)
.await
{
Ok(_) => {}
Err(err) => {
assert!(false, "Error: {err:?}");
}