From 069b7bfc973bdb0f9a9e83d55db6665f56974bbd Mon Sep 17 00:00:00 2001 From: Serial <69764315+Serial-ATA@users.noreply.github.com> Date: Sat, 31 Aug 2024 13:38:30 -0400 Subject: [PATCH] Tests: Switch to `test_log` We have really good debug/trace logs now. Having them available for test failures is a huge help. --- lofty/Cargo.toml | 1 + lofty/src/ape/tag/mod.rs | 38 +++--- lofty/src/id3/v1/tag.rs | 8 +- lofty/src/id3/v2/items/audio_text_frame.rs | 4 +- lofty/src/id3/v2/items/encapsulated_object.rs | 4 +- .../id3/v2/items/event_timing_codes_frame.rs | 4 +- lofty/src/id3/v2/items/ownership_frame.rs | 4 +- lofty/src/id3/v2/items/popularimeter.rs | 2 +- lofty/src/id3/v2/items/private_frame.rs | 4 +- .../items/relative_volume_adjustment_frame.rs | 4 +- lofty/src/id3/v2/items/sync_text.rs | 8 +- .../id3/v2/items/unique_file_identifier.rs | 2 +- lofty/src/id3/v2/read.rs | 100 +++++++------- lofty/src/id3/v2/tag/tests.rs | 122 +++++++++--------- lofty/src/id3/v2/util/pairs.rs | 4 +- lofty/src/id3/v2/util/synchsafe.rs | 12 +- lofty/src/id3/v2/write/mod.rs | 2 +- lofty/src/iff/aiff/tag.rs | 10 +- lofty/src/iff/wav/tag/mod.rs | 8 +- lofty/src/mp4/ilst/mod.rs | 36 +++--- lofty/src/mp4/ilst/write.rs | 2 +- lofty/src/mpeg/header.rs | 4 +- lofty/src/ogg/tag.rs | 18 +-- lofty/src/probe.rs | 30 ++--- lofty/src/properties/tests.rs | 38 +++--- lofty/src/resolve.rs | 2 +- lofty/src/tag/items/timestamp.rs | 16 +-- lofty/src/tag/mod.rs | 10 +- lofty/src/util/alloc.rs | 2 +- lofty/src/util/io.rs | 6 +- lofty/src/util/math.rs | 4 +- lofty/src/util/text.rs | 4 +- lofty/tests/files/aac.rs | 14 +- lofty/tests/files/aiff.rs | 12 +- lofty/tests/files/ape.rs | 14 +- lofty/tests/files/flac.rs | 8 +- lofty/tests/files/mp4.rs | 10 +- lofty/tests/files/mpc.rs | 18 +-- lofty/tests/files/mpeg.rs | 32 ++--- lofty/tests/files/ogg.rs | 42 +++--- lofty/tests/files/wav.rs | 14 +- lofty/tests/files/wavpack.rs | 12 +- lofty/tests/files/zero_sized.rs | 12 +- lofty/tests/fuzz/aacfile_read_from.rs | 2 +- lofty/tests/fuzz/aifffile_read_from.rs | 4 +- lofty/tests/fuzz/flacfile_read_from.rs | 4 +- lofty/tests/fuzz/id3v2.rs | 4 +- lofty/tests/fuzz/mp4file_read_from.rs | 14 +- lofty/tests/fuzz/mpcfile_read_from.rs | 2 +- lofty/tests/fuzz/mpegfile_read_from.rs | 6 +- lofty/tests/fuzz/opusfile_read_from.rs | 2 +- .../fuzz/pictureinformation_from_jpeg.rs | 2 +- .../tests/fuzz/pictureinformation_from_png.rs | 2 +- lofty/tests/fuzz/speexfile_read_from.rs | 2 +- lofty/tests/fuzz/vorbisfile_read_from.rs | 6 +- lofty/tests/fuzz/wavfile_read_from.rs | 8 +- lofty/tests/fuzz/wavpackfile_read_from.rs | 24 ++-- lofty/tests/hound.rs | 4 +- lofty/tests/picture/format_parsers.rs | 16 +-- lofty/tests/picture/from_reader.rs | 10 +- lofty/tests/picture/information.rs | 6 +- lofty/tests/tags/conversions.rs | 2 +- 62 files changed, 414 insertions(+), 407 deletions(-) diff --git a/lofty/Cargo.toml b/lofty/Cargo.toml index 5648079b..b3a00a6f 100644 --- a/lofty/Cargo.toml +++ b/lofty/Cargo.toml @@ -36,6 +36,7 @@ hound = { git = "https://github.com/ruuda/hound.git", rev = "02e66effb33683d # tag_writer example structopt = { version = "0.3.26", default-features = false } tempfile = "3.10.1" +test-log = "0.2.16" iai-callgrind = "0.12.0" [lints] diff --git a/lofty/src/ape/tag/mod.rs b/lofty/src/ape/tag/mod.rs index 67e1a385..daecf428 100644 --- a/lofty/src/ape/tag/mod.rs +++ b/lofty/src/ape/tag/mod.rs @@ -572,7 +572,7 @@ mod tests { use crate::picture::{MimeType, Picture, PictureType}; use std::io::Cursor; - #[test] + #[test_log::test] fn parse_ape() { let mut expected_tag = ApeTag::default(); @@ -636,7 +636,7 @@ mod tests { } } - #[test] + #[test_log::test] fn ape_re_read() { let tag_bytes = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.apev2"); let mut reader = Cursor::new(tag_bytes); @@ -664,7 +664,7 @@ mod tests { assert_eq!(parsed_tag, temp_parsed_tag); } - #[test] + #[test_log::test] fn ape_to_tag() { let tag_bytes = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.apev2"); let mut reader = Cursor::new(tag_bytes); @@ -680,7 +680,7 @@ mod tests { crate::tag::utils::test_utils::verify_tag(&tag, true, true); } - #[test] + #[test_log::test] fn tag_to_ape() { fn verify_key(tag: &ApeTag, key: &str, expected_val: &str) { assert_eq!( @@ -701,7 +701,7 @@ mod tests { verify_key(&ape_tag, "Genre", "Classical"); } - #[test] + #[test_log::test] fn set_track() { let mut ape = ApeTag::default(); let track = 1; @@ -712,7 +712,7 @@ mod tests { assert!(ape.track_total().is_none()); } - #[test] + #[test_log::test] fn set_track_total() { let mut ape = ApeTag::default(); let track_total = 2; @@ -723,7 +723,7 @@ mod tests { assert_eq!(ape.track_total().unwrap(), track_total); } - #[test] + #[test_log::test] fn set_track_and_track_total() { let mut ape = ApeTag::default(); let track = 1; @@ -736,7 +736,7 @@ mod tests { assert_eq!(ape.track_total().unwrap(), track_total); } - #[test] + #[test_log::test] fn set_track_total_and_track() { let mut ape = ApeTag::default(); let track_total = 2; @@ -749,7 +749,7 @@ mod tests { assert_eq!(ape.track().unwrap(), track); } - #[test] + #[test_log::test] fn set_disk() { let mut ape = ApeTag::default(); let disk = 1; @@ -760,7 +760,7 @@ mod tests { assert!(ape.disk_total().is_none()); } - #[test] + #[test_log::test] fn set_disk_total() { let mut ape = ApeTag::default(); let disk_total = 2; @@ -771,7 +771,7 @@ mod tests { assert_eq!(ape.disk_total().unwrap(), disk_total); } - #[test] + #[test_log::test] fn set_disk_and_disk_total() { let mut ape = ApeTag::default(); let disk = 1; @@ -784,7 +784,7 @@ mod tests { assert_eq!(ape.disk_total().unwrap(), disk_total); } - #[test] + #[test_log::test] fn set_disk_total_and_disk() { let mut ape = ApeTag::default(); let disk_total = 2; @@ -797,7 +797,7 @@ mod tests { assert_eq!(ape.disk().unwrap(), disk); } - #[test] + #[test_log::test] fn track_number_tag_to_ape() { let track_number = 1; @@ -814,7 +814,7 @@ mod tests { assert!(tag.track_total().is_none()); } - #[test] + #[test_log::test] fn track_total_tag_to_ape() { let track_total = 2; @@ -831,7 +831,7 @@ mod tests { assert_eq!(tag.track_total().unwrap(), track_total); } - #[test] + #[test_log::test] fn track_number_and_track_total_tag_to_ape() { let track_number = 1; let track_total = 2; @@ -854,7 +854,7 @@ mod tests { assert_eq!(tag.track_total().unwrap(), track_total); } - #[test] + #[test_log::test] fn disk_number_tag_to_ape() { let disk_number = 1; @@ -871,7 +871,7 @@ mod tests { assert!(tag.disk_total().is_none()); } - #[test] + #[test_log::test] fn disk_total_tag_to_ape() { let disk_total = 2; @@ -888,7 +888,7 @@ mod tests { assert_eq!(tag.disk_total().unwrap(), disk_total); } - #[test] + #[test_log::test] fn disk_number_and_disk_total_tag_to_ape() { let disk_number = 1; let disk_total = 2; @@ -911,7 +911,7 @@ mod tests { assert_eq!(tag.disk_total().unwrap(), disk_total); } - #[test] + #[test_log::test] fn skip_reading_cover_art() { let p = Picture::new_unchecked( PictureType::CoverFront, diff --git a/lofty/src/id3/v1/tag.rs b/lofty/src/id3/v1/tag.rs index 02806575..2d91c393 100644 --- a/lofty/src/id3/v1/tag.rs +++ b/lofty/src/id3/v1/tag.rs @@ -463,7 +463,7 @@ mod tests { use crate::prelude::*; use crate::tag::{Tag, TagType}; - #[test] + #[test_log::test] fn parse_id3v1() { let expected_tag = Id3v1Tag { title: Some(String::from("Foo title")), @@ -481,7 +481,7 @@ mod tests { assert_eq!(expected_tag, parsed_tag); } - #[test] + #[test_log::test] fn id3v2_re_read() { let tag = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.id3v1"); let parsed_tag = crate::id3::v1::read::parse_id3v1(tag.try_into().unwrap()); @@ -496,7 +496,7 @@ mod tests { assert_eq!(parsed_tag, temp_parsed_tag); } - #[test] + #[test_log::test] fn id3v1_to_tag() { let tag_bytes = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.id3v1"); let id3v1 = crate::id3::v1::read::parse_id3v1(tag_bytes.try_into().unwrap()); @@ -506,7 +506,7 @@ mod tests { crate::tag::utils::test_utils::verify_tag(&tag, true, true); } - #[test] + #[test_log::test] fn tag_to_id3v1() { let tag = crate::tag::utils::test_utils::create_tag(TagType::Id3v1); diff --git a/lofty/src/id3/v2/items/audio_text_frame.rs b/lofty/src/id3/v2/items/audio_text_frame.rs index c412f692..b42e0121 100644 --- a/lofty/src/id3/v2/items/audio_text_frame.rs +++ b/lofty/src/id3/v2/items/audio_text_frame.rs @@ -250,7 +250,7 @@ mod tests { } } - #[test] + #[test_log::test] fn atxt_decode() { let expected = expected(); @@ -261,7 +261,7 @@ mod tests { assert_eq!(parsed_atxt, expected); } - #[test] + #[test_log::test] fn atxt_encode() { let to_encode = expected(); diff --git a/lofty/src/id3/v2/items/encapsulated_object.rs b/lofty/src/id3/v2/items/encapsulated_object.rs index 94e4c6a3..1c188204 100644 --- a/lofty/src/id3/v2/items/encapsulated_object.rs +++ b/lofty/src/id3/v2/items/encapsulated_object.rs @@ -144,7 +144,7 @@ mod tests { } } - #[test] + #[test_log::test] fn geob_decode() { let expected = expected(); @@ -155,7 +155,7 @@ mod tests { assert_eq!(parsed_geob, expected); } - #[test] + #[test_log::test] fn geob_encode() { let to_encode = expected(); diff --git a/lofty/src/id3/v2/items/event_timing_codes_frame.rs b/lofty/src/id3/v2/items/event_timing_codes_frame.rs index 99c9b2c2..4fcdeb69 100644 --- a/lofty/src/id3/v2/items/event_timing_codes_frame.rs +++ b/lofty/src/id3/v2/items/event_timing_codes_frame.rs @@ -307,7 +307,7 @@ mod tests { } } - #[test] + #[test_log::test] fn etco_decode() { let cont = crate::tag::utils::test_utils::read_path("tests/tags/assets/id3v2/test.etco"); @@ -318,7 +318,7 @@ mod tests { assert_eq!(parsed_etco, expected()); } - #[test] + #[test_log::test] fn etco_encode() { let encoded = expected().as_bytes(); diff --git a/lofty/src/id3/v2/items/ownership_frame.rs b/lofty/src/id3/v2/items/ownership_frame.rs index a55ca2b2..9da53f27 100644 --- a/lofty/src/id3/v2/items/ownership_frame.rs +++ b/lofty/src/id3/v2/items/ownership_frame.rs @@ -153,7 +153,7 @@ mod tests { } } - #[test] + #[test_log::test] fn owne_decode() { let cont = crate::tag::utils::test_utils::read_path("tests/tags/assets/id3v2/test.owne"); @@ -164,7 +164,7 @@ mod tests { assert_eq!(parsed_owne, expected()); } - #[test] + #[test_log::test] fn owne_encode() { let encoded = expected().as_bytes(false).unwrap(); diff --git a/lofty/src/id3/v2/items/popularimeter.rs b/lofty/src/id3/v2/items/popularimeter.rs index adaf1fc8..4b36375c 100644 --- a/lofty/src/id3/v2/items/popularimeter.rs +++ b/lofty/src/id3/v2/items/popularimeter.rs @@ -167,7 +167,7 @@ mod tests { assert_eq!(popm_bytes[email.len() + 2..].len(), counter_len); } - #[test] + #[test_log::test] fn write_popm() { let popm_u32_boundary = PopularimeterFrame { header: FrameHeader::new(super::FRAME_ID, FrameFlags::default()), diff --git a/lofty/src/id3/v2/items/private_frame.rs b/lofty/src/id3/v2/items/private_frame.rs index 169cb464..9ded3962 100644 --- a/lofty/src/id3/v2/items/private_frame.rs +++ b/lofty/src/id3/v2/items/private_frame.rs @@ -113,7 +113,7 @@ mod tests { } } - #[test] + #[test_log::test] fn priv_decode() { let cont = crate::tag::utils::test_utils::read_path("tests/tags/assets/id3v2/test.priv"); @@ -124,7 +124,7 @@ mod tests { assert_eq!(parsed_priv, expected()); } - #[test] + #[test_log::test] fn priv_encode() { let encoded = expected().as_bytes().unwrap(); diff --git a/lofty/src/id3/v2/items/relative_volume_adjustment_frame.rs b/lofty/src/id3/v2/items/relative_volume_adjustment_frame.rs index 7c44fc07..f3a09aff 100644 --- a/lofty/src/id3/v2/items/relative_volume_adjustment_frame.rs +++ b/lofty/src/id3/v2/items/relative_volume_adjustment_frame.rs @@ -286,7 +286,7 @@ mod tests { } } - #[test] + #[test_log::test] fn rva2_decode() { let cont = crate::tag::utils::test_utils::read_path("tests/tags/assets/id3v2/test.rva2"); @@ -301,7 +301,7 @@ mod tests { assert_eq!(parsed_rva2, expected()); } - #[test] + #[test_log::test] #[allow(unstable_name_collisions)] fn rva2_encode() { let encoded = expected().as_bytes(); diff --git a/lofty/src/id3/v2/items/sync_text.rs b/lofty/src/id3/v2/items/sync_text.rs index b3299caf..69bc9549 100644 --- a/lofty/src/id3/v2/items/sync_text.rs +++ b/lofty/src/id3/v2/items/sync_text.rs @@ -286,7 +286,7 @@ mod tests { } } - #[test] + #[test_log::test] fn sylt_decode() { let cont = crate::tag::utils::test_utils::read_path("tests/tags/assets/id3v2/test.sylt"); @@ -295,7 +295,7 @@ mod tests { assert_eq!(parsed_sylt, expected(TextEncoding::Latin1)); } - #[test] + #[test_log::test] fn sylt_encode() { let encoded = expected(TextEncoding::Latin1).as_bytes().unwrap(); @@ -305,7 +305,7 @@ mod tests { assert_eq!(encoded, expected_bytes); } - #[test] + #[test_log::test] fn sylt_decode_utf16() { let cont = crate::tag::utils::test_utils::read_path("tests/tags/assets/id3v2/test_utf16.sylt"); @@ -315,7 +315,7 @@ mod tests { assert_eq!(parsed_sylt, expected(TextEncoding::UTF16)); } - #[test] + #[test_log::test] fn sylt_encode_utf_16() { let encoded = expected(TextEncoding::UTF16).as_bytes().unwrap(); diff --git a/lofty/src/id3/v2/items/unique_file_identifier.rs b/lofty/src/id3/v2/items/unique_file_identifier.rs index db9fdf4d..a718c024 100644 --- a/lofty/src/id3/v2/items/unique_file_identifier.rs +++ b/lofty/src/id3/v2/items/unique_file_identifier.rs @@ -121,7 +121,7 @@ mod tests { use std::borrow::Cow; - #[test] + #[test_log::test] fn issue_204_invalid_ufid_parsing_mode_best_attempt() { use crate::config::ParsingMode; use crate::id3::v2::UniqueFileIdentifierFrame; diff --git a/lofty/src/id3/v2/read.rs b/lofty/src/id3/v2/read.rs index ce0ea935..f99f2287 100644 --- a/lofty/src/id3/v2/read.rs +++ b/lofty/src/id3/v2/read.rs @@ -192,53 +192,59 @@ where Ok(tag) } -#[test] -fn zero_size_id3v2() { - use crate::config::ParsingMode; - use crate::id3::v2::header::Id3v2Header; +#[cfg(test)] +mod tests { + use super::parse_id3v2; + use crate::config::ParseOptions; - use std::io::Cursor; + #[test_log::test] + fn zero_size_id3v2() { + use crate::config::ParsingMode; + use crate::id3::v2::header::Id3v2Header; - let mut f = Cursor::new(std::fs::read("tests/tags/assets/id3v2/zero.id3v2").unwrap()); - let header = Id3v2Header::parse(&mut f).unwrap(); - assert!(parse_id3v2( - &mut f, - header, - ParseOptions::new().parsing_mode(ParsingMode::Strict) - ) - .is_ok()); -} - -#[test] -fn bad_frame_id_relaxed_id3v2() { - use crate::config::ParsingMode; - use crate::id3::v2::header::Id3v2Header; - use crate::prelude::*; - - use std::io::Cursor; - - // Contains a frame with a "+" in the ID, which is invalid. - // All other frames in the tag are valid, however. - let mut f = Cursor::new( - std::fs::read("tests/tags/assets/id3v2/bad_frame_otherwise_valid.id3v24").unwrap(), - ); - let header = Id3v2Header::parse(&mut f).unwrap(); - let id3v2 = parse_id3v2( - &mut f, - header, - ParseOptions::new().parsing_mode(ParsingMode::Relaxed), - ); - assert!(id3v2.is_ok()); - - let id3v2 = id3v2.unwrap(); - - // There are 6 valid frames and 1 invalid frame - assert_eq!(id3v2.len(), 6); - - assert_eq!(id3v2.title().as_deref(), Some("Foo title")); - assert_eq!(id3v2.artist().as_deref(), Some("Bar artist")); - assert_eq!(id3v2.comment().as_deref(), Some("Qux comment")); - assert_eq!(id3v2.year(), Some(1984)); - assert_eq!(id3v2.track(), Some(1)); - assert_eq!(id3v2.genre().as_deref(), Some("Classical")); + use std::io::Cursor; + + let mut f = Cursor::new(std::fs::read("tests/tags/assets/id3v2/zero.id3v2").unwrap()); + let header = Id3v2Header::parse(&mut f).unwrap(); + assert!(parse_id3v2( + &mut f, + header, + ParseOptions::new().parsing_mode(ParsingMode::Strict) + ) + .is_ok()); + } + + #[test_log::test] + fn bad_frame_id_relaxed_id3v2() { + use crate::config::ParsingMode; + use crate::id3::v2::header::Id3v2Header; + use crate::prelude::*; + + use std::io::Cursor; + + // Contains a frame with a "+" in the ID, which is invalid. + // All other frames in the tag are valid, however. + let mut f = Cursor::new( + std::fs::read("tests/tags/assets/id3v2/bad_frame_otherwise_valid.id3v24").unwrap(), + ); + let header = Id3v2Header::parse(&mut f).unwrap(); + let id3v2 = parse_id3v2( + &mut f, + header, + ParseOptions::new().parsing_mode(ParsingMode::Relaxed), + ); + assert!(id3v2.is_ok()); + + let id3v2 = id3v2.unwrap(); + + // There are 6 valid frames and 1 invalid frame + assert_eq!(id3v2.len(), 6); + + assert_eq!(id3v2.title().as_deref(), Some("Foo title")); + assert_eq!(id3v2.artist().as_deref(), Some("Bar artist")); + assert_eq!(id3v2.comment().as_deref(), Some("Qux comment")); + assert_eq!(id3v2.year(), Some(1984)); + assert_eq!(id3v2.track(), Some(1)); + assert_eq!(id3v2.genre().as_deref(), Some("Classical")); + } } diff --git a/lofty/src/id3/v2/tag/tests.rs b/lofty/src/id3/v2/tag/tests.rs index ba4d45a8..c8f61c5f 100644 --- a/lofty/src/id3/v2/tag/tests.rs +++ b/lofty/src/id3/v2/tag/tests.rs @@ -41,7 +41,7 @@ fn dump_and_re_read(tag: &Id3v2Tag, write_options: WriteOptions) -> Id3v2Tag { ) } -#[test] +#[test_log::test] fn parse_id3v2() { let mut expected_tag = Id3v2Tag::default(); @@ -98,7 +98,7 @@ fn parse_id3v2() { assert_eq!(expected_tag, parsed_tag); } -#[test] +#[test_log::test] fn id3v2_re_read() { let parsed_tag = read_tag("tests/tags/assets/id3v2/test.id3v24"); @@ -120,7 +120,7 @@ fn id3v2_re_read() { assert_eq!(parsed_tag, temp_parsed_tag); } -#[test] +#[test_log::test] fn id3v2_to_tag() { let id3v2 = read_tag("tests/tags/assets/id3v2/test.id3v24"); @@ -129,7 +129,7 @@ fn id3v2_to_tag() { crate::tag::utils::test_utils::verify_tag(&tag, true, true); } -#[test] +#[test_log::test] fn fail_write_bad_frame() { let mut tag = Id3v2Tag::default(); @@ -147,7 +147,7 @@ fn fail_write_bad_frame() { ); } -#[test] +#[test_log::test] fn tag_to_id3v2() { fn verify_frame(tag: &Id3v2Tag, id: &str, value: &str) { let frame = tag.get(&FrameId::Valid(Cow::Borrowed(id))); @@ -256,7 +256,7 @@ fn create_full_test_tag(version: Id3v2Version) -> Id3v2Tag { tag } -#[test] +#[test_log::test] fn id3v24_full() { let tag = create_full_test_tag(Id3v2Version::V4); let parsed_tag = read_tag("tests/tags/assets/id3v2/test_full.id3v24"); @@ -264,7 +264,7 @@ fn id3v24_full() { assert_eq!(tag, parsed_tag); } -#[test] +#[test_log::test] fn id3v23_full() { let mut tag = create_full_test_tag(Id3v2Version::V3); let mut parsed_tag = read_tag("tests/tags/assets/id3v2/test_full.id3v23"); @@ -277,7 +277,7 @@ fn id3v23_full() { assert_eq!(tag, parsed_tag); } -#[test] +#[test_log::test] fn id3v22_full() { let tag = create_full_test_tag(Id3v2Version::V2); let parsed_tag = read_tag("tests/tags/assets/id3v2/test_full.id3v22"); @@ -285,7 +285,7 @@ fn id3v22_full() { assert_eq!(tag, parsed_tag); } -#[test] +#[test_log::test] fn id3v24_footer() { let mut tag = create_full_test_tag(Id3v2Version::V4); tag.flags.footer = true; @@ -306,7 +306,7 @@ fn id3v24_footer() { assert_eq!(writer[3..10], writer[writer.len() - 7..]) } -#[test] +#[test_log::test] fn issue_36() { let picture_data = vec![0; 200]; @@ -343,7 +343,7 @@ fn issue_36() { ); } -#[test] +#[test_log::test] fn popm_frame() { let parsed_tag = read_tag("tests/tags/assets/id3v2/test_popm.id3v24"); @@ -361,7 +361,7 @@ fn popm_frame() { ) } -#[test] +#[test_log::test] fn multi_value_frame_to_tag() { let mut tag = Id3v2Tag::default(); @@ -372,7 +372,7 @@ fn multi_value_frame_to_tag() { assert_eq!(&collected_artists, &["foo", "bar", "baz"]) } -#[test] +#[test_log::test] fn multi_item_tag_to_id3v2() { let mut tag = Tag::new(TagType::Id3v2); @@ -393,12 +393,12 @@ fn multi_item_tag_to_id3v2() { assert_eq!(tag.artist().as_deref(), Some("foo/bar/baz")) } -#[test] +#[test_log::test] fn utf16_txxx_with_single_bom() { let _ = read_tag("tests/tags/assets/id3v2/issue_53.id3v24"); } -#[test] +#[test_log::test] fn replaygain_tag_conversion() { let mut tag = Id3v2Tag::default(); tag.insert(Frame::UserText(ExtendedTextFrame::new( @@ -419,7 +419,7 @@ fn replaygain_tag_conversion() { ); } -#[test] +#[test_log::test] fn multi_value_roundtrip() { let mut tag = Tag::new(TagType::Id3v2); // 1st: Multi-valued text frames @@ -486,7 +486,7 @@ fn multi_value_roundtrip() { assert_eq!(tag.items, split_tag.items); } -#[test] +#[test_log::test] fn comments() { let mut tag = Id3v2Tag::default(); let encoding = TextEncoding::Latin1; @@ -525,7 +525,7 @@ fn comments() { .is_some()); } -#[test] +#[test_log::test] fn txxx_wxxx_tag_conversion() { let txxx_frame = Frame::UserText(ExtendedTextFrame::new( TextEncoding::UTF8, @@ -568,7 +568,7 @@ fn txxx_wxxx_tag_conversion() { assert_eq!(&tag.frames, &[txxx_frame, wxxx_frame]) } -#[test] +#[test_log::test] fn user_defined_frames_conversion() { let mut id3v2 = Id3v2Tag::default(); id3v2.insert(Frame::UserText(ExtendedTextFrame::new( @@ -616,7 +616,7 @@ fn user_defined_frames_conversion() { assert_eq!(id3v2, reparsed); } -#[test] +#[test_log::test] fn set_track() { let mut id3v2 = Id3v2Tag::default(); let track = 1; @@ -627,7 +627,7 @@ fn set_track() { assert!(id3v2.track_total().is_none()); } -#[test] +#[test_log::test] fn set_track_total() { let mut id3v2 = Id3v2Tag::default(); let track_total = 2; @@ -638,7 +638,7 @@ fn set_track_total() { assert_eq!(id3v2.track_total().unwrap(), track_total); } -#[test] +#[test_log::test] fn set_track_and_track_total() { let mut id3v2 = Id3v2Tag::default(); let track = 1; @@ -651,7 +651,7 @@ fn set_track_and_track_total() { assert_eq!(id3v2.track_total().unwrap(), track_total); } -#[test] +#[test_log::test] fn set_track_total_and_track() { let mut id3v2 = Id3v2Tag::default(); let track_total = 2; @@ -664,7 +664,7 @@ fn set_track_total_and_track() { assert_eq!(id3v2.track().unwrap(), track); } -#[test] +#[test_log::test] fn set_disk() { let mut id3v2 = Id3v2Tag::default(); let disk = 1; @@ -675,7 +675,7 @@ fn set_disk() { assert!(id3v2.disk_total().is_none()); } -#[test] +#[test_log::test] fn set_disk_total() { let mut id3v2 = Id3v2Tag::default(); let disk_total = 2; @@ -686,7 +686,7 @@ fn set_disk_total() { assert_eq!(id3v2.disk_total().unwrap(), disk_total); } -#[test] +#[test_log::test] fn set_disk_and_disk_total() { let mut id3v2 = Id3v2Tag::default(); let disk = 1; @@ -699,7 +699,7 @@ fn set_disk_and_disk_total() { assert_eq!(id3v2.disk_total().unwrap(), disk_total); } -#[test] +#[test_log::test] fn set_disk_total_and_disk() { let mut id3v2 = Id3v2Tag::default(); let disk_total = 2; @@ -712,7 +712,7 @@ fn set_disk_total_and_disk() { assert_eq!(id3v2.disk().unwrap(), disk); } -#[test] +#[test_log::test] fn track_number_tag_to_id3v2() { let track_number = 1; @@ -729,7 +729,7 @@ fn track_number_tag_to_id3v2() { assert!(tag.track_total().is_none()); } -#[test] +#[test_log::test] fn track_total_tag_to_id3v2() { let track_total = 2; @@ -746,7 +746,7 @@ fn track_total_tag_to_id3v2() { assert_eq!(tag.track_total().unwrap(), track_total); } -#[test] +#[test_log::test] fn track_number_and_track_total_tag_to_id3v2() { let track_number = 1; let track_total = 2; @@ -769,7 +769,7 @@ fn track_number_and_track_total_tag_to_id3v2() { assert_eq!(tag.track_total().unwrap(), track_total); } -#[test] +#[test_log::test] fn disk_number_tag_to_id3v2() { let disk_number = 1; @@ -786,7 +786,7 @@ fn disk_number_tag_to_id3v2() { assert!(tag.disk_total().is_none()); } -#[test] +#[test_log::test] fn disk_total_tag_to_id3v2() { let disk_total = 2; @@ -803,7 +803,7 @@ fn disk_total_tag_to_id3v2() { assert_eq!(tag.disk_total().unwrap(), disk_total); } -#[test] +#[test_log::test] fn disk_number_and_disk_total_tag_to_id3v2() { let disk_number = 1; let disk_total = 2; @@ -842,7 +842,7 @@ fn create_tag_with_trck_and_tpos_frame(content: &'static str) -> Tag { tag.into() } -#[test] +#[test_log::test] fn valid_trck_and_tpos_frame() { fn assert_valid(content: &'static str, number: Option, total: Option) { let tag = create_tag_with_trck_and_tpos_frame(content); @@ -862,7 +862,7 @@ fn valid_trck_and_tpos_frame() { assert_valid("1 / 2", Some(1), Some(2)); } -#[test] +#[test_log::test] fn invalid_trck_and_tpos_frame() { fn assert_invalid(content: &'static str) { let tag = create_tag_with_trck_and_tpos_frame(content); @@ -884,7 +884,7 @@ fn invalid_trck_and_tpos_frame() { assert_invalid("0x1/0x2"); } -#[test] +#[test_log::test] fn ufid_frame_with_musicbrainz_record_id() { let mut id3v2 = Id3v2Tag::default(); let unknown_ufid_frame = @@ -936,7 +936,7 @@ fn ufid_frame_with_musicbrainz_record_id() { } } -#[test] +#[test_log::test] fn get_set_user_defined_text() { let description = String::from("FOO_BAR"); let content = String::from("Baz!\0Qux!"); @@ -988,7 +988,7 @@ fn get_set_user_defined_text() { assert!(id3v2.is_empty()); } -#[test] +#[test_log::test] fn read_multiple_composers_should_not_fail_with_bad_frame_length() { // Issue #255 let tag = read_tag("tests/tags/assets/id3v2/multiple_composers.id3v24"); @@ -1001,7 +1001,7 @@ fn read_multiple_composers_should_not_fail_with_bad_frame_length() { assert_eq!(composers.next(), None) } -#[test] +#[test_log::test] fn trim_end_nulls_when_reading_frame_content() { // Issue #273 // Tag written by mid3v2. All frames contain null-terminated UTF-8 text @@ -1034,24 +1034,24 @@ fn id3v2_tag_with_genre(value: &str) -> Id3v2Tag { tag } -#[test] +#[test_log::test] fn genre_text() { let tag = id3v2_tag_with_genre("Dream Pop"); assert_eq!(tag.genre(), Some(Cow::Borrowed("Dream Pop"))); } -#[test] +#[test_log::test] fn genre_id_brackets() { let tag = id3v2_tag_with_genre("(21)"); assert_eq!(tag.genre(), Some(Cow::Borrowed("Ska"))); } -#[test] +#[test_log::test] fn genre_id_numeric() { let tag = id3v2_tag_with_genre("21"); assert_eq!(tag.genre(), Some(Cow::Borrowed("Ska"))); } -#[test] +#[test_log::test] fn genre_id_multiple_joined() { let tag = id3v2_tag_with_genre("(51)(39)"); assert_eq!( @@ -1060,7 +1060,7 @@ fn genre_id_multiple_joined() { ); } -#[test] +#[test_log::test] fn genres_id_multiple() { let tag = id3v2_tag_with_genre("(51)(39)"); let mut genres = tag.genres().unwrap(); @@ -1069,7 +1069,7 @@ fn genres_id_multiple() { assert_eq!(genres.next(), None); } -#[test] +#[test_log::test] fn genres_id_multiple_into_tag() { let id3v2 = id3v2_tag_with_genre("(51)(39)"); let tag: Tag = id3v2.into(); @@ -1079,7 +1079,7 @@ fn genres_id_multiple_into_tag() { assert_eq!(genres.next(), None); } -#[test] +#[test_log::test] fn genres_null_separated() { let tag = id3v2_tag_with_genre("Samba-rock\0MPB\0Funk"); let mut genres = tag.genres().unwrap(); @@ -1089,7 +1089,7 @@ fn genres_null_separated() { assert_eq!(genres.next(), None); } -#[test] +#[test_log::test] fn genres_id_textual_refinement() { let tag = id3v2_tag_with_genre("(4)Eurodisco"); let mut genres = tag.genres().unwrap(); @@ -1098,7 +1098,7 @@ fn genres_id_textual_refinement() { assert_eq!(genres.next(), None); } -#[test] +#[test_log::test] fn genres_id_bracketed_refinement() { let tag = id3v2_tag_with_genre("(26)(55)((I think...)"); let mut genres = tag.genres().unwrap(); @@ -1108,7 +1108,7 @@ fn genres_id_bracketed_refinement() { assert_eq!(genres.next(), None); } -#[test] +#[test_log::test] fn genres_id_remix_cover() { let tag = id3v2_tag_with_genre("(0)(RX)(CR)"); let mut genres = tag.genres().unwrap(); @@ -1118,7 +1118,7 @@ fn genres_id_remix_cover() { assert_eq!(genres.next(), None); } -#[test] +#[test_log::test] fn tipl_round_trip() { let mut tag = Id3v2Tag::default(); let mut tipl = KeyValueFrame::new( @@ -1166,7 +1166,7 @@ fn tipl_round_trip() { } } -#[test] +#[test_log::test] fn flag_item_conversion() { let mut tag = Tag::new(TagType::Id3v2); tag.insert_text(ItemKey::FlagCompilation, "1".to_owned()); @@ -1183,7 +1183,7 @@ fn flag_item_conversion() { ); } -#[test] +#[test_log::test] fn itunes_advisory_roundtrip() { use crate::mp4::{AdvisoryRating, Ilst}; @@ -1205,7 +1205,7 @@ fn itunes_advisory_roundtrip() { assert_eq!(tag.advisory_rating(), Some(AdvisoryRating::Explicit)); } -#[test] +#[test_log::test] fn timestamp_roundtrip() { let mut tag = Id3v2Tag::default(); tag.insert(Frame::Timestamp(TimestampFrame::new( @@ -1246,7 +1246,7 @@ fn timestamp_roundtrip() { } } -#[test] +#[test_log::test] fn special_items_roundtrip() { let mut tag = Id3v2Tag::new(); @@ -1311,7 +1311,7 @@ fn special_items_roundtrip() { assert_eq!(tag_re_read, generic_tag_re_read); } -#[test] +#[test_log::test] fn preserve_comment_lang_description_on_conversion() { let mut tag = Id3v2Tag::new(); @@ -1342,7 +1342,7 @@ fn preserve_comment_lang_description_on_conversion() { } // TODO: Remove this once we have a better solution -#[test] +#[test_log::test] fn hold_back_4_character_txxx_description() { let mut tag = Id3v2Tag::new(); @@ -1355,7 +1355,7 @@ fn hold_back_4_character_txxx_description() { assert_eq!(tag.len(), 1); } -#[test] +#[test_log::test] fn skip_reading_cover_art() { let p = Picture::new_unchecked( PictureType::CoverFront, @@ -1377,7 +1377,7 @@ fn skip_reading_cover_art() { assert!(id3v2.artist().is_some()); } -#[test] +#[test_log::test] fn remove_id3v24_frames_on_id3v23_save() { let mut tag = Id3v2Tag::new(); @@ -1401,7 +1401,7 @@ fn remove_id3v24_frames_on_id3v23_save() { assert_eq!(tag_re_read.frames.len(), 0); } -#[test] +#[test_log::test] fn change_text_encoding_on_id3v23_save() { let mut tag = Id3v2Tag::new(); @@ -1426,7 +1426,7 @@ fn change_text_encoding_on_id3v23_save() { } } -#[test] +#[test_log::test] fn split_tdor_on_id3v23_save() { let mut tag = Id3v2Tag::new(); @@ -1465,7 +1465,7 @@ fn split_tdor_on_id3v23_save() { } } -#[test] +#[test_log::test] fn split_tdrc_on_id3v23_save() { let mut tag = Id3v2Tag::new(); diff --git a/lofty/src/id3/v2/util/pairs.rs b/lofty/src/id3/v2/util/pairs.rs index 586c8b84..a2100f54 100644 --- a/lofty/src/id3/v2/util/pairs.rs +++ b/lofty/src/id3/v2/util/pairs.rs @@ -60,7 +60,7 @@ mod tests { use crate::id3::v2::util::pairs::set_number; use crate::tag::{ItemKey, ItemValue, TagItem}; - #[test] + #[test_log::test] fn whitespace_in_number() { let item = TagItem::new( ItemKey::TrackNumber, @@ -69,7 +69,7 @@ mod tests { set_number(&item, |number| assert_eq!(number, 12)); } - #[test] + #[test_log::test] fn empty_number_string() { let item = TagItem::new(ItemKey::TrackNumber, ItemValue::Text(String::new())); set_number(&item, |_| unreachable!("Should not be called")); diff --git a/lofty/src/id3/v2/util/synchsafe.rs b/lofty/src/id3/v2/util/synchsafe.rs index a33ac434..516d877e 100644 --- a/lofty/src/id3/v2/util/synchsafe.rs +++ b/lofty/src/id3/v2/util/synchsafe.rs @@ -302,7 +302,7 @@ mod tests { &[0xFF, 0x00, 0x00, 0xFF, 0x12, 0xB0, 0x05, 0xFF, 0x00, 0x00]; const EXPECTED: &[u8] = &[0xFF, 0x00, 0xFF, 0x12, 0xB0, 0x05, 0xFF, 0x00]; - #[test] + #[test_log::test] fn unsynchronized_stream() { let reader = Cursor::new(UNSYNCHRONIZED_CONTENT); let mut unsynchronized_reader = UnsynchronizedStream::new(reader); @@ -315,7 +315,7 @@ mod tests { assert_eq!(final_content, EXPECTED); } - #[test] + #[test_log::test] fn unsynchronized_stream_large() { // Create a buffer >10k to force a buffer reset let reader = Cursor::new(UNSYNCHRONIZED_CONTENT.repeat(1000)); @@ -330,7 +330,7 @@ mod tests { assert_eq!(final_content, EXPECTED.repeat(1000)); } - #[test] + #[test_log::test] fn unsynchronized_stream_should_not_replace_unrelated() { const ORIGINAL_CONTENT: &[u8] = &[0xFF, 0x1A, 0xFF, 0xC0, 0x10, 0x01]; @@ -357,17 +357,17 @@ mod tests { ) => { $( paste::paste! { - #[test] + #[test_log::test] fn [<$int _synch>]() { assert_eq!($original.synch().unwrap(), $new); } - #[test] + #[test_log::test] fn [<$int _unsynch>]() { assert_eq!($original_unsync.unsynch(), $new_unsynch); } - #[test] + #[test_log::test] fn [<$int _widen>]() { assert_eq!($original_widen.widening_synch(), $new_widen); } diff --git a/lofty/src/id3/v2/write/mod.rs b/lofty/src/id3/v2/write/mod.rs index ece00ee3..1ac33b2e 100644 --- a/lofty/src/id3/v2/write/mod.rs +++ b/lofty/src/id3/v2/write/mod.rs @@ -296,7 +296,7 @@ mod tests { use crate::id3::v2::{Id3v2Tag, Id3v2TagFlags}; use crate::prelude::*; - #[test] + #[test_log::test] fn id3v2_write_crc32() { let mut tag = Id3v2Tag::default(); tag.set_artist(String::from("Foo artist")); diff --git a/lofty/src/iff/aiff/tag.rs b/lofty/src/iff/aiff/tag.rs index 355fa272..95e65f53 100644 --- a/lofty/src/iff/aiff/tag.rs +++ b/lofty/src/iff/aiff/tag.rs @@ -500,7 +500,7 @@ mod tests { use std::io::Cursor; - #[test] + #[test_log::test] fn parse_aiff_text() { let expected_tag = AiffTextChunks { name: Some(String::from("Foo title")), @@ -537,7 +537,7 @@ mod tests { assert_eq!(expected_tag, parsed_tag); } - #[test] + #[test_log::test] fn aiff_text_re_read() { let tag = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.aiff_text"); let parsed_tag = super::super::read::read_from( @@ -567,7 +567,7 @@ mod tests { assert_eq!(parsed_tag, temp_parsed_tag); } - #[test] + #[test_log::test] fn aiff_text_to_tag() { let tag_bytes = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.aiff_text"); @@ -597,7 +597,7 @@ mod tests { assert!(comments.next().is_none()); } - #[test] + #[test_log::test] fn tag_to_aiff_text() { let mut tag = Tag::new(TagType::AiffText); tag.insert_text(ItemKey::TrackTitle, String::from("Foo title")); @@ -627,7 +627,7 @@ mod tests { assert!(aiff_text.comments.is_none()); } - #[test] + #[test_log::test] fn zero_sized_text_chunks() { let tag_bytes = crate::tag::utils::test_utils::read_path("tests/tags/assets/zero.aiff_text"); diff --git a/lofty/src/iff/wav/tag/mod.rs b/lofty/src/iff/wav/tag/mod.rs index da7f4218..3d86a3a8 100644 --- a/lofty/src/iff/wav/tag/mod.rs +++ b/lofty/src/iff/wav/tag/mod.rs @@ -364,7 +364,7 @@ mod tests { use std::io::Cursor; - #[test] + #[test_log::test] fn parse_riff_info() { let mut expected_tag = RiffInfoList::default(); @@ -389,7 +389,7 @@ mod tests { assert_eq!(expected_tag, parsed_tag); } - #[test] + #[test_log::test] fn riff_info_re_read() { let tag = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.riff"); let mut parsed_tag = RiffInfoList::default(); @@ -421,7 +421,7 @@ mod tests { assert_eq!(parsed_tag, temp_parsed_tag); } - #[test] + #[test_log::test] fn riff_info_to_tag() { let tag_bytes = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.riff"); @@ -441,7 +441,7 @@ mod tests { crate::tag::utils::test_utils::verify_tag(&tag, true, false); } - #[test] + #[test_log::test] fn tag_to_riff_info() { let tag = crate::tag::utils::test_utils::create_tag(TagType::RiffInfo); diff --git a/lofty/src/mp4/ilst/mod.rs b/lofty/src/mp4/ilst/mod.rs index 95cb4d56..9231a30b 100644 --- a/lofty/src/mp4/ilst/mod.rs +++ b/lofty/src/mp4/ilst/mod.rs @@ -841,7 +841,7 @@ mod tests { assert_eq!(atom.data().next().unwrap(), data); } - #[test] + #[test_log::test] fn parse_ilst() { let mut expected_tag = Ilst::default(); @@ -911,7 +911,7 @@ mod tests { assert_eq!(expected_tag, parsed_tag); } - #[test] + #[test_log::test] fn ilst_re_read() { let parsed_tag = read_ilst_strict("tests/tags/assets/ilst/test.ilst"); @@ -934,7 +934,7 @@ mod tests { assert_eq!(parsed_tag, temp_parsed_tag); } - #[test] + #[test_log::test] fn ilst_to_tag() { let tag = crate::tag::utils::test_utils::read_path("tests/tags/assets/ilst/test.ilst"); let len = tag.len(); @@ -957,7 +957,7 @@ mod tests { assert_eq!(tag.get_string(&ItemKey::DiscTotal), Some("2")); } - #[test] + #[test_log::test] fn tag_to_ilst() { let mut tag = crate::tag::utils::test_utils::create_tag(TagType::Mp4Ilst); @@ -1009,7 +1009,7 @@ mod tests { ) } - #[test] + #[test_log::test] fn issue_34() { let ilst = read_ilst_strict("tests/tags/assets/ilst/issue_34.ilst"); @@ -1028,7 +1028,7 @@ mod tests { ) } - #[test] + #[test_log::test] fn advisory_rating() { let ilst = read_ilst_strict("tests/tags/assets/ilst/advisory_rating.ilst"); @@ -1041,7 +1041,7 @@ mod tests { assert_eq!(ilst.advisory_rating(), Some(AdvisoryRating::Explicit)); } - #[test] + #[test_log::test] fn trailing_padding() { const ILST_START: usize = 97; const ILST_END: usize = 131; @@ -1106,7 +1106,7 @@ mod tests { assert!(Mp4File::read_from(&mut file, ParseOptions::new().read_properties(false)).is_ok()); } - #[test] + #[test_log::test] fn read_non_full_meta_atom() { let file_bytes = read_path("tests/files/assets/non_full_meta_atom.m4a"); let file = Mp4File::read_from( @@ -1118,7 +1118,7 @@ mod tests { assert!(file.ilst_tag.is_some()); } - #[test] + #[test_log::test] fn write_non_full_meta_atom() { // This is testing writing to a file with a non-full meta atom // We will *not* write a non-full meta atom @@ -1147,7 +1147,7 @@ mod tests { ); } - #[test] + #[test_log::test] fn multi_value_atom() { let ilst = read_ilst_strict("tests/tags/assets/ilst/multi_value_atom.ilst"); let artist_atom = ilst.get(&AtomIdent::Fourcc(*b"\xa9ART")).unwrap(); @@ -1168,7 +1168,7 @@ mod tests { ); } - #[test] + #[test_log::test] fn multi_value_roundtrip() { let mut tag = Tag::new(TagType::Mp4Ilst); tag.insert_text(ItemKey::TrackArtist, "TrackArtist 1".to_owned()); @@ -1231,7 +1231,7 @@ mod tests { assert_eq!(tag.items, split_tag.items); } - #[test] + #[test_log::test] fn zero_sized_ilst() { let file = Mp4File::read_from( &mut Cursor::new(test_utils::read_path("tests/files/assets/zero/zero.ilst")), @@ -1242,7 +1242,7 @@ mod tests { assert_eq!(file.ilst(), Some(&Ilst::default())); } - #[test] + #[test_log::test] fn merge_insert() { let mut ilst = Ilst::new(); @@ -1258,7 +1258,7 @@ mod tests { assert_eq!(ilst.len(), 1); } - #[test] + #[test_log::test] fn invalid_atom_type() { let ilst = read_ilst_strict("tests/tags/assets/ilst/invalid_atom_type.ilst"); @@ -1272,7 +1272,7 @@ mod tests { assert_eq!(ilst.disk_total().unwrap(), 2); } - #[test] + #[test_log::test] fn invalid_string_encoding() { let ilst = read_ilst_bestattempt("tests/tags/assets/ilst/invalid_string_encoding.ilst"); @@ -1287,7 +1287,7 @@ mod tests { assert!(ilst.album().is_none()); } - #[test] + #[test_log::test] fn flag_item_conversion() { let mut tag = Tag::new(TagType::Mp4Ilst); tag.insert_text(ItemKey::FlagCompilation, "1".to_owned()); @@ -1312,7 +1312,7 @@ mod tests { ); } - #[test] + #[test_log::test] fn special_items_roundtrip() { let mut tag = Ilst::new(); @@ -1360,7 +1360,7 @@ mod tests { assert_eq!(tag_re_read, generic_tag_re_read); } - #[test] + #[test_log::test] fn skip_reading_cover_art() { let p = Picture::new_unchecked( PictureType::CoverFront, diff --git a/lofty/src/mp4/ilst/write.rs b/lofty/src/mp4/ilst/write.rs index 56815574..a19d0000 100644 --- a/lofty/src/mp4/ilst/write.rs +++ b/lofty/src/mp4/ilst/write.rs @@ -787,7 +787,7 @@ mod tests { } } - #[test] + #[test_log::test] fn integer_shrinking_unsigned() { int_test! { func: bytes_to_occupy_uint, diff --git a/lofty/src/mpeg/header.rs b/lofty/src/mpeg/header.rs index 3b882702..34376ffb 100644 --- a/lofty/src/mpeg/header.rs +++ b/lofty/src/mpeg/header.rs @@ -401,7 +401,7 @@ mod tests { use std::io::{Cursor, Read, Seek, SeekFrom}; - #[test] + #[test_log::test] fn search_for_frame_sync() { fn test(data: &[u8], expected_result: Option) { use super::search_for_frame_sync; @@ -413,7 +413,7 @@ mod tests { test(&[0x01, 0xFF], None); } - #[test] + #[test_log::test] #[rustfmt::skip] fn rev_search_for_frame_header() { fn test(reader: &mut R, expected_reader_position: Option) { diff --git a/lofty/src/ogg/tag.rs b/lofty/src/ogg/tag.rs index da7f49b2..e5e4f4a8 100644 --- a/lofty/src/ogg/tag.rs +++ b/lofty/src/ogg/tag.rs @@ -726,7 +726,7 @@ mod tests { .unwrap() } - #[test] + #[test_log::test] fn parse_vorbis_comments() { let mut expected_tag = VorbisComments::default(); @@ -746,7 +746,7 @@ mod tests { assert_eq!(expected_tag, parsed_tag); } - #[test] + #[test_log::test] fn vorbis_comments_re_read() { let file_cont = crate::tag::utils::test_utils::read_path("tests/tags/assets/test.vorbis"); let mut parsed_tag = read_tag(&file_cont); @@ -764,7 +764,7 @@ mod tests { assert_eq!(parsed_tag, temp_parsed_tag); } - #[test] + #[test_log::test] fn vorbis_comments_to_tag() { let tag_bytes = std::fs::read("tests/tags/assets/test.vorbis").unwrap(); let vorbis_comments = read_tag(&tag_bytes); @@ -774,7 +774,7 @@ mod tests { crate::tag::utils::test_utils::verify_tag(&tag, true, true); } - #[test] + #[test_log::test] fn tag_to_vorbis_comments() { let tag = crate::tag::utils::test_utils::create_tag(TagType::VorbisComments); @@ -788,7 +788,7 @@ mod tests { assert_eq!(vorbis_comments.get("GENRE"), Some("Classical")); } - #[test] + #[test_log::test] fn multi_value_roundtrip() { let mut tag = Tag::new(TagType::VorbisComments); tag.insert_text(ItemKey::TrackArtist, "TrackArtist 1".to_owned()); @@ -868,13 +868,13 @@ mod tests { assert_eq!(vorbis_comments1.items, vorbis_comments2.items); } - #[test] + #[test_log::test] fn zero_sized_vorbis_comments() { let tag_bytes = std::fs::read("tests/tags/assets/zero.vorbis").unwrap(); let _ = read_tag(&tag_bytes); } - #[test] + #[test_log::test] fn issue_60() { let tag_bytes = std::fs::read("tests/tags/assets/issue_60.vorbis").unwrap(); let tag = read_tag(&tag_bytes); @@ -883,7 +883,7 @@ mod tests { assert!(tag.items.is_empty()); } - #[test] + #[test_log::test] fn initial_key_roundtrip() { // Both the primary and alternate key should be mapped to the primary // key if stored again. Note: The outcome is undefined if both the @@ -901,7 +901,7 @@ mod tests { } } - #[test] + #[test_log::test] fn skip_reading_cover_art() { let p = Picture::new_unchecked( PictureType::CoverFront, diff --git a/lofty/src/probe.rs b/lofty/src/probe.rs index 3017ced8..110c7410 100644 --- a/lofty/src/probe.rs +++ b/lofty/src/probe.rs @@ -553,7 +553,7 @@ mod tests { use std::fs::File; - #[test] + #[test_log::test] fn mp3_id3v2_trailing_junk() { // test data that contains 4 bytes of junk (0x20) between the ID3 portion and the first MP3 frame let data: [&[u8]; 4] = [ @@ -579,7 +579,7 @@ mod tests { assert_eq!(probe.file_type(), Some(FileType::Mpeg)); } - #[test] + #[test_log::test] fn parse_options_allocation_limit() { // In this test, we read a partial MP3 file that has an ID3v2 tag containing a frame outside // of the allocation limit. We'll be testing with an encrypted frame, since we immediately read those into memory. @@ -689,62 +689,62 @@ mod tests { assert_eq!(probe.file_type(), Some(expected_file_type_guess)); } - #[test] + #[test_log::test] fn probe_aac() { test_probe("tests/files/assets/minimal/untagged.aac", FileType::Aac); } - #[test] + #[test_log::test] fn probe_aac_with_id3v2() { test_probe("tests/files/assets/minimal/full_test.aac", FileType::Aac); } - #[test] + #[test_log::test] fn probe_aiff() { test_probe("tests/files/assets/minimal/full_test.aiff", FileType::Aiff); } - #[test] + #[test_log::test] fn probe_ape_with_id3v2() { test_probe("tests/files/assets/minimal/full_test.ape", FileType::Ape); } - #[test] + #[test_log::test] fn probe_flac() { test_probe("tests/files/assets/minimal/full_test.flac", FileType::Flac); } - #[test] + #[test_log::test] fn probe_flac_with_id3v2() { test_probe("tests/files/assets/flac_with_id3v2.flac", FileType::Flac); } - #[test] + #[test_log::test] fn probe_mp3_with_id3v2() { test_probe("tests/files/assets/minimal/full_test.mp3", FileType::Mpeg); } - #[test] + #[test_log::test] fn probe_mp3_with_lots_of_junk() { test_probe("tests/files/assets/junk.mp3", FileType::Mpeg); } - #[test] + #[test_log::test] fn probe_vorbis() { test_probe("tests/files/assets/minimal/full_test.ogg", FileType::Vorbis); } - #[test] + #[test_log::test] fn probe_opus() { test_probe("tests/files/assets/minimal/full_test.opus", FileType::Opus); } - #[test] + #[test_log::test] fn probe_speex() { test_probe("tests/files/assets/minimal/full_test.spx", FileType::Speex); } - #[test] + #[test_log::test] fn probe_mp4() { test_probe( "tests/files/assets/minimal/m4a_codec_aac.m4a", @@ -752,7 +752,7 @@ mod tests { ); } - #[test] + #[test_log::test] fn probe_wav() { test_probe( "tests/files/assets/minimal/wav_format_pcm.wav", diff --git a/lofty/src/properties/tests.rs b/lofty/src/properties/tests.rs index 1940d224..af65b434 100644 --- a/lofty/src/properties/tests.rs +++ b/lofty/src/properties/tests.rs @@ -293,7 +293,7 @@ where audio_file.properties().clone() } -#[test] +#[test_log::test] fn aac_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.aac"), @@ -301,7 +301,7 @@ fn aac_properties() { ); } -#[test] +#[test_log::test] fn aiff_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.aiff"), @@ -309,7 +309,7 @@ fn aiff_properties() { ); } -#[test] +#[test_log::test] fn ape_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.ape"), @@ -317,7 +317,7 @@ fn ape_properties() { ); } -#[test] +#[test_log::test] fn flac_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.flac"), @@ -325,7 +325,7 @@ fn flac_properties() { ) } -#[test] +#[test_log::test] fn mp1_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.mp1"), @@ -333,7 +333,7 @@ fn mp1_properties() { ) } -#[test] +#[test_log::test] fn mp2_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.mp2"), @@ -341,7 +341,7 @@ fn mp2_properties() { ) } -#[test] +#[test_log::test] fn mp3_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.mp3"), @@ -349,7 +349,7 @@ fn mp3_properties() { ) } -#[test] +#[test_log::test] fn mp4_aac_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/m4a_codec_aac.m4a"), @@ -357,7 +357,7 @@ fn mp4_aac_properties() { ) } -#[test] +#[test_log::test] fn mp4_alac_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/m4a_codec_alac.m4a"), @@ -365,7 +365,7 @@ fn mp4_alac_properties() { ) } -#[test] +#[test_log::test] fn mp4_als_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/mp4_codec_als.mp4"), @@ -373,7 +373,7 @@ fn mp4_als_properties() { ) } -#[test] +#[test_log::test] fn mp4_flac_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/mp4_codec_flac.mp4"), @@ -381,7 +381,7 @@ fn mp4_flac_properties() { ) } -#[test] +#[test_log::test] fn mpc_sv5_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/mpc_sv5.mpc"), @@ -389,7 +389,7 @@ fn mpc_sv5_properties() { ) } -#[test] +#[test_log::test] fn mpc_sv7_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/mpc_sv7.mpc"), @@ -397,7 +397,7 @@ fn mpc_sv7_properties() { ) } -#[test] +#[test_log::test] fn mpc_sv8_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/mpc_sv8.mpc"), @@ -405,7 +405,7 @@ fn mpc_sv8_properties() { ) } -#[test] +#[test_log::test] fn opus_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.opus"), @@ -413,7 +413,7 @@ fn opus_properties() { ) } -#[test] +#[test_log::test] fn speex_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.spx"), @@ -421,7 +421,7 @@ fn speex_properties() { ) } -#[test] +#[test_log::test] fn vorbis_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.ogg"), @@ -429,7 +429,7 @@ fn vorbis_properties() { ) } -#[test] +#[test_log::test] fn wav_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/wav_format_pcm.wav"), @@ -437,7 +437,7 @@ fn wav_properties() { ) } -#[test] +#[test_log::test] fn wavpack_properties() { assert_eq!( get_properties::("tests/files/assets/minimal/full_test.wv"), diff --git a/lofty/src/resolve.rs b/lofty/src/resolve.rs index fe864ed5..25569762 100644 --- a/lofty/src/resolve.rs +++ b/lofty/src/resolve.rs @@ -189,7 +189,7 @@ mod tests { } } - #[test] + #[test_log::test] fn custom_resolver() { register_custom_resolver::("MyFile"); diff --git a/lofty/src/tag/items/timestamp.rs b/lofty/src/tag/items/timestamp.rs index d5ff8bb7..8b149056 100644 --- a/lofty/src/tag/items/timestamp.rs +++ b/lofty/src/tag/items/timestamp.rs @@ -240,7 +240,7 @@ mod tests { } } - #[test] + #[test_log::test] fn timestamp_decode() { let content = "2024-06-03T14:08:49"; let parsed_timestamp = @@ -249,7 +249,7 @@ mod tests { assert_eq!(parsed_timestamp, Some(expected())); } - #[test] + #[test_log::test] fn timestamp_decode_no_zero() { // Zeroes are not used let content = "2024-6-3T14:8:49"; @@ -260,7 +260,7 @@ mod tests { assert_eq!(parsed_timestamp, Some(expected())); } - #[test] + #[test_log::test] fn timestamp_decode_zero_substitution() { // Zeros are replaced by spaces let content = "2024- 6- 3T14: 8:49"; @@ -271,13 +271,13 @@ mod tests { assert_eq!(parsed_timestamp, Some(expected())); } - #[test] + #[test_log::test] fn timestamp_encode() { let encoded = expected().to_string(); assert_eq!(encoded, "2024-06-03T14:08:49"); } - #[test] + #[test_log::test] fn timestamp_encode_invalid() { let mut timestamp = expected(); @@ -286,7 +286,7 @@ mod tests { assert_eq!(timestamp.to_string().len(), 7); } - #[test] + #[test_log::test] fn reject_broken_timestamps() { let broken_timestamps: &[&[u8]] = &[ b"2024-", @@ -304,7 +304,7 @@ mod tests { } } - #[test] + #[test_log::test] fn timestamp_decode_partial() { let partial_timestamps: [(&[u8], Timestamp); 6] = [ ( @@ -361,7 +361,7 @@ mod tests { } } - #[test] + #[test_log::test] fn empty_timestamp() { let empty_timestamp = Timestamp::parse(&mut "".as_bytes(), ParsingMode::BestAttempt).unwrap(); diff --git a/lofty/src/tag/mod.rs b/lofty/src/tag/mod.rs index bd685820..0632cb16 100644 --- a/lofty/src/tag/mod.rs +++ b/lofty/src/tag/mod.rs @@ -752,7 +752,7 @@ mod tests { use std::io::{Seek, Write}; use std::process::Command; - #[test] + #[test_log::test] fn issue_37() { let file_contents = read_path("tests/files/assets/issue_37.ogg"); let mut temp_file = tempfile::NamedTempFile::new().unwrap(); @@ -784,7 +784,7 @@ mod tests { ); } - #[test] + #[test_log::test] fn issue_130_huge_picture() { // Verify we have opus-tools available, otherwise skip match Command::new("opusinfo").output() { @@ -824,7 +824,7 @@ mod tests { assert!(!stderr.contains("WARNING:")); } - #[test] + #[test_log::test] fn should_preserve_empty_title() { let mut tag = Tag::new(TagType::Id3v2); tag.set_title(String::from("Foo title")); @@ -838,7 +838,7 @@ mod tests { assert_eq!(tag.title(), None); } - #[test] + #[test_log::test] fn try_parse_year_with_leading_trailing_whitespace_and_various_formats() { assert_eq!(Some(1983), try_parse_year("\t 1983\n")); assert_eq!(Some(1983), try_parse_year("1983-1")); @@ -850,7 +850,7 @@ mod tests { assert_eq!(Some(1983), try_parse_year("1983-01-02T10:24:08.001Z")); } - #[test] + #[test_log::test] fn should_not_parse_year_from_less_than_4_digits() { assert!(try_parse_year("198").is_none()); assert!(try_parse_year("19").is_none()); diff --git a/lofty/src/util/alloc.rs b/lofty/src/util/alloc.rs index b179f431..0f7941ae 100644 --- a/lofty/src/util/alloc.rs +++ b/lofty/src/util/alloc.rs @@ -83,7 +83,7 @@ impl VecFallibleCapacity for Vec { mod tests { use crate::util::alloc::fallible_vec_from_element; - #[test] + #[test_log::test] fn vec_fallible_repeat() { let u8_vec_len_20 = fallible_vec_from_element(0u8, 20).unwrap(); assert_eq!(u8_vec_len_20.len(), 20); diff --git a/lofty/src/util/io.rs b/lofty/src/util/io.rs index 2d9bced7..c6ff4652 100644 --- a/lofty/src/util/io.rs +++ b/lofty/src/util/io.rs @@ -277,7 +277,7 @@ mod tests { tag.set_artist(String::from("Foo artist")); } - #[test] + #[test_log::test] fn io_save_to_file() { // Read the file and change the artist let mut file = file(); @@ -309,7 +309,7 @@ mod tests { assert_eq!(current_file_contents, test_asset_contents()); } - #[test] + #[test_log::test] fn io_save_to_vec() { // Same test as above, but using a Cursor> instead of a file let mut file = file(); @@ -333,7 +333,7 @@ mod tests { assert_eq!(current_file_contents, test_asset_contents()); } - #[test] + #[test_log::test] fn io_save_using_references() { struct File { buf: Vec, diff --git a/lofty/src/util/math.rs b/lofty/src/util/math.rs index ae78f57e..229c28f5 100644 --- a/lofty/src/util/math.rs +++ b/lofty/src/util/math.rs @@ -96,7 +96,7 @@ impl F80 { mod tests { use super::*; - #[test] + #[test_log::test] fn test_div_round() { #[derive(Debug)] struct TestEntry { @@ -129,7 +129,7 @@ mod tests { } } - #[test] + #[test_log::test] fn test_f80() { fn cmp_float_nearly_equal(a: f64, b: f64) -> bool { if a.is_infinite() && b.is_infinite() { diff --git a/lofty/src/util/text.rs b/lofty/src/util/text.rs index e7392040..39918e94 100644 --- a/lofty/src/util/text.rs +++ b/lofty/src/util/text.rs @@ -344,7 +344,7 @@ mod tests { const TEST_STRING: &str = "l\u{00f8}ft\u{00a5}"; - #[test] + #[test_log::test] fn text_decode() { // No BOM let utf16_decode = super::utf16_decode_bytes( @@ -386,7 +386,7 @@ mod tests { assert_eq!(utf8_decode.content, TEST_STRING.to_string()); } - #[test] + #[test_log::test] fn text_encode() { // No BOM let utf16_encode = super::utf16_encode(TEST_STRING, u16::to_be_bytes, true, false); diff --git a/lofty/tests/files/aac.rs b/lofty/tests/files/aac.rs index e514c7e4..737ec051 100644 --- a/lofty/tests/files/aac.rs +++ b/lofty/tests/files/aac.rs @@ -7,7 +7,7 @@ use lofty::tag::TagType; use std::io::Seek; -#[test] +#[test_log::test] fn read() { // Here we have an AAC file with an ID3v2, and an ID3v1 tag let file = Probe::open("tests/files/assets/minimal/full_test.aac") @@ -25,7 +25,7 @@ fn read() { crate::verify_artist!(file, tag, TagType::Id3v1, "Bar artist", 1); } -#[test] +#[test_log::test] fn read_with_junk_bytes_between_frames() { // Read a file that includes an ID3v2.3 data block followed by four bytes of junk data (0x20) @@ -54,7 +54,7 @@ fn read_with_junk_bytes_between_frames() { assert_eq!(id3v1_tag.title().as_deref(), Some("title test")); } -#[test] +#[test_log::test] fn write() { let mut file = temp_file!("tests/files/assets/minimal/full_test.aac"); @@ -87,22 +87,22 @@ fn write() { crate::set_artist!(tagged_file, tag_mut, TagType::Id3v1, "Baz artist", 1 => file, "Bar artist"); } -#[test] +#[test_log::test] fn remove_id3v2() { crate::remove_tag!("tests/files/assets/minimal/full_test.aac", TagType::Id3v2); } -#[test] +#[test_log::test] fn remove_id3v1() { crate::remove_tag!("tests/files/assets/minimal/full_test.aac", TagType::Id3v1); } -#[test] +#[test_log::test] fn read_no_properties() { crate::no_properties_test!("tests/files/assets/minimal/full_test.aac"); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/full_test.aac"); } diff --git a/lofty/tests/files/aiff.rs b/lofty/tests/files/aiff.rs index 72e32379..5076ee21 100644 --- a/lofty/tests/files/aiff.rs +++ b/lofty/tests/files/aiff.rs @@ -7,7 +7,7 @@ use lofty::tag::TagType; use std::io::Seek; -#[test] +#[test_log::test] fn read() { // Here we have an AIFF file with both an ID3v2 chunk and text chunks let file = Probe::open("tests/files/assets/minimal/full_test.aiff") @@ -25,7 +25,7 @@ fn read() { crate::verify_artist!(file, tag, TagType::AiffText, "Bar artist", 1); } -#[test] +#[test_log::test] fn write() { let mut file = temp_file!("tests/files/assets/minimal/full_test.aiff"); @@ -58,7 +58,7 @@ fn write() { crate::set_artist!(tagged_file, tag_mut, TagType::AiffText, "Baz artist", 1 => file, "Bar artist"); } -#[test] +#[test_log::test] fn remove_text_chunks() { crate::remove_tag!( "tests/files/assets/minimal/full_test.aiff", @@ -66,17 +66,17 @@ fn remove_text_chunks() { ); } -#[test] +#[test_log::test] fn remove_id3v2() { crate::remove_tag!("tests/files/assets/minimal/full_test.aiff", TagType::Id3v2); } -#[test] +#[test_log::test] fn read_no_properties() { crate::no_properties_test!("tests/files/assets/minimal/full_test.aiff"); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/full_test.aiff"); } diff --git a/lofty/tests/files/ape.rs b/lofty/tests/files/ape.rs index 8ec458d5..93ae133d 100644 --- a/lofty/tests/files/ape.rs +++ b/lofty/tests/files/ape.rs @@ -7,7 +7,7 @@ use lofty::tag::TagType; use std::io::Seek; -#[test] +#[test_log::test] fn read() { // Here we have an APE file with an ID3v2, ID3v1, and an APEv2 tag let file = Probe::open("tests/files/assets/minimal/full_test.ape") @@ -28,7 +28,7 @@ fn read() { crate::verify_artist!(file, tag, TagType::Id3v2, "Baz artist", 1); } -#[test] +#[test_log::test] fn write() { // We don't write an ID3v2 tag here since it's against the spec let mut file = temp_file!("tests/files/assets/minimal/full_test.ape"); @@ -62,27 +62,27 @@ fn write() { crate::set_artist!(tagged_file, tag_mut, TagType::Id3v1, "Baz artist", 1 => file, "Bar artist"); } -#[test] +#[test_log::test] fn remove_ape() { crate::remove_tag!("tests/files/assets/minimal/full_test.ape", TagType::Ape); } -#[test] +#[test_log::test] fn remove_id3v1() { crate::remove_tag!("tests/files/assets/minimal/full_test.ape", TagType::Id3v1); } -#[test] +#[test_log::test] fn remove_id3v2() { crate::remove_tag!("tests/files/assets/minimal/full_test.ape", TagType::Id3v2); } -#[test] +#[test_log::test] fn read_no_properties() { crate::no_properties_test!("tests/files/assets/minimal/full_test.ape"); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/full_test.ape"); } diff --git a/lofty/tests/files/flac.rs b/lofty/tests/files/flac.rs index 70e934bf..c7983080 100644 --- a/lofty/tests/files/flac.rs +++ b/lofty/tests/files/flac.rs @@ -8,7 +8,7 @@ use lofty::flac::FlacFile; use lofty::ogg::VorbisComments; use lofty::prelude::*; -#[test] +#[test_log::test] fn multiple_vorbis_comments() { let mut file = File::open("tests/files/assets/two_vorbis_comments.flac").unwrap(); @@ -34,17 +34,17 @@ fn multiple_vorbis_comments() { ); } -#[test] +#[test_log::test] fn read_no_properties() { crate::no_properties_test!("tests/files/assets/minimal/full_test.flac"); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/full_test.flac"); } -#[test] +#[test_log::test] fn retain_vendor_string() { let mut file = temp_file!("tests/files/assets/minimal/full_test.flac"); diff --git a/lofty/tests/files/mp4.rs b/lofty/tests/files/mp4.rs index cb6bbb1f..fc9c0d18 100644 --- a/lofty/tests/files/mp4.rs +++ b/lofty/tests/files/mp4.rs @@ -7,7 +7,7 @@ use lofty::tag::TagType; use std::io::Seek; -#[test] +#[test_log::test] fn read() { // This file contains an ilst atom let file = Probe::open("tests/files/assets/minimal/m4a_codec_aac.m4a") @@ -22,7 +22,7 @@ fn read() { crate::verify_artist!(file, primary_tag, "Foo artist", 1); } -#[test] +#[test_log::test] fn write() { let mut file = temp_file!("tests/files/assets/minimal/m4a_codec_aac.m4a"); @@ -51,7 +51,7 @@ fn write() { crate::set_artist!(tagged_file, tag_mut, TagType::Mp4Ilst, "Bar artist", 1 => file, "Foo artist"); } -#[test] +#[test_log::test] fn remove() { crate::remove_tag!( "tests/files/assets/minimal/m4a_codec_aac.m4a", @@ -59,12 +59,12 @@ fn remove() { ); } -#[test] +#[test_log::test] fn read_no_properties() { crate::no_properties_test!("tests/files/assets/minimal/m4a_codec_aac.m4a"); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/m4a_codec_aac.m4a"); } diff --git a/lofty/tests/files/mpc.rs b/lofty/tests/files/mpc.rs index 9d29f6dc..e3a251d5 100644 --- a/lofty/tests/files/mpc.rs +++ b/lofty/tests/files/mpc.rs @@ -9,13 +9,13 @@ use lofty::tag::TagType; use std::io::Seek; // Marker test so IntelliJ Rust recognizes this as a test module -#[test] +#[test_log::test] fn fake() {} macro_rules! generate_tests { ($stream_version:ident, $path:literal) => { paste::paste! { - #[test] + #[test_log::test] fn []() { // Here we have an MPC file with an ID3v2, ID3v1, and an APEv2 tag let file = Probe::open($path) @@ -37,7 +37,7 @@ macro_rules! generate_tests { } - #[test] + #[test_log::test] fn []() { let mut file = temp_file!($path); @@ -65,27 +65,27 @@ macro_rules! generate_tests { crate::set_artist!(tagged_file, primary_tag_mut, "Bar artist", 1 => file, "Foo artist"); } - #[test] + #[test_log::test] fn []() { crate::remove_tag!($path, TagType::Id3v2); } - #[test] + #[test_log::test] fn []() { crate::remove_tag!($path, TagType::Id3v1); } - #[test] + #[test_log::test] fn []() { crate::remove_tag!($path, TagType::Ape); } - #[test] + #[test_log::test] fn []() { crate::no_properties_test!($path); } - #[test] + #[test_log::test] fn []() { crate::no_tag_test!($path); } @@ -98,7 +98,7 @@ generate_tests!(sv7, "tests/files/assets/minimal/mpc_sv7.mpc"); // We have to use `MpcFile::read_from` for stream versions <= 6 -#[test] +#[test_log::test] fn read_sv5() { let mut file = temp_file!("tests/files/assets/minimal/mpc_sv5.mpc"); diff --git a/lofty/tests/files/mpeg.rs b/lofty/tests/files/mpeg.rs index dd1fc497..bae4ae52 100644 --- a/lofty/tests/files/mpeg.rs +++ b/lofty/tests/files/mpeg.rs @@ -10,7 +10,7 @@ use lofty::tag::{Tag, TagType}; use std::borrow::Cow; use std::io::Seek; -#[test] +#[test_log::test] fn read() { // Here we have an MP3 file with an ID3v2, ID3v1, and an APEv2 tag let file = Probe::open("tests/files/assets/minimal/full_test.mp3") @@ -31,7 +31,7 @@ fn read() { crate::verify_artist!(file, tag, TagType::Ape, "Baz artist", 1); } -#[test] +#[test_log::test] fn read_with_junk_bytes_between_frames() { // Read a file that includes an ID3v2.3 data block followed by four bytes of junk data (0x20) let file = Probe::open("tests/files/assets/junk_between_id3_and_mp3.mp3") @@ -57,7 +57,7 @@ fn read_with_junk_bytes_between_frames() { assert_eq!(id3v1_tag.title().as_deref(), Some("title test")); } -#[test] +#[test_log::test] fn issue_82_solidus_in_tag() { let file = Probe::open("tests/files/assets/issue_82_solidus_in_tag.mp3") .unwrap() @@ -70,7 +70,7 @@ fn issue_82_solidus_in_tag() { assert_eq!(id3v2_tag.title().as_deref(), Some("Foo / title")); } -#[test] +#[test_log::test] fn issue_87_duplicate_id3v2() { // The first tag has a bunch of information: An album, artist, encoder, and a title. // This tag is immediately followed by another the contains an artist. @@ -93,7 +93,7 @@ fn issue_87_duplicate_id3v2() { assert_eq!(id3v2_tag.title().as_deref(), Some("title test")); } -#[test] +#[test_log::test] fn write() { let mut file = temp_file!("tests/files/assets/minimal/full_test.mp3"); @@ -131,7 +131,7 @@ fn write() { crate::set_artist!(tagged_file, tag_mut, TagType::Ape, "Qux artist", 1 => file, "Baz artist"); } -#[test] +#[test_log::test] fn save_to_id3v2() { let mut file = temp_file!("tests/files/assets/minimal/full_test.mp3"); @@ -169,7 +169,7 @@ fn save_to_id3v2() { assert!(tag.disk_total().is_none()); } -#[test] +#[test_log::test] fn save_number_of_track_and_disk_to_id3v2() { let mut file = temp_file!("tests/files/assets/minimal/full_test.mp3"); @@ -210,7 +210,7 @@ fn save_number_of_track_and_disk_to_id3v2() { assert!(tag.disk_total().is_none()); } -#[test] +#[test_log::test] fn test_bound_tagged_into_inner() { let file = temp_file!("tests/files/assets/minimal/full_test.mp3"); @@ -233,7 +233,7 @@ fn test_bound_tagged_into_inner() { assert_eq!(tag.disk(), Some(123)); } -#[test] +#[test_log::test] fn save_total_of_track_and_disk_to_id3v2() { let mut file = temp_file!("tests/files/assets/minimal/full_test.mp3"); @@ -274,7 +274,7 @@ fn save_total_of_track_and_disk_to_id3v2() { assert_eq!(tag.disk_total().unwrap(), disk_total); } -#[test] +#[test_log::test] fn save_number_pair_of_track_and_disk_to_id3v2() { let mut file = temp_file!("tests/files/assets/minimal/full_test.mp3"); @@ -320,22 +320,22 @@ fn save_number_pair_of_track_and_disk_to_id3v2() { assert_eq!(tag.disk_total().unwrap(), disk_total); } -#[test] +#[test_log::test] fn remove_id3v2() { crate::remove_tag!("tests/files/assets/minimal/full_test.mp3", TagType::Id3v2); } -#[test] +#[test_log::test] fn remove_id3v1() { crate::remove_tag!("tests/files/assets/minimal/full_test.mp3", TagType::Id3v1); } -#[test] +#[test_log::test] fn remove_ape() { crate::remove_tag!("tests/files/assets/minimal/full_test.mp3", TagType::Ape); } -#[test] +#[test_log::test] fn read_and_write_tpil_frame() { let key_value_pairs = vec![ ("engineer".to_string(), "testperson".to_string()), @@ -370,7 +370,7 @@ fn read_and_write_tpil_frame() { assert_eq!(key_value_pairs, content.key_value_pairs); } -#[test] +#[test_log::test] fn read_no_properties() { let mut file = crate::temp_file!("tests/files/assets/minimal/full_test.mp3"); let tagged_file = Probe::new(&mut file) @@ -388,7 +388,7 @@ fn read_no_properties() { assert_eq!(properties.channels(), Some(0)); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/full_test.mp3"); } diff --git a/lofty/tests/files/ogg.rs b/lofty/tests/files/ogg.rs index 1d290345..3fb792e8 100644 --- a/lofty/tests/files/ogg.rs +++ b/lofty/tests/files/ogg.rs @@ -10,17 +10,17 @@ use std::io::Seek; // The tests for OGG Opus/Vorbis/Speex are nearly identical // We have the vendor string and a title stored in the tag -#[test] +#[test_log::test] fn opus_read() { read("tests/files/assets/minimal/full_test.opus", FileType::Opus) } -#[test] +#[test_log::test] fn opus_write() { write("tests/files/assets/minimal/full_test.opus", FileType::Opus) } -#[test] +#[test_log::test] fn opus_remove() { remove( "tests/files/assets/minimal/full_test.opus", @@ -28,18 +28,18 @@ fn opus_remove() { ) } -#[test] +#[test_log::test] fn flac_read() { // FLAC does **not** require a Vorbis comment block be present, this file has one read("tests/files/assets/minimal/full_test.flac", FileType::Flac) } -#[test] +#[test_log::test] fn flac_write() { write("tests/files/assets/minimal/full_test.flac", FileType::Flac) } -#[test] +#[test_log::test] fn flac_remove_vorbis_comments() { crate::remove_tag!( "tests/files/assets/minimal/full_test.flac", @@ -47,17 +47,17 @@ fn flac_remove_vorbis_comments() { ); } -#[test] +#[test_log::test] fn vorbis_read() { read("tests/files/assets/minimal/full_test.ogg", FileType::Vorbis) } -#[test] +#[test_log::test] fn vorbis_write() { write("tests/files/assets/minimal/full_test.ogg", FileType::Vorbis) } -#[test] +#[test_log::test] fn vorbis_remove() { remove( "tests/files/assets/minimal/full_test.ogg", @@ -65,17 +65,17 @@ fn vorbis_remove() { ) } -#[test] +#[test_log::test] fn speex_read() { read("tests/files/assets/minimal/full_test.spx", FileType::Speex) } -#[test] +#[test_log::test] fn speex_write() { write("tests/files/assets/minimal/full_test.spx", FileType::Speex) } -#[test] +#[test_log::test] fn speex_remove() { remove( "tests/files/assets/minimal/full_test.spx", @@ -150,7 +150,7 @@ fn remove(path: &str, tag_type: TagType) { assert_eq!(tagged_file.tag(tag_type).unwrap().item_count(), 1); } -#[test] +#[test_log::test] fn flac_with_id3v2() { use lofty::flac::FlacFile; @@ -167,12 +167,12 @@ fn flac_with_id3v2() { assert!(flac_file.vorbis_comments().is_some()); } -#[test] +#[test_log::test] fn flac_remove_id3v2() { crate::remove_tag!("tests/files/assets/flac_with_id3v2.flac", TagType::Id3v2); } -#[test] +#[test_log::test] fn flac_try_write_non_empty_id3v2() { use lofty::id3::v2::Id3v2Tag; @@ -187,32 +187,32 @@ fn flac_try_write_non_empty_id3v2() { .is_err()); } -#[test] +#[test_log::test] fn read_no_properties_opus() { crate::no_properties_test!("tests/files/assets/minimal/full_test.opus"); } -#[test] +#[test_log::test] fn read_no_tags_opus() { crate::no_tag_test!(@MANDATORY_TAG "tests/files/assets/minimal/full_test.opus", expected_len: 1); } -#[test] +#[test_log::test] fn read_no_properties_vorbis() { crate::no_properties_test!("tests/files/assets/minimal/full_test.ogg"); } -#[test] +#[test_log::test] fn read_no_tags_vorbis() { crate::no_tag_test!(@MANDATORY_TAG "tests/files/assets/minimal/full_test.ogg", expected_len: 1); } -#[test] +#[test_log::test] fn read_no_properties_speex() { crate::no_properties_test!("tests/files/assets/minimal/full_test.spx"); } -#[test] +#[test_log::test] fn read_no_tags_speex() { crate::no_tag_test!(@MANDATORY_TAG "tests/files/assets/minimal/full_test.spx", expected_len: 1); } diff --git a/lofty/tests/files/wav.rs b/lofty/tests/files/wav.rs index 12e64a6e..9fc5ede4 100644 --- a/lofty/tests/files/wav.rs +++ b/lofty/tests/files/wav.rs @@ -7,7 +7,7 @@ use lofty::tag::TagType; use std::io::Seek; -#[test] +#[test_log::test] fn read() { // Here we have a WAV file with both an ID3v2 chunk and a RIFF INFO chunk let file = Probe::open("tests/files/assets/minimal/wav_format_pcm.wav") @@ -25,7 +25,7 @@ fn read() { crate::verify_artist!(file, tag, TagType::RiffInfo, "Bar artist", 1); } -#[test] +#[test_log::test] fn write() { let mut file = temp_file!("tests/files/assets/minimal/wav_format_pcm.wav"); @@ -58,7 +58,7 @@ fn write() { crate::set_artist!(tagged_file, tag_mut, TagType::RiffInfo, "Baz artist", 1 => file, "Bar artist"); } -#[test] +#[test_log::test] fn remove_id3v2() { crate::remove_tag!( "tests/files/assets/minimal/wav_format_pcm.wav", @@ -66,7 +66,7 @@ fn remove_id3v2() { ); } -#[test] +#[test_log::test] fn remove_riff_info() { crate::remove_tag!( "tests/files/assets/minimal/wav_format_pcm.wav", @@ -74,7 +74,7 @@ fn remove_riff_info() { ); } -#[test] +#[test_log::test] fn issue_174_divide_by_zero() { let file = Probe::open( "tests/files/assets/issue_174_waveformatextensible-ieeefloat-44100Hz-mono95060.wav", @@ -86,12 +86,12 @@ fn issue_174_divide_by_zero() { assert_eq!(file.file_type(), FileType::Wav); } -#[test] +#[test_log::test] fn read_no_properties() { crate::no_properties_test!("tests/files/assets/minimal/wav_format_pcm.wav"); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/wav_format_pcm.wav"); } diff --git a/lofty/tests/files/wavpack.rs b/lofty/tests/files/wavpack.rs index a9bfc4f8..28c97e1d 100644 --- a/lofty/tests/files/wavpack.rs +++ b/lofty/tests/files/wavpack.rs @@ -7,7 +7,7 @@ use lofty::tag::TagType; use std::io::Seek; -#[test] +#[test_log::test] fn read() { // Here we have a WacPack file with both an ID3v1 tag and an APE tag let file = Probe::open("tests/files/assets/minimal/full_test.wv") @@ -25,7 +25,7 @@ fn read() { crate::verify_artist!(file, tag, TagType::Id3v1, "Bar artist", 1); } -#[test] +#[test_log::test] fn write() { let mut file = temp_file!("tests/files/assets/minimal/full_test.wv"); @@ -58,22 +58,22 @@ fn write() { set_artist!(tagged_file, tag_mut, TagType::Id3v1, "Baz artist", 1 => file, "Bar artist"); } -#[test] +#[test_log::test] fn remove_id3v1() { crate::remove_tag!("tests/files/assets/minimal/full_test.wv", TagType::Id3v1); } -#[test] +#[test_log::test] fn remove_ape() { crate::remove_tag!("tests/files/assets/minimal/full_test.wv", TagType::Ape); } -#[test] +#[test_log::test] fn read_no_properties() { crate::no_properties_test!("tests/files/assets/minimal/full_test.wv"); } -#[test] +#[test_log::test] fn read_no_tags() { crate::no_tag_test!("tests/files/assets/minimal/full_test.wv"); } diff --git a/lofty/tests/files/zero_sized.rs b/lofty/tests/files/zero_sized.rs index 518945d1..bab012e9 100644 --- a/lofty/tests/files/zero_sized.rs +++ b/lofty/tests/files/zero_sized.rs @@ -23,7 +23,7 @@ fn read_file_no_properties(path: &str) -> bool { res.is_ok() } -#[test] +#[test_log::test] fn zero_audio_aiff() { let path = "tests/files/assets/zero/zero.aiff"; @@ -33,7 +33,7 @@ fn zero_audio_aiff() { assert!(read_file_no_properties::(path)); } -#[test] +#[test_log::test] fn zero_audio_ape() { let path = "tests/files/assets/zero/zero.ape"; @@ -43,14 +43,14 @@ fn zero_audio_ape() { assert!(read_file_no_properties::(path)) } -#[test] +#[test_log::test] fn zero_audio_flac() { let path = "tests/files/assets/zero/zero.flac"; assert!(read_file_with_properties::(path)); assert!(read_file_no_properties::(path)); } -#[test] +#[test_log::test] fn zero_audio_mp3() { let path = "tests/files/assets/zero/zero.mp3"; // A zero-size MP3 will error, since we need MPEG frames to extract audio properties @@ -59,7 +59,7 @@ fn zero_audio_mp3() { assert!(read_file_no_properties::(path)) } -#[test] +#[test_log::test] fn zero_audio_mp4() { let path = "tests/files/assets/zero/zero.mp4"; @@ -71,7 +71,7 @@ fn zero_audio_mp4() { // zero-size Vorbis, Opus, and Speex files are invalid -#[test] +#[test_log::test] fn zero_audio_wav() { let path = "tests/files/assets/zero/zero.wav"; // An empty "data" chunk is an error diff --git a/lofty/tests/fuzz/aacfile_read_from.rs b/lofty/tests/fuzz/aacfile_read_from.rs index 8a97cb80..8b090a6b 100644 --- a/lofty/tests/fuzz/aacfile_read_from.rs +++ b/lofty/tests/fuzz/aacfile_read_from.rs @@ -2,7 +2,7 @@ use lofty::aac::AacFile; use lofty::config::ParseOptions; use lofty::file::AudioFile; -#[test] +#[test_log::test] fn panic1() { let mut reader = crate::get_reader( "aacfile_read_from/01 - aalborg_IDX_9_RAND_168952727934877251846138.mp3", diff --git a/lofty/tests/fuzz/aifffile_read_from.rs b/lofty/tests/fuzz/aifffile_read_from.rs index 37bdadbc..f5156099 100644 --- a/lofty/tests/fuzz/aifffile_read_from.rs +++ b/lofty/tests/fuzz/aifffile_read_from.rs @@ -3,12 +3,12 @@ use lofty::config::ParseOptions; use lofty::file::AudioFile; use lofty::iff::aiff::AiffFile; -#[test] +#[test_log::test] fn oom1() { oom_test::("aifffile_read_from/oom-88065007d35ee271d5812fd723a3b458488813ea"); } -#[test] +#[test_log::test] fn panic1() { let mut reader = get_reader("aifffile_read_from/full_test_IDX_5_RAND_89430166450532348786207.aiff"); diff --git a/lofty/tests/fuzz/flacfile_read_from.rs b/lofty/tests/fuzz/flacfile_read_from.rs index d9a0f4e6..a7146c5f 100644 --- a/lofty/tests/fuzz/flacfile_read_from.rs +++ b/lofty/tests/fuzz/flacfile_read_from.rs @@ -3,12 +3,12 @@ use lofty::config::ParseOptions; use lofty::file::AudioFile; use lofty::flac::FlacFile; -#[test] +#[test_log::test] fn oom1() { oom_test::("flacfile_read_from/oom-9268264e9bc5e2124e4d63cbff8cff0b0dec6644"); } -#[test] +#[test_log::test] fn panic1() { let mut reader = get_reader("flacfile_read_from/flac_with_id3v2_IDX_39_RAND_108668567929800767822112.flac"); diff --git a/lofty/tests/fuzz/id3v2.rs b/lofty/tests/fuzz/id3v2.rs index 0d6827a3..098956c3 100644 --- a/lofty/tests/fuzz/id3v2.rs +++ b/lofty/tests/fuzz/id3v2.rs @@ -1,6 +1,6 @@ use lofty::id3::v2::FrameFlags; -#[test] +#[test_log::test] fn unreachable1() { // https://github.com/Serial-ATA/lofty-rs/issues/295 let data = [1, 0, 0, 0]; @@ -16,7 +16,7 @@ fn unreachable1() { ); } -#[test] +#[test_log::test] fn overflow1() { // https://github.com/Serial-ATA/lofty-rs/issues/295 let data = [ diff --git a/lofty/tests/fuzz/mp4file_read_from.rs b/lofty/tests/fuzz/mp4file_read_from.rs index f49d71b0..652e29d7 100644 --- a/lofty/tests/fuzz/mp4file_read_from.rs +++ b/lofty/tests/fuzz/mp4file_read_from.rs @@ -3,12 +3,12 @@ use lofty::config::ParseOptions; use lofty::file::AudioFile; use lofty::mp4::Mp4File; -#[test] +#[test_log::test] fn oom1() { oom_test::("mp4file_read_from/oom-db2665d79ec9c045bdb9c1e9a3d0c93e7e59393e"); } -#[test] +#[test_log::test] fn panic1() { let mut reader = crate::get_reader( "mp4file_read_from/steam_at_mention_IDX_34_RAND_4491956654166691611931.m4a", @@ -16,7 +16,7 @@ fn panic1() { let _ = Mp4File::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic2() { let mut reader = crate::get_reader( "mp4file_read_from/steam_at_mention_IDX_33_RAND_122808229373977607781108.m4a", @@ -24,7 +24,7 @@ fn panic2() { let _ = Mp4File::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic3() { let mut reader = crate::get_reader( "mp4file_read_from/steam_at_mention_IDX_60_RAND_135276517902742448802109.m4a", @@ -32,7 +32,7 @@ fn panic3() { let _ = Mp4File::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic4() { let mut reader = crate::get_reader( "mp4file_read_from/steam_at_mention_IDX_83_RAND_107070306175668418039559.m4a", @@ -40,7 +40,7 @@ fn panic4() { let _ = Mp4File::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic5() { let mut reader = crate::get_reader( "mp4file_read_from/steam_at_mention_IDX_97_RAND_34488648178055098192895.m4a", @@ -48,7 +48,7 @@ fn panic5() { let _ = Mp4File::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic6() { let mut reader = crate::get_reader( "mp4file_read_from/ui_steam_smoother_friend_join_IDX_53_RAND_83672409887817275057956.m4a", diff --git a/lofty/tests/fuzz/mpcfile_read_from.rs b/lofty/tests/fuzz/mpcfile_read_from.rs index 0aa3db47..98acc244 100644 --- a/lofty/tests/fuzz/mpcfile_read_from.rs +++ b/lofty/tests/fuzz/mpcfile_read_from.rs @@ -3,7 +3,7 @@ use lofty::file::AudioFile; use lofty::musepack::MpcFile; // Overflow when passing an AAC file to MpcFile::read_from -#[test] +#[test_log::test] fn panic1() { let mut reader = crate::get_reader("mpcfile_read_from/output.aac"); let _ = MpcFile::read_from(&mut reader, ParseOptions::new()); diff --git a/lofty/tests/fuzz/mpegfile_read_from.rs b/lofty/tests/fuzz/mpegfile_read_from.rs index ff9f89c7..9c1df1aa 100644 --- a/lofty/tests/fuzz/mpegfile_read_from.rs +++ b/lofty/tests/fuzz/mpegfile_read_from.rs @@ -3,7 +3,7 @@ use lofty::config::ParseOptions; use lofty::mpeg::MpegFile; use lofty::prelude::*; -#[test] +#[test_log::test] fn crash1() { let mut reader = get_reader("mpegfile_read_from/crash-9b17818b6404b1c4b9f89c09dc11e915b96cafc6"); @@ -11,7 +11,7 @@ fn crash1() { let _ = MpegFile::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn crash2() { let mut reader = get_reader("mpegfile_read_from/crash-718f75611e77caac968c7f68cdefa1472172f64b"); @@ -19,7 +19,7 @@ fn crash2() { let _ = MpegFile::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn oom1() { oom_test::("mpegfile_read_from/oom-f8730cbfa5682ab12343ccb70de9b71a061ef4d0"); } diff --git a/lofty/tests/fuzz/opusfile_read_from.rs b/lofty/tests/fuzz/opusfile_read_from.rs index 07ca96ac..1c27a449 100644 --- a/lofty/tests/fuzz/opusfile_read_from.rs +++ b/lofty/tests/fuzz/opusfile_read_from.rs @@ -1,7 +1,7 @@ use crate::oom_test; use lofty::ogg::OpusFile; -#[test] +#[test_log::test] fn oom1() { oom_test::("opusfile_read_from/oom-7126e68a5a9ef53351c46f3c55b7e1a582705fcc"); } diff --git a/lofty/tests/fuzz/pictureinformation_from_jpeg.rs b/lofty/tests/fuzz/pictureinformation_from_jpeg.rs index 90c6e3a2..884c9eee 100644 --- a/lofty/tests/fuzz/pictureinformation_from_jpeg.rs +++ b/lofty/tests/fuzz/pictureinformation_from_jpeg.rs @@ -2,7 +2,7 @@ use crate::get_reader; use lofty::error::ErrorKind; use lofty::picture::PictureInformation; -#[test] +#[test_log::test] fn crash1() { let reader = get_reader("pictureinformation_from_jpeg/crash-e46c53f85ca87dd374bc5c4e73c2f66f3a45b955"); diff --git a/lofty/tests/fuzz/pictureinformation_from_png.rs b/lofty/tests/fuzz/pictureinformation_from_png.rs index 7006765c..f12a2f5d 100644 --- a/lofty/tests/fuzz/pictureinformation_from_png.rs +++ b/lofty/tests/fuzz/pictureinformation_from_png.rs @@ -1,7 +1,7 @@ use crate::get_reader; use lofty::picture::PictureInformation; -#[test] +#[test_log::test] fn crash1() { let reader = get_reader("pictureinformation_from_png/crash-9cca0ac668e4735a0aac8eddb91a50b9351b419c"); diff --git a/lofty/tests/fuzz/speexfile_read_from.rs b/lofty/tests/fuzz/speexfile_read_from.rs index a3ebbc57..3e40da7e 100644 --- a/lofty/tests/fuzz/speexfile_read_from.rs +++ b/lofty/tests/fuzz/speexfile_read_from.rs @@ -1,7 +1,7 @@ use crate::oom_test; use lofty::ogg::SpeexFile; -#[test] +#[test_log::test] fn oom1() { oom_test::("speexfile_read_from/oom-7976a4c57e7f8b4ac428f9e7f846b59d2dce714f"); } diff --git a/lofty/tests/fuzz/vorbisfile_read_from.rs b/lofty/tests/fuzz/vorbisfile_read_from.rs index 2c15c487..4d20c160 100644 --- a/lofty/tests/fuzz/vorbisfile_read_from.rs +++ b/lofty/tests/fuzz/vorbisfile_read_from.rs @@ -3,19 +3,19 @@ use lofty::config::ParseOptions; use lofty::file::AudioFile; use lofty::ogg::VorbisFile; -#[test] +#[test_log::test] fn oom1() { oom_test::("vorbisfile_read_from/oom-436193bc2d1664b74c19720bef08697d03284f06"); } -#[test] +#[test_log::test] fn large_allocation() { let mut reader = crate::get_reader("vorbisfile_read_from/move01d_IDX_13_RAND_35154275996070165946691.ogg"); let _ = VorbisFile::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic1() { let mut reader = crate::get_reader("vorbisfile_read_from/order01d_IDX_32_RAND_22064097693866277502540.ogg"); diff --git a/lofty/tests/fuzz/wavfile_read_from.rs b/lofty/tests/fuzz/wavfile_read_from.rs index dd07251c..6da82348 100644 --- a/lofty/tests/fuzz/wavfile_read_from.rs +++ b/lofty/tests/fuzz/wavfile_read_from.rs @@ -3,26 +3,26 @@ use lofty::config::ParseOptions; use lofty::file::AudioFile; use lofty::iff::wav::WavFile; -#[test] +#[test_log::test] fn oom1() { oom_test::("wavfile_read_from/oom-007573d233b412ea1b8038137db28e70d5678291"); } -#[test] +#[test_log::test] fn panic1() { let mut reader = crate::get_reader("wavfile_read_from/2_IDX_0_RAND_85629492689553753214598.wav"); let _ = WavFile::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic2() { let mut reader = crate::get_reader("wavfile_read_from/2_IDX_63_RAND_104275228651573584855676.wav"); let _ = WavFile::read_from(&mut reader, ParseOptions::new()); } -#[test] +#[test_log::test] fn panic3() { let mut reader = crate::get_reader("wavfile_read_from/2_IDX_34_RAND_128635499166458268533001.wav"); diff --git a/lofty/tests/fuzz/wavpackfile_read_from.rs b/lofty/tests/fuzz/wavpackfile_read_from.rs index f71892e0..7e827ab7 100644 --- a/lofty/tests/fuzz/wavpackfile_read_from.rs +++ b/lofty/tests/fuzz/wavpackfile_read_from.rs @@ -1,84 +1,84 @@ use crate::oom_test; use lofty::wavpack::WavPackFile; -#[test] +#[test_log::test] fn oom1() { oom_test::( "wavpackfile_read_from/minimized-from-1e67c08d7f69bc3ac39aeeede515b96fffcb31b4", ); } -#[test] +#[test_log::test] fn oom2() { oom_test::( "wavpackfile_read_from/minimized-from-3f74da5ead463d922c1de1f57ad7ac9697e3f79d", ); } -#[test] +#[test_log::test] fn oom3() { oom_test::( "wavpackfile_read_from/minimized-from-7eae56cca38a302e693fcbc3853798f6298c5e90", ); } -#[test] +#[test_log::test] fn oom4() { oom_test::( "wavpackfile_read_from/minimized-from-7f1d89b3c498ff9a180cfdb85ab3b51f25756991", ); } -#[test] +#[test_log::test] fn oom5() { oom_test::( "wavpackfile_read_from/minimized-from-56e6e9ffb1642607fb9aba7f7613667882a4fd0c", ); } -#[test] +#[test_log::test] fn oom6() { oom_test::( "wavpackfile_read_from/minimized-from-68b3837442b17e87863f02299e0cce1c4145c76b", ); } -#[test] +#[test_log::test] fn oom7() { oom_test::( "wavpackfile_read_from/minimized-from-94867b6fefcd32cd5bc3bc298468cd3d65d93ff1", ); } -#[test] +#[test_log::test] fn oom8() { oom_test::( "wavpackfile_read_from/minimized-from-625824728fdaa4cbc0acb6e58a2737f60c7446f8", ); } -#[test] +#[test_log::test] fn oom9() { oom_test::( "wavpackfile_read_from/minimized-from-aa6f3592d16b7845dea49b6f261e4c6fbd9a2143", ); } -#[test] +#[test_log::test] fn oom10() { oom_test::( "wavpackfile_read_from/minimized-from-cdb6b62e519b2f42c6c376ad125679c83a11f6cf", ); } -#[test] +#[test_log::test] fn oom11() { oom_test::( "wavpackfile_read_from/minimized-from-e08dd883f7816664aa627662e0674706b47e76db", ); } -#[test] +#[test_log::test] fn oom12() { oom_test::("wavpackfile_read_from/oom-94867b6fefcd32cd5bc3bc298468cd3d65d93ff1"); } diff --git a/lofty/tests/hound.rs b/lofty/tests/hound.rs index a35d3618..3635107b 100644 --- a/lofty/tests/hound.rs +++ b/lofty/tests/hound.rs @@ -15,7 +15,7 @@ fn get_properties(path: &Path) -> Result<::Properties> { Ok(*wav_file.properties()) } -#[test] +#[test_log::test] fn hound() { let paths = fs::read_dir("tests/files/assets/hound").unwrap(); @@ -35,7 +35,7 @@ fn hound() { } } -#[test] +#[test_log::test] fn hound_fuzz() { let paths = fs::read_dir("tests/files/assets/hound/fuzz").unwrap(); diff --git a/lofty/tests/picture/format_parsers.rs b/lofty/tests/picture/format_parsers.rs index e4574db6..a310b3ae 100644 --- a/lofty/tests/picture/format_parsers.rs +++ b/lofty/tests/picture/format_parsers.rs @@ -26,7 +26,7 @@ fn create_original_picture() -> Picture { original_pic } -#[test] +#[test_log::test] fn id3v24_apic() { let buf = get_buf("tests/picture/assets/png_640x628.apic"); @@ -36,7 +36,7 @@ fn id3v24_apic() { assert_eq!(create_original_picture(), apic.picture); } -#[test] +#[test_log::test] fn as_apic_bytes() { let buf = get_buf("tests/picture/assets/png_640x628.apic"); @@ -48,7 +48,7 @@ fn as_apic_bytes() { assert_eq!(buf, original_as_apic); } -#[test] +#[test_log::test] fn id3v22_pic() { let buf = get_buf("tests/picture/assets/png_640x628.pic"); @@ -58,7 +58,7 @@ fn id3v22_pic() { assert_eq!(create_original_picture(), pic.picture); } -#[test] +#[test_log::test] fn as_apic_bytes_v2() { let buf = get_buf("tests/picture/assets/png_640x628.pic"); @@ -70,7 +70,7 @@ fn as_apic_bytes_v2() { assert_eq!(buf, original_as_pic); } -#[test] +#[test_log::test] fn ape_binary_item() { let buf = get_buf("tests/picture/assets/png_640x628.apev2"); @@ -79,7 +79,7 @@ fn ape_binary_item() { assert_eq!(create_original_picture(), pic); } -#[test] +#[test_log::test] fn as_ape_bytes() { let buf = get_buf("tests/picture/assets/png_640x628.apev2"); @@ -90,7 +90,7 @@ fn as_ape_bytes() { assert_eq!(buf, original_as_ape); } -#[test] +#[test_log::test] fn flac_metadata_block_picture() { let buf = get_buf("tests/picture/assets/png_640x628.vorbis"); @@ -99,7 +99,7 @@ fn flac_metadata_block_picture() { assert_eq!(create_original_picture(), pic); } -#[test] +#[test_log::test] fn as_flac_bytes() { let buf = get_buf("tests/picture/assets/png_640x628.vorbis"); diff --git a/lofty/tests/picture/from_reader.rs b/lofty/tests/picture/from_reader.rs index 9c7d5be7..51340de0 100644 --- a/lofty/tests/picture/from_reader.rs +++ b/lofty/tests/picture/from_reader.rs @@ -12,14 +12,14 @@ fn get_buf(path: &str) -> Vec { buf } -#[test] +#[test_log::test] fn picture_from_reader_png() { let pic = Picture::from_reader(&mut &*get_buf("tests/picture/assets/png_640x628.png")).unwrap(); assert_eq!(pic.mime_type(), Some(&MimeType::Png)); } -#[test] +#[test_log::test] fn picture_from_reader_jpeg() { let pic = Picture::from_reader(&mut &*get_buf("tests/picture/assets/jpeg_640x628.jpg")).unwrap(); @@ -27,21 +27,21 @@ fn picture_from_reader_jpeg() { assert_eq!(pic.mime_type(), Some(&MimeType::Jpeg)); } -#[test] +#[test_log::test] fn picture_from_reader_bmp() { let pic = Picture::from_reader(&mut &*get_buf("tests/picture/assets/bmp_640x628.bmp")).unwrap(); assert_eq!(pic.mime_type(), Some(&MimeType::Bmp)); } -#[test] +#[test_log::test] fn picture_from_reader_gif() { let pic = Picture::from_reader(&mut &*get_buf("tests/picture/assets/gif_640x628.gif")).unwrap(); assert_eq!(pic.mime_type(), Some(&MimeType::Gif)); } -#[test] +#[test_log::test] fn picture_from_reader_tiff() { let pic = Picture::from_reader(&mut &*get_buf("tests/picture/assets/tiff_640x628.tiff")).unwrap(); diff --git a/lofty/tests/picture/information.rs b/lofty/tests/picture/information.rs index f2619fcf..deb575f1 100644 --- a/lofty/tests/picture/information.rs +++ b/lofty/tests/picture/information.rs @@ -3,7 +3,7 @@ use lofty::picture::PictureInformation; use std::fs::File; use std::io::Read; -#[test] +#[test_log::test] fn read_png() { // 640x628 let mut f = File::open("tests/picture/assets/png_640x628.png").unwrap(); @@ -21,7 +21,7 @@ fn read_png() { assert_eq!(information.num_colors, 0); } -#[test] +#[test_log::test] fn read_png_plte() { // PNG image with a PLTE chunk (indexed color) let mut f = File::open("tests/picture/assets/png_640x628_plte.png").unwrap(); @@ -40,7 +40,7 @@ fn read_png_plte() { assert_eq!(information.num_colors, 118); } -#[test] +#[test_log::test] fn read_jpeg() { let mut f = File::open("tests/picture/assets/jpeg_640x628.jpg").unwrap(); diff --git a/lofty/tests/tags/conversions.rs b/lofty/tests/tags/conversions.rs index e3ac2f6a..f25f94f3 100644 --- a/lofty/tests/tags/conversions.rs +++ b/lofty/tests/tags/conversions.rs @@ -6,7 +6,7 @@ use lofty::TextEncoding; use std::borrow::Cow; -#[test] +#[test_log::test] fn tag_to_id3v2_lang_frame() { let mut tag = Tag::new(TagType::Id3v2); tag.insert_text(ItemKey::Lyrics, String::from("Test lyrics"));