use std::sync::{Arc, atomic::AtomicU64};
#[derive(Default)]
pub(crate) struct SymphoniaConfig {
pub(crate) byte_len_handle: Option<Arc<AtomicU64>>,
pub(crate) hint: Option<String>,
pub(crate) gapless: bool,
}
#[cfg(test)]
mod tests {
use kithara_test_utils::kithara;
use super::*;
#[kithara::test]
fn test_symphonia_config_default() {
let config = SymphoniaConfig::default();
assert!(config.byte_len_handle.is_none());
assert!(config.hint.is_none());
assert!(!config.gapless);
}
#[kithara::test]
fn test_symphonia_config_with_hint() {
let config = SymphoniaConfig {
hint: Some("mp3".into()),
..Default::default()
};
assert_eq!(config.hint, Some("mp3".into()));
}
#[kithara::test]
fn test_symphonia_config_with_gapless() {
let config = SymphoniaConfig {
gapless: true,
..Default::default()
};
assert!(config.gapless);
}
}