From 6d1194226d40b2269dd473a2f7b030061befe5ad Mon Sep 17 00:00:00 2001 From: Wojciech Kozlowski Date: Sat, 9 Mar 2024 18:34:56 +0100 Subject: [PATCH 1/5] Move database implementation out of core --- src/core/{database/mod.rs => database.rs} | 5 ----- src/{core => }/database/json/backend.rs | 2 +- src/{core => }/database/json/mod.rs | 0 src/{core => }/database/json/testmod.rs | 0 src/database/mod.rs | 4 ++++ src/{core => }/database/serde/deserialize.rs | 0 src/{core => }/database/serde/mod.rs | 0 src/{core => }/database/serde/serialize.rs | 0 src/lib.rs | 4 +++- src/main.rs | 7 ++----- src/tui/lib.rs | 2 +- tests/database/json.rs | 6 ++---- 12 files changed, 13 insertions(+), 17 deletions(-) rename src/core/{database/mod.rs => database.rs} (97%) rename src/{core => }/database/json/backend.rs (94%) rename src/{core => }/database/json/mod.rs (100%) rename src/{core => }/database/json/testmod.rs (100%) create mode 100644 src/database/mod.rs rename src/{core => }/database/serde/deserialize.rs (100%) rename src/{core => }/database/serde/mod.rs (100%) rename src/{core => }/database/serde/serialize.rs (100%) diff --git a/src/core/database/mod.rs b/src/core/database.rs similarity index 97% rename from src/core/database/mod.rs rename to src/core/database.rs index b3882c1..9ae7435 100644 --- a/src/core/database/mod.rs +++ b/src/core/database.rs @@ -1,10 +1,5 @@ //! Module for storing MusicHoard data in a database. -#[cfg(feature = "database-json")] -pub mod json; -#[cfg(feature = "database-json")] -mod serde; - use std::fmt; #[cfg(test)] diff --git a/src/core/database/json/backend.rs b/src/database/json/backend.rs similarity index 94% rename from src/core/database/json/backend.rs rename to src/database/json/backend.rs index 8c99542..07a0a1c 100644 --- a/src/core/database/json/backend.rs +++ b/src/database/json/backend.rs @@ -3,7 +3,7 @@ use std::fs; use std::path::PathBuf; -use crate::core::database::json::IJsonDatabaseBackend; +use crate::database::json::IJsonDatabaseBackend; /// JSON database backend that uses a local file for persistent storage. pub struct JsonDatabaseFileBackend { diff --git a/src/core/database/json/mod.rs b/src/database/json/mod.rs similarity index 100% rename from src/core/database/json/mod.rs rename to src/database/json/mod.rs diff --git a/src/core/database/json/testmod.rs b/src/database/json/testmod.rs similarity index 100% rename from src/core/database/json/testmod.rs rename to src/database/json/testmod.rs diff --git a/src/database/mod.rs b/src/database/mod.rs new file mode 100644 index 0000000..8bc349c --- /dev/null +++ b/src/database/mod.rs @@ -0,0 +1,4 @@ +#[cfg(feature = "database-json")] +pub mod json; +#[cfg(feature = "database-json")] +mod serde; diff --git a/src/core/database/serde/deserialize.rs b/src/database/serde/deserialize.rs similarity index 100% rename from src/core/database/serde/deserialize.rs rename to src/database/serde/deserialize.rs diff --git a/src/core/database/serde/mod.rs b/src/database/serde/mod.rs similarity index 100% rename from src/core/database/serde/mod.rs rename to src/database/serde/mod.rs diff --git a/src/core/database/serde/serialize.rs b/src/database/serde/serialize.rs similarity index 100% rename from src/core/database/serde/serialize.rs rename to src/database/serde/serialize.rs diff --git a/src/lib.rs b/src/lib.rs index 6277808..bd42e99 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,11 +1,13 @@ //! MusicHoard - a music collection manager. mod core; +pub mod database; pub use core::collection; -pub use core::database; pub use core::library; +pub use core::database::{IDatabase, NullDatabase}; + pub use core::musichoard::{ musichoard::{MusicHoard, NoDatabase, NoLibrary}, musichoard_builder::MusicHoardBuilder, diff --git a/src/main.rs b/src/main.rs index 5c3dfa5..f147da0 100644 --- a/src/main.rs +++ b/src/main.rs @@ -10,10 +10,7 @@ use ratatui::{backend::CrosstermBackend, Terminal}; use structopt::StructOpt; use musichoard::{ - database::{ - json::{backend::JsonDatabaseFileBackend, JsonDatabase}, - IDatabase, NullDatabase, - }, + database::json::{backend::JsonDatabaseFileBackend, JsonDatabase}, library::{ beets::{ executor::{ssh::BeetsLibrarySshExecutor, BeetsLibraryProcessExecutor}, @@ -21,7 +18,7 @@ use musichoard::{ }, ILibrary, NullLibrary, }, - MusicHoardBuilder, NoDatabase, NoLibrary, + IDatabase, MusicHoardBuilder, NoDatabase, NoLibrary, NullDatabase, }; use tui::{App, EventChannel, EventHandler, EventListener, Tui, Ui}; diff --git a/src/tui/lib.rs b/src/tui/lib.rs index 990851c..cca8c3a 100644 --- a/src/tui/lib.rs +++ b/src/tui/lib.rs @@ -1,4 +1,4 @@ -use musichoard::{collection::Collection, database::IDatabase, library::ILibrary, MusicHoard}; +use musichoard::{collection::Collection, library::ILibrary, IDatabase, MusicHoard}; #[cfg(test)] use mockall::automock; diff --git a/tests/database/json.rs b/tests/database/json.rs index f2c6c52..1f31de8 100644 --- a/tests/database/json.rs +++ b/tests/database/json.rs @@ -5,10 +5,8 @@ use tempfile::NamedTempFile; use musichoard::{ collection::{album::AlbumDate, artist::Artist, Collection}, - database::{ - json::{backend::JsonDatabaseFileBackend, JsonDatabase}, - IDatabase, - }, + database::json::{backend::JsonDatabaseFileBackend, JsonDatabase}, + IDatabase, }; use crate::testlib::COLLECTION; -- 2.45.2 From 93d8ba8cb2761372fc687888b937a162dac9fd91 Mon Sep 17 00:00:00 2001 From: Wojciech Kozlowski Date: Sat, 9 Mar 2024 18:51:06 +0100 Subject: [PATCH 2/5] Move library implementation out of core --- src/core/library/mod.rs | 21 ++++----------------- src/lib.rs | 4 +++- src/{core => }/library/beets/executor.rs | 3 ++- src/{core => }/library/beets/mod.rs | 0 src/{core => }/library/beets/testmod.rs | 0 src/library/mod.rs | 2 ++ src/main.rs | 11 ++++------- src/tui/lib.rs | 2 +- tests/library/beets.rs | 4 ++-- tests/library/testmod.rs | 2 +- 10 files changed, 19 insertions(+), 30 deletions(-) rename src/{core => }/library/beets/executor.rs (98%) rename src/{core => }/library/beets/mod.rs (100%) rename src/{core => }/library/beets/testmod.rs (100%) create mode 100644 src/library/mod.rs diff --git a/src/core/library/mod.rs b/src/core/library/mod.rs index 7797c07..448e063 100644 --- a/src/core/library/mod.rs +++ b/src/core/library/mod.rs @@ -1,8 +1,5 @@ //! Module for interacting with the music library. -#[cfg(feature = "library-beets")] -pub mod beets; - use std::{collections::HashSet, fmt, num::ParseIntError, str::Utf8Error}; #[cfg(test)] @@ -59,26 +56,16 @@ pub enum Field { } /// A library query. Can include or exclude particular fields. -#[derive(Debug, PartialEq, Eq)] +#[derive(Debug, Default, PartialEq, Eq)] pub struct Query { - include: HashSet, - exclude: HashSet, -} - -impl Default for Query { - /// Create an empty query. - fn default() -> Self { - Self::new() - } + pub include: HashSet, + pub exclude: HashSet, } impl Query { /// Create an empty query. pub fn new() -> Self { - Query { - include: HashSet::new(), - exclude: HashSet::new(), - } + Query::default() } /// Refine the query to include a particular search term. diff --git a/src/lib.rs b/src/lib.rs index bd42e99..4364b61 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -2,11 +2,13 @@ mod core; pub mod database; +pub mod library; pub use core::collection; -pub use core::library; +// TODO: evaluate the exports and/or how to do them pub use core::database::{IDatabase, NullDatabase}; +pub use core::library::{Field, ILibrary, Item, NullLibrary, Query}; pub use core::musichoard::{ musichoard::{MusicHoard, NoDatabase, NoLibrary}, diff --git a/src/core/library/beets/executor.rs b/src/library/beets/executor.rs similarity index 98% rename from src/core/library/beets/executor.rs rename to src/library/beets/executor.rs index 4a9632e..0812c4d 100644 --- a/src/core/library/beets/executor.rs +++ b/src/library/beets/executor.rs @@ -8,7 +8,8 @@ use std::{ str, }; -use crate::core::library::{beets::IBeetsLibraryExecutor, Error}; +use crate::core::library::Error; +use crate::library::beets::IBeetsLibraryExecutor; const BEET_DEFAULT: &str = "beet"; diff --git a/src/core/library/beets/mod.rs b/src/library/beets/mod.rs similarity index 100% rename from src/core/library/beets/mod.rs rename to src/library/beets/mod.rs diff --git a/src/core/library/beets/testmod.rs b/src/library/beets/testmod.rs similarity index 100% rename from src/core/library/beets/testmod.rs rename to src/library/beets/testmod.rs diff --git a/src/library/mod.rs b/src/library/mod.rs new file mode 100644 index 0000000..d0ca87d --- /dev/null +++ b/src/library/mod.rs @@ -0,0 +1,2 @@ +#[cfg(feature = "library-beets")] +pub mod beets; diff --git a/src/main.rs b/src/main.rs index f147da0..7ae1961 100644 --- a/src/main.rs +++ b/src/main.rs @@ -11,14 +11,11 @@ use structopt::StructOpt; use musichoard::{ database::json::{backend::JsonDatabaseFileBackend, JsonDatabase}, - library::{ - beets::{ - executor::{ssh::BeetsLibrarySshExecutor, BeetsLibraryProcessExecutor}, - BeetsLibrary, - }, - ILibrary, NullLibrary, + library::beets::{ + executor::{ssh::BeetsLibrarySshExecutor, BeetsLibraryProcessExecutor}, + BeetsLibrary, }, - IDatabase, MusicHoardBuilder, NoDatabase, NoLibrary, NullDatabase, + IDatabase, ILibrary, MusicHoardBuilder, NoDatabase, NoLibrary, NullDatabase, NullLibrary, }; use tui::{App, EventChannel, EventHandler, EventListener, Tui, Ui}; diff --git a/src/tui/lib.rs b/src/tui/lib.rs index cca8c3a..f518b63 100644 --- a/src/tui/lib.rs +++ b/src/tui/lib.rs @@ -1,4 +1,4 @@ -use musichoard::{collection::Collection, library::ILibrary, IDatabase, MusicHoard}; +use musichoard::{collection::Collection, IDatabase, ILibrary, MusicHoard}; #[cfg(test)] use mockall::automock; diff --git a/tests/library/beets.rs b/tests/library/beets.rs index 74dcd12..32cb4ba 100644 --- a/tests/library/beets.rs +++ b/tests/library/beets.rs @@ -7,8 +7,8 @@ use std::{ use once_cell::sync::Lazy; -use musichoard::library::{ - beets::{executor::BeetsLibraryProcessExecutor, BeetsLibrary}, +use musichoard::{ + library::beets::{executor::BeetsLibraryProcessExecutor, BeetsLibrary}, Field, ILibrary, Item, Query, }; diff --git a/tests/library/testmod.rs b/tests/library/testmod.rs index cb85c50..4a7d576 100644 --- a/tests/library/testmod.rs +++ b/tests/library/testmod.rs @@ -2,7 +2,7 @@ use once_cell::sync::Lazy; use musichoard::{ collection::{album::AlbumMonth, track::TrackFormat}, - library::Item, + Item, }; pub static LIBRARY_ITEMS: Lazy> = Lazy::new(|| -> Vec { -- 2.45.2 From ee3700441cf9b0ad86a6d8b32fe3f41045bcd9a8 Mon Sep 17 00:00:00 2001 From: Wojciech Kozlowski Date: Sat, 9 Mar 2024 18:53:19 +0100 Subject: [PATCH 3/5] Consistency --- src/core/{database.rs => database/mod.rs} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/core/{database.rs => database/mod.rs} (100%) diff --git a/src/core/database.rs b/src/core/database/mod.rs similarity index 100% rename from src/core/database.rs rename to src/core/database/mod.rs -- 2.45.2 From a011adefaa7923add2461b5fd81ea48d73f0c569 Mon Sep 17 00:00:00 2001 From: Wojciech Kozlowski Date: Sat, 9 Mar 2024 18:58:47 +0100 Subject: [PATCH 4/5] Better feature naming --- Cargo.toml | 4 ++-- src/library/beets/executor.rs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 32bfee8..099f65f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -31,12 +31,12 @@ default = ["database-json", "library-beets"] bin = ["structopt"] database-json = ["serde", "serde_json"] library-beets = [] -ssh-library = ["openssh", "tokio"] +library-beets-ssh = ["openssh", "tokio"] tui = ["aho-corasick", "crossterm", "once_cell", "ratatui"] [[bin]] name = "musichoard" -required-features = ["bin", "database-json", "library-beets", "ssh-library", "tui"] +required-features = ["bin", "database-json", "library-beets", "library-beets-ssh", "tui"] [[bin]] name = "musichoard-edit" diff --git a/src/library/beets/executor.rs b/src/library/beets/executor.rs index 0812c4d..2563083 100644 --- a/src/library/beets/executor.rs +++ b/src/library/beets/executor.rs @@ -75,7 +75,7 @@ impl IBeetsLibraryExecutor for BeetsLibraryProcessExecutor { impl IBeetsLibraryExecutorPrivate for BeetsLibraryProcessExecutor {} // GRCOV_EXCL_START -#[cfg(feature = "ssh-library")] +#[cfg(feature = "library-beets-ssh")] pub mod ssh { //! Module for interacting with the music library via //! [beets](https://beets.readthedocs.io/en/stable/) over SSH. -- 2.45.2 From 6178a3035303328fa22b047584c34ad641dd67de Mon Sep 17 00:00:00 2001 From: Wojciech Kozlowski Date: Sat, 9 Mar 2024 19:08:09 +0100 Subject: [PATCH 5/5] Make exports more explicit --- src/core/{ => interface}/database/mod.rs | 0 src/core/{ => interface}/library/mod.rs | 0 src/core/{ => interface}/library/testmod.rs | 2 +- src/core/interface/mod.rs | 2 ++ src/core/mod.rs | 3 +-- src/core/musichoard/mod.rs | 5 ++++- src/core/musichoard/musichoard.rs | 12 ++++++++---- src/core/musichoard/musichoard_builder.rs | 5 ++--- src/database/json/mod.rs | 2 +- src/database/serde/deserialize.rs | 2 +- src/lib.rs | 5 +---- src/library/beets/executor.rs | 2 +- src/library/beets/mod.rs | 4 ++-- src/main.rs | 6 +++++- src/tui/lib.rs | 5 ++++- tests/database/json.rs | 2 +- tests/library/beets.rs | 2 +- tests/library/testmod.rs | 2 +- 18 files changed, 36 insertions(+), 25 deletions(-) rename src/core/{ => interface}/database/mod.rs (100%) rename src/core/{ => interface}/library/mod.rs (100%) rename src/core/{ => interface}/library/testmod.rs (99%) create mode 100644 src/core/interface/mod.rs diff --git a/src/core/database/mod.rs b/src/core/interface/database/mod.rs similarity index 100% rename from src/core/database/mod.rs rename to src/core/interface/database/mod.rs diff --git a/src/core/library/mod.rs b/src/core/interface/library/mod.rs similarity index 100% rename from src/core/library/mod.rs rename to src/core/interface/library/mod.rs diff --git a/src/core/library/testmod.rs b/src/core/interface/library/testmod.rs similarity index 99% rename from src/core/library/testmod.rs rename to src/core/interface/library/testmod.rs index 09e56b8..2649422 100644 --- a/src/core/library/testmod.rs +++ b/src/core/interface/library/testmod.rs @@ -2,7 +2,7 @@ use once_cell::sync::Lazy; use crate::core::{ collection::{album::AlbumMonth, track::TrackFormat}, - library::Item, + interface::library::Item, }; pub static LIBRARY_ITEMS: Lazy> = Lazy::new(|| -> Vec { diff --git a/src/core/interface/mod.rs b/src/core/interface/mod.rs new file mode 100644 index 0000000..2b9c4cf --- /dev/null +++ b/src/core/interface/mod.rs @@ -0,0 +1,2 @@ +pub mod database; +pub mod library; diff --git a/src/core/mod.rs b/src/core/mod.rs index 8739da3..8899a5d 100644 --- a/src/core/mod.rs +++ b/src/core/mod.rs @@ -1,6 +1,5 @@ pub mod collection; -pub mod database; -pub mod library; +pub mod interface; pub mod musichoard; #[cfg(test)] diff --git a/src/core/musichoard/mod.rs b/src/core/musichoard/mod.rs index d12bc43..41dc276 100644 --- a/src/core/musichoard/mod.rs +++ b/src/core/musichoard/mod.rs @@ -6,7 +6,10 @@ pub mod musichoard_builder; use std::fmt::{self, Display}; -use crate::core::{collection, database, library}; +use crate::core::{ + collection, + interface::{database, library}, +}; /// Error type for `musichoard`. #[derive(Debug, PartialEq, Eq)] diff --git a/src/core/musichoard/musichoard.rs b/src/core/musichoard/musichoard.rs index 86d2ba8..2eafef3 100644 --- a/src/core/musichoard/musichoard.rs +++ b/src/core/musichoard/musichoard.rs @@ -8,8 +8,10 @@ use crate::core::{ track::{Track, TrackId, TrackNum, TrackQuality}, Collection, MergeCollections, }, - database::IDatabase, - library::{ILibrary, Item, Query}, + interface::{ + database::IDatabase, + library::{ILibrary, Item, Query}, + }, musichoard::Error, }; @@ -468,8 +470,10 @@ mod tests { use crate::core::{ collection::{artist::ArtistId, musicbrainz::MusicBrainz}, - database::{self, MockIDatabase}, - library::{self, testmod::LIBRARY_ITEMS, MockILibrary}, + interface::{ + database::{self, MockIDatabase}, + library::{self, testmod::LIBRARY_ITEMS, MockILibrary}, + }, testmod::{FULL_COLLECTION, LIBRARY_COLLECTION}, }; diff --git a/src/core/musichoard/musichoard_builder.rs b/src/core/musichoard/musichoard_builder.rs index af48922..5b1bc5f 100644 --- a/src/core/musichoard/musichoard_builder.rs +++ b/src/core/musichoard/musichoard_builder.rs @@ -1,7 +1,6 @@ use crate::{ core::{ - database::IDatabase, - library::ILibrary, + interface::{database::IDatabase, library::ILibrary}, musichoard::musichoard::{MusicHoard, NoDatabase, NoLibrary}, }, Error, @@ -79,7 +78,7 @@ impl MusicHoardBuilder { #[cfg(test)] mod tests { - use crate::core::{database::NullDatabase, library::NullLibrary}; + use crate::core::interface::{database::NullDatabase, library::NullLibrary}; use super::*; diff --git a/src/database/json/mod.rs b/src/database/json/mod.rs index 5eec609..80cc6c7 100644 --- a/src/database/json/mod.rs +++ b/src/database/json/mod.rs @@ -7,7 +7,7 @@ use mockall::automock; use crate::core::{ collection::Collection, - database::{IDatabase, LoadError, SaveError}, + interface::database::{IDatabase, LoadError, SaveError}, }; use super::serde::{deserialize::DeserializeDatabase, serialize::SerializeDatabase}; diff --git a/src/database/serde/deserialize.rs b/src/database/serde/deserialize.rs index 718601e..55bfbe9 100644 --- a/src/database/serde/deserialize.rs +++ b/src/database/serde/deserialize.rs @@ -9,7 +9,7 @@ use crate::core::{ musicbrainz::MusicBrainz, Collection, }, - database::LoadError, + interface::database::LoadError, }; #[derive(Debug, Deserialize)] diff --git a/src/lib.rs b/src/lib.rs index 4364b61..af8688a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -5,10 +5,7 @@ pub mod database; pub mod library; pub use core::collection; - -// TODO: evaluate the exports and/or how to do them -pub use core::database::{IDatabase, NullDatabase}; -pub use core::library::{Field, ILibrary, Item, NullLibrary, Query}; +pub use core::interface; pub use core::musichoard::{ musichoard::{MusicHoard, NoDatabase, NoLibrary}, diff --git a/src/library/beets/executor.rs b/src/library/beets/executor.rs index 2563083..68e799e 100644 --- a/src/library/beets/executor.rs +++ b/src/library/beets/executor.rs @@ -8,7 +8,7 @@ use std::{ str, }; -use crate::core::library::Error; +use crate::core::interface::library::Error; use crate::library::beets::IBeetsLibraryExecutor; const BEET_DEFAULT: &str = "beet"; diff --git a/src/library/beets/mod.rs b/src/library/beets/mod.rs index d67d90d..90c5307 100644 --- a/src/library/beets/mod.rs +++ b/src/library/beets/mod.rs @@ -8,7 +8,7 @@ use mockall::automock; use crate::core::{ collection::track::TrackFormat, - library::{Error, Field, ILibrary, Item, Query}, + interface::library::{Error, Field, ILibrary, Item, Query}, }; macro_rules! list_format_separator { @@ -201,7 +201,7 @@ mod testmod; mod tests { use mockall::predicate; - use crate::{collection::album::AlbumMonth, core::library::testmod::LIBRARY_ITEMS}; + use crate::{collection::album::AlbumMonth, core::interface::library::testmod::LIBRARY_ITEMS}; use super::*; use testmod::LIBRARY_BEETS; diff --git a/src/main.rs b/src/main.rs index 7ae1961..87e3140 100644 --- a/src/main.rs +++ b/src/main.rs @@ -11,11 +11,15 @@ use structopt::StructOpt; use musichoard::{ database::json::{backend::JsonDatabaseFileBackend, JsonDatabase}, + interface::{ + database::{IDatabase, NullDatabase}, + library::{ILibrary, NullLibrary}, + }, library::beets::{ executor::{ssh::BeetsLibrarySshExecutor, BeetsLibraryProcessExecutor}, BeetsLibrary, }, - IDatabase, ILibrary, MusicHoardBuilder, NoDatabase, NoLibrary, NullDatabase, NullLibrary, + MusicHoardBuilder, NoDatabase, NoLibrary, }; use tui::{App, EventChannel, EventHandler, EventListener, Tui, Ui}; diff --git a/src/tui/lib.rs b/src/tui/lib.rs index f518b63..d75ddc8 100644 --- a/src/tui/lib.rs +++ b/src/tui/lib.rs @@ -1,4 +1,7 @@ -use musichoard::{collection::Collection, IDatabase, ILibrary, MusicHoard}; +use musichoard::{ + collection::Collection, interface::database::IDatabase, interface::library::ILibrary, + MusicHoard, +}; #[cfg(test)] use mockall::automock; diff --git a/tests/database/json.rs b/tests/database/json.rs index 1f31de8..a72657a 100644 --- a/tests/database/json.rs +++ b/tests/database/json.rs @@ -6,7 +6,7 @@ use tempfile::NamedTempFile; use musichoard::{ collection::{album::AlbumDate, artist::Artist, Collection}, database::json::{backend::JsonDatabaseFileBackend, JsonDatabase}, - IDatabase, + interface::database::IDatabase, }; use crate::testlib::COLLECTION; diff --git a/tests/library/beets.rs b/tests/library/beets.rs index 32cb4ba..0a7a066 100644 --- a/tests/library/beets.rs +++ b/tests/library/beets.rs @@ -8,8 +8,8 @@ use std::{ use once_cell::sync::Lazy; use musichoard::{ + interface::library::{Field, ILibrary, Item, Query}, library::beets::{executor::BeetsLibraryProcessExecutor, BeetsLibrary}, - Field, ILibrary, Item, Query, }; use crate::library::testmod::LIBRARY_ITEMS; diff --git a/tests/library/testmod.rs b/tests/library/testmod.rs index 4a7d576..aa6e671 100644 --- a/tests/library/testmod.rs +++ b/tests/library/testmod.rs @@ -2,7 +2,7 @@ use once_cell::sync::Lazy; use musichoard::{ collection::{album::AlbumMonth, track::TrackFormat}, - Item, + interface::library::Item, }; pub static LIBRARY_ITEMS: Lazy> = Lazy::new(|| -> Vec { -- 2.45.2