Compare commits

...

3 Commits

Author SHA1 Message Date
github-actions[bot]
aa43219c29 chore: release v0.1.5 2024-11-03 00:33:11 +00:00
f6f477b124 Added HTTPS support for all Servarrs 2024-11-02 18:32:44 -06:00
Alex Clarke
76f22e7434 Merge pull request #5 from Dark-Alex-17/release-plz-2024-11-01T19-06-52Z
chore: release v0.1.4
2024-11-01 13:13:03 -06:00
12 changed files with 226 additions and 124 deletions
+6
View File
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
## [0.1.5](https://github.com/Dark-Alex-17/managarr/compare/v0.1.4...v0.1.5) - 2024-11-03
### Other
- Added HTTPS support for all Servarrs
## [0.1.4](https://github.com/Dark-Alex-17/managarr/compare/v0.1.3...v0.1.4) - 2024-11-01 ## [0.1.4](https://github.com/Dark-Alex-17/managarr/compare/v0.1.3...v0.1.4) - 2024-11-01
### Other ### Other
Generated
+1 -1
View File
@@ -1148,7 +1148,7 @@ dependencies = [
[[package]] [[package]]
name = "managarr" name = "managarr"
version = "0.1.4" version = "0.1.5"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"assert_cmd", "assert_cmd",
+1 -1
View File
@@ -1,6 +1,6 @@
[package] [package]
name = "managarr" name = "managarr"
version = "0.1.4" version = "0.1.5"
authors = ["Alex Clarke <alex.j.tusa@gmail.com>"] authors = ["Alex Clarke <alex.j.tusa@gmail.com>"]
description = "A TUI and CLI to manage your Servarrs" description = "A TUI and CLI to manage your Servarrs"
keywords = ["managarr", "tui-rs", "dashboard", "servarr", "tui"] keywords = ["managarr", "tui-rs", "dashboard", "servarr", "tui"]
+8
View File
@@ -206,6 +206,8 @@ radarr:
host: 127.0.0.1 host: 127.0.0.1
port: 7878 port: 7878
api_token: someApiToken1234567890 api_token: someApiToken1234567890
use_ssl: true
ssl_cert_path: /path/to/radarr.crt
sonarr: sonarr:
host: 127.0.0.1 host: 127.0.0.1
port: 8989 port: 8989
@@ -214,26 +216,32 @@ readarr:
host: 127.0.0.1 host: 127.0.0.1
port: 8787 port: 8787
api_token: someApiToken1234567890 api_token: someApiToken1234567890
use_ssl: false
lidarr: lidarr:
host: 127.0.0.1 host: 127.0.0.1
port: 8686 port: 8686
api_token: someApiToken1234567890 api_token: someApiToken1234567890
use_ssl: false
whisparr: whisparr:
host: 127.0.0.1 host: 127.0.0.1
port: 6969 port: 6969
api_token: someApiToken1234567890 api_token: someApiToken1234567890
use_ssl: false
bazarr: bazarr:
host: 127.0.0.1 host: 127.0.0.1
port: 6767 port: 6767
api_token: someApiToken1234567890 api_token: someApiToken1234567890
use_ssl: false
prowlarr: prowlarr:
host: 127.0.0.1 host: 127.0.0.1
port: 9696 port: 9696
api_token: someApiToken1234567890 api_token: someApiToken1234567890
use_ssl: false
tautulli: tautulli:
host: 127.0.0.1 host: 127.0.0.1
port: 8181 port: 8181
api_token: someApiToken1234567890 api_token: someApiToken1234567890
use_ssl: false
``` ```
## Track My Progress for the Beta release (With Sonarr Support!) ## Track My Progress for the Beta release (With Sonarr Support!)
+2
View File
@@ -224,5 +224,7 @@ mod tests {
assert_str_eq!(radarr_config.host, "localhost"); assert_str_eq!(radarr_config.host, "localhost");
assert_eq!(radarr_config.port, Some(7878)); assert_eq!(radarr_config.port, Some(7878));
assert!(radarr_config.api_token.is_empty()); assert!(radarr_config.api_token.is_empty());
assert!(!radarr_config.use_ssl);
assert_eq!(radarr_config.ssl_cert_path, None);
} }
} }
+5
View File
@@ -176,6 +176,9 @@ pub struct RadarrConfig {
pub host: String, pub host: String,
pub port: Option<u16>, pub port: Option<u16>,
pub api_token: String, pub api_token: String,
#[serde(default)]
pub use_ssl: bool,
pub ssl_cert_path: Option<String>,
} }
impl Default for RadarrConfig { impl Default for RadarrConfig {
@@ -184,6 +187,8 @@ impl Default for RadarrConfig {
host: "localhost".to_string(), host: "localhost".to_string(),
port: Some(7878), port: Some(7878),
api_token: "".to_string(), api_token: "".to_string(),
use_ssl: false,
ssl_cert_path: None,
} }
} }
} }
+63 -11
View File
@@ -1,6 +1,6 @@
#![warn(rust_2018_idioms)] #![warn(rust_2018_idioms)]
use std::fs::File; use std::fs::{self, File};
use std::io::BufReader; use std::io::BufReader;
use std::panic::PanicHookInfo; use std::panic::PanicHookInfo;
use std::path::PathBuf; use std::path::PathBuf;
@@ -24,6 +24,7 @@ use log::error;
use network::NetworkTrait; use network::NetworkTrait;
use ratatui::backend::CrosstermBackend; use ratatui::backend::CrosstermBackend;
use ratatui::Terminal; use ratatui::Terminal;
use reqwest::{Certificate, Client};
use tokio::sync::mpsc::Receiver; use tokio::sync::mpsc::Receiver;
use tokio::sync::{mpsc, Mutex}; use tokio::sync::{mpsc, Mutex};
use tokio_util::sync::CancellationToken; use tokio_util::sync::CancellationToken;
@@ -77,13 +78,6 @@ struct Cli {
disable_terminal_size_checks: bool, disable_terminal_size_checks: bool,
} }
fn load_config(path: &str) -> Result<AppConfig> {
let file = File::open(path).map_err(|e| anyhow!(e))?;
let reader = BufReader::new(file);
let config = serde_yaml::from_reader(reader)?;
Ok(config)
}
#[tokio::main] #[tokio::main]
async fn main() -> Result<()> { async fn main() -> Result<()> {
log4rs::init_config(utils::init_logging_config())?; log4rs::init_config(utils::init_logging_config())?;
@@ -98,6 +92,7 @@ async fn main() -> Result<()> {
} else { } else {
confy::load("managarr", "config")? confy::load("managarr", "config")?
}; };
let reqwest_client = build_network_client(&config);
let (sync_network_tx, sync_network_rx) = mpsc::channel(500); let (sync_network_tx, sync_network_rx) = mpsc::channel(500);
let cancellation_token = CancellationToken::new(); let cancellation_token = CancellationToken::new();
let ctrlc_cancellation_token = cancellation_token.clone(); let ctrlc_cancellation_token = cancellation_token.clone();
@@ -119,7 +114,7 @@ async fn main() -> Result<()> {
Some(command) => match command { Some(command) => match command {
Command::Radarr(_) => { Command::Radarr(_) => {
let app_nw = Arc::clone(&app); let app_nw = Arc::clone(&app);
let mut network = Network::new(&app_nw, cancellation_token); let mut network = Network::new(&app_nw, cancellation_token, reqwest_client);
if let Err(e) = cli::handle_command(&app, command, &mut network).await { if let Err(e) = cli::handle_command(&app, command, &mut network).await {
eprintln!("error: {}", e.to_string().red()); eprintln!("error: {}", e.to_string().red());
@@ -133,7 +128,9 @@ async fn main() -> Result<()> {
}, },
None => { None => {
let app_nw = Arc::clone(&app); let app_nw = Arc::clone(&app);
std::thread::spawn(move || start_networking(sync_network_rx, &app_nw, cancellation_token)); std::thread::spawn(move || {
start_networking(sync_network_rx, &app_nw, cancellation_token, reqwest_client)
});
start_ui(&app, !args.disable_terminal_size_checks).await?; start_ui(&app, !args.disable_terminal_size_checks).await?;
} }
} }
@@ -146,8 +143,9 @@ async fn start_networking(
mut network_rx: Receiver<NetworkEvent>, mut network_rx: Receiver<NetworkEvent>,
app: &Arc<Mutex<App<'_>>>, app: &Arc<Mutex<App<'_>>>,
cancellation_token: CancellationToken, cancellation_token: CancellationToken,
client: Client,
) { ) {
let mut network = Network::new(app, cancellation_token); let mut network = Network::new(app, cancellation_token, client);
while let Some(network_event) = network_rx.recv().await { while let Some(network_event) = network_rx.recv().await {
if let Err(e) = network.handle_network_event(network_event).await { if let Err(e) = network.handle_network_event(network_event).await {
@@ -238,6 +236,60 @@ fn panic_hook(info: &PanicHookInfo<'_>) {
.unwrap(); .unwrap();
} }
fn load_config(path: &str) -> Result<AppConfig> {
let file = File::open(path).map_err(|e| anyhow!(e))?;
let reader = BufReader::new(file);
let config = serde_yaml::from_reader(reader)?;
Ok(config)
}
fn build_network_client(config: &AppConfig) -> Client {
let mut client_builder = Client::builder();
if config.radarr.use_ssl {
let cert = add_cert_to_builder(config.radarr.ssl_cert_path.clone(), "Radarr");
client_builder = client_builder.add_root_certificate(cert);
}
match client_builder.build() {
Ok(client) => client,
Err(e) => {
error!("Unable to create reqwest client: {}", e);
eprintln!("error: {}", e.to_string().red());
process::exit(1);
}
}
}
fn add_cert_to_builder(cert_path: Option<String>, servarr_name: &str) -> Certificate {
let err = |error: String| {
error!("{}", error);
eprintln!("error: {}", error.red());
process::exit(1);
};
if cert_path.is_none() {
err(format!(
"A {} cert path is required when 'use_ssl' is 'true'",
servarr_name
));
}
match fs::read(cert_path.unwrap()) {
Ok(cert) => match Certificate::from_pem(&cert) {
Ok(certificate) => certificate,
Err(_) => err(format!(
"Unable to read the specified {} SSL certificate",
servarr_name
)),
},
Err(_) => err(format!(
"Unable to open specified {} SSL certificate",
servarr_name
)),
}
}
#[cfg(not(debug_assertions))] #[cfg(not(debug_assertions))]
fn panic_hook(info: &PanicHookInfo<'_>) { fn panic_hook(info: &PanicHookInfo<'_>) {
use human_panic::{handle_dump, print_msg, Metadata}; use human_panic::{handle_dump, print_msg, Metadata};
+4
View File
@@ -291,6 +291,10 @@ pub struct HostConfig {
pub instance_name: Option<HorizontallyScrollableText>, pub instance_name: Option<HorizontallyScrollableText>,
pub application_url: Option<HorizontallyScrollableText>, pub application_url: Option<HorizontallyScrollableText>,
pub enable_ssl: bool, pub enable_ssl: bool,
#[serde(deserialize_with = "super::from_i64")]
pub ssl_port: i64,
pub ssl_cert_path: Option<String>,
pub ssl_cert_password: Option<String>,
} }
#[derive(Default, Deserialize, Serialize, Debug, Clone, Eq, PartialEq)] #[derive(Default, Deserialize, Serialize, Debug, Clone, Eq, PartialEq)]
+6 -2
View File
@@ -62,9 +62,13 @@ impl<'a, 'b> NetworkTrait for Network<'a, 'b> {
} }
impl<'a, 'b> Network<'a, 'b> { impl<'a, 'b> Network<'a, 'b> {
pub fn new(app: &'a Arc<Mutex<App<'b>>>, cancellation_token: CancellationToken) -> Self { pub fn new(
app: &'a Arc<Mutex<App<'b>>>,
cancellation_token: CancellationToken,
client: Client,
) -> Self {
Network { Network {
client: Client::new(), client,
app, app,
cancellation_token, cancellation_token,
} }
+13 -10
View File
@@ -6,6 +6,7 @@ mod tests {
use mockito::{Mock, Server, ServerGuard}; use mockito::{Mock, Server, ServerGuard};
use pretty_assertions::assert_str_eq; use pretty_assertions::assert_str_eq;
use reqwest::Client;
use rstest::rstest; use rstest::rstest;
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use tokio::sync::{mpsc, Mutex}; use tokio::sync::{mpsc, Mutex};
@@ -37,10 +38,12 @@ mod tests {
host, host,
api_token: String::new(), api_token: String::new(),
port, port,
use_ssl: false,
ssl_cert_path: None,
}; };
app.config.radarr = radarr_config; app.config.radarr = radarr_config;
let app_arc = Arc::new(Mutex::new(app)); let app_arc = Arc::new(Mutex::new(app));
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let _ = network let _ = network
.handle_network_event(RadarrEvent::HealthCheck.into()) .handle_network_event(RadarrEvent::HealthCheck.into())
@@ -64,7 +67,7 @@ mod tests {
.create_async() .create_async()
.await; .await;
let app_arc = Arc::new(Mutex::new(App::default())); let app_arc = Arc::new(Mutex::new(App::default()));
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let _ = network let _ = network
.handle_request::<Test, ()>( .handle_request::<Test, ()>(
@@ -90,7 +93,7 @@ mod tests {
#[values(RequestMethod::Get, RequestMethod::Post)] request_method: RequestMethod, #[values(RequestMethod::Get, RequestMethod::Post)] request_method: RequestMethod,
) { ) {
let (async_server, app_arc, server) = mock_api(request_method, 200, true).await; let (async_server, app_arc, server) = mock_api(request_method, 200, true).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let resp = network let resp = network
.handle_request::<(), Test>( .handle_request::<(), Test>(
@@ -122,7 +125,7 @@ mod tests {
#[values(RequestMethod::Get, RequestMethod::Post)] request_method: RequestMethod, #[values(RequestMethod::Get, RequestMethod::Post)] request_method: RequestMethod,
) { ) {
let (async_server, app_arc, server) = mock_api(request_method, 400, true).await; let (async_server, app_arc, server) = mock_api(request_method, 400, true).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let mut test_result = String::new(); let mut test_result = String::new();
let resp = network let resp = network
@@ -160,7 +163,7 @@ mod tests {
cancellation_token.clone(), cancellation_token.clone(),
))); )));
app_arc.lock().await.is_loading = true; app_arc.lock().await.is_loading = true;
let mut network = Network::new(&app_arc, cancellation_token); let mut network = Network::new(&app_arc, cancellation_token, Client::new());
network.cancellation_token.cancel(); network.cancellation_token.cancel();
let resp = network let resp = network
@@ -194,7 +197,7 @@ mod tests {
.create_async() .create_async()
.await; .await;
let app_arc = Arc::new(Mutex::new(App::default())); let app_arc = Arc::new(Mutex::new(App::default()));
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let resp = network let resp = network
.handle_request::<(), Test>( .handle_request::<(), Test>(
@@ -226,7 +229,7 @@ mod tests {
#[tokio::test] #[tokio::test]
async fn test_handle_request_failure_to_send_request() { async fn test_handle_request_failure_to_send_request() {
let app_arc = Arc::new(Mutex::new(App::default())); let app_arc = Arc::new(Mutex::new(App::default()));
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let resp = network let resp = network
.handle_request::<(), Test>( .handle_request::<(), Test>(
@@ -266,7 +269,7 @@ mod tests {
request_method: RequestMethod, request_method: RequestMethod,
) { ) {
let (async_server, app_arc, server) = mock_api(request_method, 404, true).await; let (async_server, app_arc, server) = mock_api(request_method, 404, true).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let resp = network let resp = network
.handle_request::<(), Test>( .handle_request::<(), Test>(
@@ -296,7 +299,7 @@ mod tests {
#[tokio::test] #[tokio::test]
async fn test_handle_request_non_success_code_empty_response_body() { async fn test_handle_request_non_success_code_empty_response_body() {
let (async_server, app_arc, server) = mock_api(RequestMethod::Post, 404, false).await; let (async_server, app_arc, server) = mock_api(RequestMethod::Post, 404, false).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let resp = network let resp = network
.handle_request::<(), Test>( .handle_request::<(), Test>(
@@ -354,7 +357,7 @@ mod tests {
async_server = async_server.create_async().await; async_server = async_server.create_async().await;
let app_arc = Arc::new(Mutex::new(App::default())); let app_arc = Arc::new(Mutex::new(App::default()));
let network = Network::new(&app_arc, CancellationToken::new()); let network = Network::new(&app_arc, CancellationToken::new(), Client::new());
network network
.call_api(RequestProps { .call_api(RequestProps {
+7 -1
View File
@@ -2262,8 +2262,14 @@ impl<'a, 'b> Network<'a, 'b> {
host, host,
port, port,
api_token, api_token,
use_ssl,
..
} = &app.config.radarr; } = &app.config.radarr;
let uri = format!("http://{host}:{}/api/v3{resource}", port.unwrap_or(7878)); let protocol = if *use_ssl { "https" } else { "http" };
let uri = format!(
"{protocol}://{host}:{}/api/v3{resource}",
port.unwrap_or(7878)
);
RequestProps { RequestProps {
uri, uri,
+110 -98
View File
@@ -6,6 +6,7 @@ mod test {
use chrono::{DateTime, Utc}; use chrono::{DateTime, Utc};
use mockito::{Matcher, Mock, Server, ServerGuard}; use mockito::{Matcher, Mock, Server, ServerGuard};
use pretty_assertions::{assert_eq, assert_str_eq}; use pretty_assertions::{assert_eq, assert_str_eq};
use reqwest::Client;
use rstest::rstest; use rstest::rstest;
use serde_json::{json, Number, Value}; use serde_json::{json, Number, Value};
use strum::IntoEnumIterator; use strum::IntoEnumIterator;
@@ -236,7 +237,7 @@ mod test {
RadarrEvent::HealthCheck.resource(), RadarrEvent::HealthCheck.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let _ = network.handle_radarr_event(RadarrEvent::HealthCheck).await; let _ = network.handle_radarr_event(RadarrEvent::HealthCheck).await;
@@ -262,7 +263,7 @@ mod test {
RadarrEvent::GetOverview.resource(), RadarrEvent::GetOverview.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let disk_space_vec = vec![ let disk_space_vec = vec![
DiskSpace { DiskSpace {
free_space: 1111, free_space: 1111,
@@ -301,7 +302,7 @@ mod test {
RadarrEvent::GetStatus.resource(), RadarrEvent::GetStatus.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let date_time = DateTime::from(DateTime::parse_from_rfc3339("2023-02-25T20:16:43Z").unwrap()) let date_time = DateTime::from(DateTime::parse_from_rfc3339("2023-02-25T20:16:43Z").unwrap())
as DateTime<Utc>; as DateTime<Utc>;
@@ -385,7 +386,7 @@ mod test {
.movies .movies
.sorting(vec![title_sort_option]); .sorting(vec![title_sort_option]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Movies(movies) = network if let RadarrSerdeable::Movies(movies) = network
.handle_radarr_event(RadarrEvent::GetMovies) .handle_radarr_event(RadarrEvent::GetMovies)
@@ -440,7 +441,7 @@ mod test {
.radarr_data .radarr_data
.movies .movies
.sorting(vec![title_sort_option]); .sorting(vec![title_sort_option]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetMovies) .handle_radarr_event(RadarrEvent::GetMovies)
@@ -493,7 +494,7 @@ mod test {
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
app_arc.lock().await.data.radarr_data.movie_details_modal = Some(MovieDetailsModal::default()); app_arc.lock().await.data.radarr_data.movie_details_modal = Some(MovieDetailsModal::default());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Releases(releases_vec) = network if let RadarrSerdeable::Releases(releases_vec) = network
.handle_radarr_event(RadarrEvent::GetReleases(None)) .handle_radarr_event(RadarrEvent::GetReleases(None))
@@ -551,7 +552,7 @@ mod test {
.radarr_data .radarr_data
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetReleases(None)) .handle_radarr_event(RadarrEvent::GetReleases(None))
@@ -610,7 +611,7 @@ mod test {
) )
.await; .await;
app_arc.lock().await.data.radarr_data.add_movie_search = Some("test term".into()); app_arc.lock().await.data.radarr_data.add_movie_search = Some("test term".into());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::AddMovieSearchResults(add_movie_search_results) = network if let RadarrSerdeable::AddMovieSearchResults(add_movie_search_results) = network
.handle_radarr_event(RadarrEvent::SearchNewMovie(None)) .handle_radarr_event(RadarrEvent::SearchNewMovie(None))
@@ -676,7 +677,7 @@ mod test {
&resource, &resource,
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::AddMovieSearchResults(add_movie_search_results) = network if let RadarrSerdeable::AddMovieSearchResults(add_movie_search_results) = network
.handle_radarr_event(RadarrEvent::SearchNewMovie(Some("test term".into()))) .handle_radarr_event(RadarrEvent::SearchNewMovie(Some("test term".into())))
@@ -711,7 +712,7 @@ mod test {
task_name: TaskName::default(), task_name: TaskName::default(),
..Task::default() ..Task::default()
}]); }]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Value(value) = network if let RadarrSerdeable::Value(value) = network
.handle_radarr_event(RadarrEvent::StartTask(None)) .handle_radarr_event(RadarrEvent::StartTask(None))
@@ -736,7 +737,7 @@ mod test {
RadarrEvent::StartTask(None).resource(), RadarrEvent::StartTask(None).resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Value(value) = network if let RadarrSerdeable::Value(value) = network
.handle_radarr_event(RadarrEvent::StartTask(Some(TaskName::default()))) .handle_radarr_event(RadarrEvent::StartTask(Some(TaskName::default())))
@@ -757,7 +758,7 @@ mod test {
let (async_server, app_arc, _server) = let (async_server, app_arc, _server) =
mock_radarr_api(RequestMethod::Get, None, Some(json!([])), None, &resource).await; mock_radarr_api(RequestMethod::Get, None, Some(json!([])), None, &resource).await;
app_arc.lock().await.data.radarr_data.add_movie_search = Some("test term".into()); app_arc.lock().await.data.radarr_data.add_movie_search = Some("test term".into());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::SearchNewMovie(None)) .handle_radarr_event(RadarrEvent::SearchNewMovie(None))
@@ -804,10 +805,12 @@ mod test {
host, host,
port, port,
api_token: "test1234".to_owned(), api_token: "test1234".to_owned(),
use_ssl: false,
ssl_cert_path: None,
}; };
app.config.radarr = radarr_config; app.config.radarr = radarr_config;
let app_arc = Arc::new(Mutex::new(app)); let app_arc = Arc::new(Mutex::new(app));
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::SearchNewMovie(None)) .handle_radarr_event(RadarrEvent::SearchNewMovie(None))
@@ -886,7 +889,7 @@ mod test {
.radarr_data .radarr_data
.indexers .indexers
.set_items(vec![indexer()]); .set_items(vec![indexer()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Value(value) = network if let RadarrSerdeable::Value(value) = network
.handle_radarr_event(RadarrEvent::TestIndexer(None)) .handle_radarr_event(RadarrEvent::TestIndexer(None))
@@ -954,7 +957,7 @@ mod test {
.radarr_data .radarr_data
.indexers .indexers
.set_items(vec![indexer()]); .set_items(vec![indexer()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Value(value) = network if let RadarrSerdeable::Value(value) = network
.handle_radarr_event(RadarrEvent::TestIndexer(None)) .handle_radarr_event(RadarrEvent::TestIndexer(None))
@@ -1015,7 +1018,7 @@ mod test {
.with_body("{}") .with_body("{}")
.create_async() .create_async()
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Value(value) = network if let RadarrSerdeable::Value(value) = network
.handle_radarr_event(RadarrEvent::TestIndexer(Some(1))) .handle_radarr_event(RadarrEvent::TestIndexer(Some(1)))
@@ -1092,7 +1095,7 @@ mod test {
.radarr_data .radarr_data
.indexers .indexers
.set_items(indexers); .set_items(indexers);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::IndexerTestResults(results) = network if let RadarrSerdeable::IndexerTestResults(results) = network
.handle_radarr_event(RadarrEvent::TestAllIndexers) .handle_radarr_event(RadarrEvent::TestAllIndexers)
@@ -1143,7 +1146,7 @@ mod test {
.radarr_data .radarr_data
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::TriggerAutomaticSearch(None)) .handle_radarr_event(RadarrEvent::TriggerAutomaticSearch(None))
@@ -1166,7 +1169,7 @@ mod test {
RadarrEvent::TriggerAutomaticSearch(None).resource(), RadarrEvent::TriggerAutomaticSearch(None).resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::TriggerAutomaticSearch(Some(1))) .handle_radarr_event(RadarrEvent::TriggerAutomaticSearch(Some(1)))
@@ -1196,7 +1199,7 @@ mod test {
.radarr_data .radarr_data
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::UpdateAndScan(None)) .handle_radarr_event(RadarrEvent::UpdateAndScan(None))
@@ -1219,7 +1222,7 @@ mod test {
RadarrEvent::UpdateAndScan(None).resource(), RadarrEvent::UpdateAndScan(None).resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::UpdateAndScan(Some(1))) .handle_radarr_event(RadarrEvent::UpdateAndScan(Some(1)))
@@ -1242,7 +1245,7 @@ mod test {
RadarrEvent::UpdateAllMovies.resource(), RadarrEvent::UpdateAllMovies.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::UpdateAllMovies) .handle_radarr_event(RadarrEvent::UpdateAllMovies)
@@ -1264,7 +1267,7 @@ mod test {
RadarrEvent::UpdateDownloads.resource(), RadarrEvent::UpdateDownloads.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::UpdateDownloads) .handle_radarr_event(RadarrEvent::UpdateDownloads)
@@ -1286,7 +1289,7 @@ mod test {
RadarrEvent::UpdateCollections.resource(), RadarrEvent::UpdateCollections.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::UpdateCollections) .handle_radarr_event(RadarrEvent::UpdateCollections)
@@ -1317,7 +1320,7 @@ mod test {
.set_items(vec![movie()]); .set_items(vec![movie()]);
app_arc.lock().await.data.radarr_data.quality_profile_map = app_arc.lock().await.data.radarr_data.quality_profile_map =
BiMap::from_iter([(2222, "HD - 1080p".to_owned())]); BiMap::from_iter([(2222, "HD - 1080p".to_owned())]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Movie(movie) = network if let RadarrSerdeable::Movie(movie) = network
.handle_radarr_event(RadarrEvent::GetMovieDetails(None)) .handle_radarr_event(RadarrEvent::GetMovieDetails(None))
@@ -1402,7 +1405,7 @@ mod test {
&resource, &resource,
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Movie(movie) = network if let RadarrSerdeable::Movie(movie) = network
.handle_radarr_event(RadarrEvent::GetMovieDetails(Some(1))) .handle_radarr_event(RadarrEvent::GetMovieDetails(Some(1)))
@@ -1456,7 +1459,7 @@ mod test {
.set_items(vec![movie()]); .set_items(vec![movie()]);
app_arc.lock().await.data.radarr_data.quality_profile_map = app_arc.lock().await.data.radarr_data.quality_profile_map =
BiMap::from_iter([(2222, "HD - 1080p".to_owned())]); BiMap::from_iter([(2222, "HD - 1080p".to_owned())]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetMovieDetails(None)) .handle_radarr_event(RadarrEvent::GetMovieDetails(None))
@@ -1530,7 +1533,7 @@ mod test {
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
app_arc.lock().await.data.radarr_data.movie_details_modal = Some(MovieDetailsModal::default()); app_arc.lock().await.data.radarr_data.movie_details_modal = Some(MovieDetailsModal::default());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::MovieHistoryItems(history) = network if let RadarrSerdeable::MovieHistoryItems(history) = network
.handle_radarr_event(RadarrEvent::GetMovieHistory(None)) .handle_radarr_event(RadarrEvent::GetMovieHistory(None))
@@ -1578,7 +1581,7 @@ mod test {
&resource, &resource,
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::MovieHistoryItems(history) = network if let RadarrSerdeable::MovieHistoryItems(history) = network
.handle_radarr_event(RadarrEvent::GetMovieHistory(Some(1))) .handle_radarr_event(RadarrEvent::GetMovieHistory(Some(1)))
@@ -1618,7 +1621,7 @@ mod test {
.radarr_data .radarr_data
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetMovieHistory(None)) .handle_radarr_event(RadarrEvent::GetMovieHistory(None))
@@ -1767,7 +1770,7 @@ mod test {
.blocklist .blocklist
.sorting(vec![blocklist_sort_option]); .sorting(vec![blocklist_sort_option]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::BlocklistResponse(blocklist) = network if let RadarrSerdeable::BlocklistResponse(blocklist) = network
.handle_radarr_event(RadarrEvent::GetBlocklist) .handle_radarr_event(RadarrEvent::GetBlocklist)
@@ -1888,7 +1891,7 @@ mod test {
.radarr_data .radarr_data
.blocklist .blocklist
.sorting(vec![blocklist_sort_option]); .sorting(vec![blocklist_sort_option]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetBlocklist) .handle_radarr_event(RadarrEvent::GetBlocklist)
@@ -2011,7 +2014,7 @@ mod test {
.collections .collections
.sorting(vec![collection_sort_option]); .sorting(vec![collection_sort_option]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Collections(collections) = network if let RadarrSerdeable::Collections(collections) = network
.handle_radarr_event(RadarrEvent::GetCollections) .handle_radarr_event(RadarrEvent::GetCollections)
@@ -2118,7 +2121,7 @@ mod test {
.radarr_data .radarr_data
.collections .collections
.sorting(vec![collection_sort_option]); .sorting(vec![collection_sort_option]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetCollections) .handle_radarr_event(RadarrEvent::GetCollections)
@@ -2162,7 +2165,7 @@ mod test {
RadarrEvent::GetDownloads.resource(), RadarrEvent::GetDownloads.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::DownloadsResponse(downloads) = network if let RadarrSerdeable::DownloadsResponse(downloads) = network
.handle_radarr_event(RadarrEvent::GetDownloads) .handle_radarr_event(RadarrEvent::GetDownloads)
@@ -2186,7 +2189,10 @@ mod test {
"urlBase": "some.test.site/radarr", "urlBase": "some.test.site/radarr",
"instanceName": "Radarr", "instanceName": "Radarr",
"applicationUrl": "https://some.test.site:7878/radarr", "applicationUrl": "https://some.test.site:7878/radarr",
"enableSsl": true "enableSsl": true,
"sslPort": 9898,
"sslCertPath": "/app/radarr.pfx",
"sslCertPassword": "test"
}); });
let response: HostConfig = serde_json::from_value(host_config_response.clone()).unwrap(); let response: HostConfig = serde_json::from_value(host_config_response.clone()).unwrap();
let (async_server, app_arc, _server) = mock_radarr_api( let (async_server, app_arc, _server) = mock_radarr_api(
@@ -2197,7 +2203,7 @@ mod test {
RadarrEvent::GetHostConfig.resource(), RadarrEvent::GetHostConfig.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::HostConfig(host_config) = network if let RadarrSerdeable::HostConfig(host_config) = network
.handle_radarr_event(RadarrEvent::GetHostConfig) .handle_radarr_event(RadarrEvent::GetHostConfig)
@@ -2250,7 +2256,7 @@ mod test {
RadarrEvent::GetIndexers.resource(), RadarrEvent::GetIndexers.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Indexers(indexers) = network if let RadarrSerdeable::Indexers(indexers) = network
.handle_radarr_event(RadarrEvent::GetIndexers) .handle_radarr_event(RadarrEvent::GetIndexers)
@@ -2289,7 +2295,7 @@ mod test {
RadarrEvent::GetAllIndexerSettings.resource(), RadarrEvent::GetAllIndexerSettings.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::IndexerSettings(settings) = network if let RadarrSerdeable::IndexerSettings(settings) = network
.handle_radarr_event(RadarrEvent::GetAllIndexerSettings) .handle_radarr_event(RadarrEvent::GetAllIndexerSettings)
@@ -2327,7 +2333,7 @@ mod test {
) )
.await; .await;
app_arc.lock().await.data.radarr_data.indexer_settings = Some(IndexerSettings::default()); app_arc.lock().await.data.radarr_data.indexer_settings = Some(IndexerSettings::default());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetAllIndexerSettings) .handle_radarr_event(RadarrEvent::GetAllIndexerSettings)
@@ -2374,7 +2380,7 @@ mod test {
RadarrEvent::GetQueuedEvents.resource(), RadarrEvent::GetQueuedEvents.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::QueueEvents(events) = network if let RadarrSerdeable::QueueEvents(events) = network
.handle_radarr_event(RadarrEvent::GetQueuedEvents) .handle_radarr_event(RadarrEvent::GetQueuedEvents)
@@ -2435,7 +2441,7 @@ mod test {
&resource, &resource,
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::LogResponse(logs) = network if let RadarrSerdeable::LogResponse(logs) = network
.handle_radarr_event(RadarrEvent::GetLogs(None)) .handle_radarr_event(RadarrEvent::GetLogs(None))
@@ -2505,7 +2511,7 @@ mod test {
&resource, &resource,
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::LogResponse(logs) = network if let RadarrSerdeable::LogResponse(logs) = network
.handle_radarr_event(RadarrEvent::GetLogs(Some(1000))) .handle_radarr_event(RadarrEvent::GetLogs(Some(1000)))
@@ -2546,7 +2552,7 @@ mod test {
RadarrEvent::GetQualityProfiles.resource(), RadarrEvent::GetQualityProfiles.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::QualityProfiles(quality_profiles) = network if let RadarrSerdeable::QualityProfiles(quality_profiles) = network
.handle_radarr_event(RadarrEvent::GetQualityProfiles) .handle_radarr_event(RadarrEvent::GetQualityProfiles)
@@ -2577,7 +2583,7 @@ mod test {
RadarrEvent::GetTags.resource(), RadarrEvent::GetTags.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Tags(tags) = network if let RadarrSerdeable::Tags(tags) = network
.handle_radarr_event(RadarrEvent::GetTags) .handle_radarr_event(RadarrEvent::GetTags)
@@ -2639,7 +2645,7 @@ mod test {
RadarrEvent::GetTasks.resource(), RadarrEvent::GetTasks.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Tasks(tasks) = network if let RadarrSerdeable::Tasks(tasks) = network
.handle_radarr_event(RadarrEvent::GetTasks) .handle_radarr_event(RadarrEvent::GetTasks)
@@ -2732,7 +2738,7 @@ mod test {
RadarrEvent::GetUpdates.resource(), RadarrEvent::GetUpdates.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Updates(updates) = network if let RadarrSerdeable::Updates(updates) = network
.handle_radarr_event(RadarrEvent::GetUpdates) .handle_radarr_event(RadarrEvent::GetUpdates)
@@ -2762,7 +2768,7 @@ mod test {
.await; .await;
app_arc.lock().await.data.radarr_data.tags_map = app_arc.lock().await.data.radarr_data.tags_map =
BiMap::from_iter([(1, "usenet".to_owned()), (2, "test".to_owned())]); BiMap::from_iter([(1, "usenet".to_owned()), (2, "test".to_owned())]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Tag(tag) = network if let RadarrSerdeable::Tag(tag) = network
.handle_radarr_event(RadarrEvent::AddTag("testing".to_owned())) .handle_radarr_event(RadarrEvent::AddTag("testing".to_owned()))
@@ -2787,7 +2793,7 @@ mod test {
let resource = format!("{}/1", RadarrEvent::DeleteTag(1).resource()); let resource = format!("{}/1", RadarrEvent::DeleteTag(1).resource());
let (async_server, app_arc, _server) = let (async_server, app_arc, _server) =
mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await; mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteTag(1)) .handle_radarr_event(RadarrEvent::DeleteTag(1))
@@ -2814,7 +2820,7 @@ mod test {
RadarrEvent::GetRootFolders.resource(), RadarrEvent::GetRootFolders.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::RootFolders(root_folders) = network if let RadarrSerdeable::RootFolders(root_folders) = network
.handle_radarr_event(RadarrEvent::GetRootFolders) .handle_radarr_event(RadarrEvent::GetRootFolders)
@@ -2850,7 +2856,7 @@ mod test {
RadarrEvent::GetSecurityConfig.resource(), RadarrEvent::GetSecurityConfig.resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::SecurityConfig(security_config) = network if let RadarrSerdeable::SecurityConfig(security_config) = network
.handle_radarr_event(RadarrEvent::GetSecurityConfig) .handle_radarr_event(RadarrEvent::GetSecurityConfig)
@@ -2898,7 +2904,7 @@ mod test {
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
app_arc.lock().await.data.radarr_data.movie_details_modal = Some(MovieDetailsModal::default()); app_arc.lock().await.data.radarr_data.movie_details_modal = Some(MovieDetailsModal::default());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Credits(credits) = network if let RadarrSerdeable::Credits(credits) = network
.handle_radarr_event(RadarrEvent::GetMovieCredits(None)) .handle_radarr_event(RadarrEvent::GetMovieCredits(None))
@@ -2943,7 +2949,7 @@ mod test {
&resource, &resource,
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
if let RadarrSerdeable::Credits(credits) = network if let RadarrSerdeable::Credits(credits) = network
.handle_radarr_event(RadarrEvent::GetMovieCredits(Some(1))) .handle_radarr_event(RadarrEvent::GetMovieCredits(Some(1)))
@@ -2989,7 +2995,7 @@ mod test {
.radarr_data .radarr_data
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::GetMovieCredits(None)) .handle_radarr_event(RadarrEvent::GetMovieCredits(None))
@@ -3018,7 +3024,7 @@ mod test {
app.data.radarr_data.delete_movie_files = true; app.data.radarr_data.delete_movie_files = true;
app.data.radarr_data.add_list_exclusion = true; app.data.radarr_data.add_list_exclusion = true;
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteMovie(None)) .handle_radarr_event(RadarrEvent::DeleteMovie(None))
@@ -3038,7 +3044,7 @@ mod test {
); );
let (async_server, app_arc, _server) = let (async_server, app_arc, _server) =
mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await; mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let delete_movie_params = DeleteMovieParams { let delete_movie_params = DeleteMovieParams {
id: 1, id: 1,
delete_movie_files: true, delete_movie_files: true,
@@ -3087,7 +3093,7 @@ mod test {
.radarr_data .radarr_data
.blocklist .blocklist
.set_items(blocklist_items); .set_items(blocklist_items);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::ClearBlocklist) .handle_radarr_event(RadarrEvent::ClearBlocklist)
@@ -3109,7 +3115,7 @@ mod test {
.radarr_data .radarr_data
.blocklist .blocklist
.set_items(vec![blocklist_item()]); .set_items(vec![blocklist_item()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteBlocklistItem(None)) .handle_radarr_event(RadarrEvent::DeleteBlocklistItem(None))
@@ -3124,7 +3130,7 @@ mod test {
let resource = format!("{}/1", RadarrEvent::DeleteBlocklistItem(None).resource()); let resource = format!("{}/1", RadarrEvent::DeleteBlocklistItem(None).resource());
let (async_server, app_arc, _server) = let (async_server, app_arc, _server) =
mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await; mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteBlocklistItem(Some(1))) .handle_radarr_event(RadarrEvent::DeleteBlocklistItem(Some(1)))
@@ -3146,7 +3152,7 @@ mod test {
.radarr_data .radarr_data
.downloads .downloads
.set_items(vec![download_record()]); .set_items(vec![download_record()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteDownload(None)) .handle_radarr_event(RadarrEvent::DeleteDownload(None))
@@ -3161,7 +3167,7 @@ mod test {
let resource = format!("{}/1", RadarrEvent::DeleteDownload(None).resource()); let resource = format!("{}/1", RadarrEvent::DeleteDownload(None).resource());
let (async_server, app_arc, _server) = let (async_server, app_arc, _server) =
mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await; mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteDownload(Some(1))) .handle_radarr_event(RadarrEvent::DeleteDownload(Some(1)))
@@ -3183,7 +3189,7 @@ mod test {
.radarr_data .radarr_data
.indexers .indexers
.set_items(vec![indexer()]); .set_items(vec![indexer()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteIndexer(None)) .handle_radarr_event(RadarrEvent::DeleteIndexer(None))
@@ -3198,7 +3204,7 @@ mod test {
let resource = format!("{}/1", RadarrEvent::DeleteIndexer(None).resource()); let resource = format!("{}/1", RadarrEvent::DeleteIndexer(None).resource());
let (async_server, app_arc, _server) = let (async_server, app_arc, _server) =
mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await; mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteIndexer(Some(1))) .handle_radarr_event(RadarrEvent::DeleteIndexer(Some(1)))
@@ -3220,7 +3226,7 @@ mod test {
.radarr_data .radarr_data
.root_folders .root_folders
.set_items(vec![root_folder()]); .set_items(vec![root_folder()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteRootFolder(None)) .handle_radarr_event(RadarrEvent::DeleteRootFolder(None))
@@ -3235,7 +3241,7 @@ mod test {
let resource = format!("{}/1", RadarrEvent::DeleteRootFolder(None).resource()); let resource = format!("{}/1", RadarrEvent::DeleteRootFolder(None).resource());
let (async_server, app_arc, _server) = let (async_server, app_arc, _server) =
mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await; mock_radarr_api(RequestMethod::Delete, None, None, None, &resource).await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DeleteRootFolder(Some(1))) .handle_radarr_event(RadarrEvent::DeleteRootFolder(Some(1)))
@@ -3319,7 +3325,7 @@ mod test {
app.data.radarr_data.add_searched_movies = Some(add_searched_movies); app.data.radarr_data.add_searched_movies = Some(add_searched_movies);
} }
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::AddMovie(None)) .handle_radarr_event(RadarrEvent::AddMovie(None))
@@ -3372,7 +3378,7 @@ mod test {
}, },
}; };
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::AddMovie(Some(body))) .handle_radarr_event(RadarrEvent::AddMovie(Some(body)))
@@ -3458,7 +3464,7 @@ mod test {
add_searched_movies.scroll_to_bottom(); add_searched_movies.scroll_to_bottom();
app.data.radarr_data.add_searched_movies = Some(add_searched_movies); app.data.radarr_data.add_searched_movies = Some(add_searched_movies);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::AddMovie(None)) .handle_radarr_event(RadarrEvent::AddMovie(None))
@@ -3502,7 +3508,7 @@ mod test {
.await; .await;
app_arc.lock().await.data.radarr_data.edit_root_folder = Some("/nfs/test".into()); app_arc.lock().await.data.radarr_data.edit_root_folder = Some("/nfs/test".into());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::AddRootFolder(None)) .handle_radarr_event(RadarrEvent::AddRootFolder(None))
@@ -3532,7 +3538,7 @@ mod test {
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::AddRootFolder(Some("/test/test".to_owned()))) .handle_radarr_event(RadarrEvent::AddRootFolder(Some("/test/test".to_owned())))
@@ -3572,7 +3578,7 @@ mod test {
.await; .await;
app_arc.lock().await.data.radarr_data.indexer_settings = Some(indexer_settings()); app_arc.lock().await.data.radarr_data.indexer_settings = Some(indexer_settings());
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditAllIndexerSettings(None)) .handle_radarr_event(RadarrEvent::EditAllIndexerSettings(None))
@@ -3611,7 +3617,7 @@ mod test {
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditAllIndexerSettings( .handle_radarr_event(RadarrEvent::EditAllIndexerSettings(
@@ -3709,7 +3715,7 @@ mod test {
app.data.radarr_data.quality_profile_map = app.data.radarr_data.quality_profile_map =
BiMap::from_iter([(1111, "Any".to_owned()), (2222, "HD - 1080p".to_owned())]); BiMap::from_iter([(1111, "Any".to_owned()), (2222, "HD - 1080p".to_owned())]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditCollection(None)) .handle_radarr_event(RadarrEvent::EditCollection(None))
@@ -3794,7 +3800,7 @@ mod test {
root_folder_path: Some("/nfs/Test Path".to_owned()), root_folder_path: Some("/nfs/Test Path".to_owned()),
search_on_add: Some(false), search_on_add: Some(false),
}; };
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditCollection(Some(edit_collection_params))) .handle_radarr_event(RadarrEvent::EditCollection(Some(edit_collection_params)))
@@ -3873,7 +3879,7 @@ mod test {
collection_id: 123, collection_id: 123,
..EditCollectionParams::default() ..EditCollectionParams::default()
}; };
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditCollection(Some(edit_collection_params))) .handle_radarr_event(RadarrEvent::EditCollection(Some(edit_collection_params)))
@@ -3969,7 +3975,7 @@ mod test {
app.data.radarr_data.edit_indexer_modal = Some(edit_indexer_modal); app.data.radarr_data.edit_indexer_modal = Some(edit_indexer_modal);
app.data.radarr_data.indexers.set_items(vec![indexer()]); app.data.radarr_data.indexers.set_items(vec![indexer()]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditIndexer(None)) .handle_radarr_event(RadarrEvent::EditIndexer(None))
@@ -4070,7 +4076,7 @@ mod test {
); );
app.data.radarr_data.indexers.set_items(vec![indexer]); app.data.radarr_data.indexers.set_items(vec![indexer]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditIndexer(None)) .handle_radarr_event(RadarrEvent::EditIndexer(None))
@@ -4185,7 +4191,7 @@ mod test {
); );
app.data.radarr_data.indexers.set_items(vec![indexer]); app.data.radarr_data.indexers.set_items(vec![indexer]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditIndexer(None)) .handle_radarr_event(RadarrEvent::EditIndexer(None))
@@ -4280,7 +4286,7 @@ mod test {
.match_body(Matcher::Json(expected_indexer_edit_body_json)) .match_body(Matcher::Json(expected_indexer_edit_body_json))
.create_async() .create_async()
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditIndexer(Some(edit_indexer_params))) .handle_radarr_event(RadarrEvent::EditIndexer(Some(edit_indexer_params)))
@@ -4340,7 +4346,7 @@ mod test {
.match_body(Matcher::Json(indexer_details_json)) .match_body(Matcher::Json(indexer_details_json))
.create_async() .create_async()
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditIndexer(Some(edit_indexer_params))) .handle_radarr_event(RadarrEvent::EditIndexer(Some(edit_indexer_params)))
@@ -4425,7 +4431,7 @@ mod test {
.match_body(Matcher::Json(expected_edit_indexer_body)) .match_body(Matcher::Json(expected_edit_indexer_body))
.create_async() .create_async()
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditIndexer(Some(edit_indexer_params))) .handle_radarr_event(RadarrEvent::EditIndexer(Some(edit_indexer_params)))
@@ -4488,7 +4494,7 @@ mod test {
app.data.radarr_data.quality_profile_map = app.data.radarr_data.quality_profile_map =
BiMap::from_iter([(1111, "Any".to_owned()), (2222, "HD - 1080p".to_owned())]); BiMap::from_iter([(1111, "Any".to_owned()), (2222, "HD - 1080p".to_owned())]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditMovie(None)) .handle_radarr_event(RadarrEvent::EditMovie(None))
@@ -4539,7 +4545,7 @@ mod test {
tags: Some(vec![1, 2]), tags: Some(vec![1, 2]),
..EditMovieParams::default() ..EditMovieParams::default()
}; };
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditMovie(Some(edit_movie_params))) .handle_radarr_event(RadarrEvent::EditMovie(Some(edit_movie_params)))
@@ -4576,7 +4582,7 @@ mod test {
movie_id: 1, movie_id: 1,
..EditMovieParams::default() ..EditMovieParams::default()
}; };
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditMovie(Some(edit_movie_params))) .handle_radarr_event(RadarrEvent::EditMovie(Some(edit_movie_params)))
@@ -4617,7 +4623,7 @@ mod test {
clear_tags: true, clear_tags: true,
..EditMovieParams::default() ..EditMovieParams::default()
}; };
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::EditMovie(Some(edit_movie_params))) .handle_radarr_event(RadarrEvent::EditMovie(Some(edit_movie_params)))
@@ -4654,7 +4660,7 @@ mod test {
.radarr_data .radarr_data
.movies .movies
.set_items(vec![movie()]); .set_items(vec![movie()]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert!(network assert!(network
.handle_radarr_event(RadarrEvent::DownloadRelease(None)) .handle_radarr_event(RadarrEvent::DownloadRelease(None))
@@ -4678,7 +4684,7 @@ mod test {
RadarrEvent::DownloadRelease(None).resource(), RadarrEvent::DownloadRelease(None).resource(),
) )
.await; .await;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let params = ReleaseDownloadBody { let params = ReleaseDownloadBody {
guid: "1234".to_owned(), guid: "1234".to_owned(),
indexer_id: 2, indexer_id: 2,
@@ -4705,7 +4711,7 @@ mod test {
(3, "hi".to_owned()), (3, "hi".to_owned()),
]); ]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert_eq!( assert_eq!(
network.extract_and_add_tag_ids_vec(tags).await, network.extract_and_add_tag_ids_vec(tags).await,
@@ -4733,7 +4739,7 @@ mod test {
app.data.radarr_data.tags_map = app.data.radarr_data.tags_map =
BiMap::from_iter([(1, "usenet".to_owned()), (2, "test".to_owned())]); BiMap::from_iter([(1, "usenet".to_owned()), (2, "test".to_owned())]);
} }
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let tag_ids_vec = network.extract_and_add_tag_ids_vec(tags).await; let tag_ids_vec = network.extract_and_add_tag_ids_vec(tags).await;
@@ -4762,7 +4768,7 @@ mod test {
id: 1, id: 1,
..Movie::default() ..Movie::default()
}]); }]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert_eq!(network.extract_movie_id().await, 1); assert_eq!(network.extract_movie_id().await, 1);
} }
@@ -4776,7 +4782,7 @@ mod test {
..Movie::default() ..Movie::default()
}]); }]);
app_arc.lock().await.data.radarr_data.movies = filtered_movies; app_arc.lock().await.data.radarr_data.movies = filtered_movies;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert_eq!(network.extract_movie_id().await, 1); assert_eq!(network.extract_movie_id().await, 1);
} }
@@ -4794,7 +4800,7 @@ mod test {
id: 1, id: 1,
..Collection::default() ..Collection::default()
}]); }]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert_eq!(network.extract_collection_id().await, 1); assert_eq!(network.extract_collection_id().await, 1);
} }
@@ -4808,7 +4814,7 @@ mod test {
..Collection::default() ..Collection::default()
}]); }]);
app_arc.lock().await.data.radarr_data.collections = filtered_collections; app_arc.lock().await.data.radarr_data.collections = filtered_collections;
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert_eq!(network.extract_collection_id().await, 1); assert_eq!(network.extract_collection_id().await, 1);
} }
@@ -4826,7 +4832,7 @@ mod test {
id: 1, id: 1,
..Movie::default() ..Movie::default()
}]); }]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert_str_eq!( assert_str_eq!(
network.append_movie_id_param("/test", None).await, network.append_movie_id_param("/test", None).await,
@@ -4847,7 +4853,7 @@ mod test {
id: 1, id: 1,
..Movie::default() ..Movie::default()
}]); }]);
let mut network = Network::new(&app_arc, CancellationToken::new()); let mut network = Network::new(&app_arc, CancellationToken::new(), Client::new());
assert_str_eq!( assert_str_eq!(
network.append_movie_id_param("/test", Some(11)).await, network.append_movie_id_param("/test", Some(11)).await,
@@ -4858,7 +4864,7 @@ mod test {
#[tokio::test] #[tokio::test]
async fn test_radarr_request_props_from_default_radarr_config() { async fn test_radarr_request_props_from_default_radarr_config() {
let app_arc = Arc::new(Mutex::new(App::default())); let app_arc = Arc::new(Mutex::new(App::default()));
let network = Network::new(&app_arc, CancellationToken::new()); let network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let request_props = network let request_props = network
.radarr_request_props_from("/test", RequestMethod::Get, None::<()>) .radarr_request_props_from("/test", RequestMethod::Get, None::<()>)
@@ -4873,6 +4879,8 @@ mod test {
host: "192.168.0.123".to_owned(), host: "192.168.0.123".to_owned(),
port: Some(8080), port: Some(8080),
api_token: "testToken1234".to_owned(), api_token: "testToken1234".to_owned(),
use_ssl: false,
ssl_cert_path: None,
}; };
} }
@@ -4884,14 +4892,16 @@ mod test {
host: "192.168.0.123".to_owned(), host: "192.168.0.123".to_owned(),
port: Some(8080), port: Some(8080),
api_token: api_token.clone(), api_token: api_token.clone(),
use_ssl: true,
ssl_cert_path: None,
}; };
let network = Network::new(&app_arc, CancellationToken::new()); let network = Network::new(&app_arc, CancellationToken::new(), Client::new());
let request_props = network let request_props = network
.radarr_request_props_from("/test", RequestMethod::Get, None::<()>) .radarr_request_props_from("/test", RequestMethod::Get, None::<()>)
.await; .await;
assert_str_eq!(request_props.uri, "http://192.168.0.123:8080/api/v3/test"); assert_str_eq!(request_props.uri, "https://192.168.0.123:8080/api/v3/test");
assert_eq!(request_props.method, RequestMethod::Get); assert_eq!(request_props.method, RequestMethod::Get);
assert_eq!(request_props.body, None); assert_eq!(request_props.body, None);
assert_str_eq!(request_props.api_token, api_token); assert_str_eq!(request_props.api_token, api_token);
@@ -4987,6 +4997,8 @@ mod test {
host, host,
port, port,
api_token: "test1234".to_owned(), api_token: "test1234".to_owned(),
use_ssl: false,
ssl_cert_path: None,
}; };
app.config.radarr = radarr_config; app.config.radarr = radarr_config;
let app_arc = Arc::new(Mutex::new(app)); let app_arc = Arc::new(Mutex::new(app));