From ea788a7c01f31c04b05b60b4fedfc6edd5d147ac Mon Sep 17 00:00:00 2001 From: Alex Date: Tue, 19 Apr 2022 02:03:53 +0200 Subject: [PATCH] nicer test --- .gitignore | 7 ------- src/bin/test.rs | 6 ++++-- src/lib.rs | 23 +++++++---------------- 3 files changed, 11 insertions(+), 25 deletions(-) diff --git a/.gitignore b/.gitignore index 9ce42ca..4fffb2f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,2 @@ /target - - -# Added by cargo -# -# already existing elements were commented out - -#/target /Cargo.lock diff --git a/src/bin/test.rs b/src/bin/test.rs index 21880c6..c4a90c2 100644 --- a/src/bin/test.rs +++ b/src/bin/test.rs @@ -5,7 +5,9 @@ use std::error::Error; async fn main() -> Result<(), Box> { let servers = radiobrowser_lib_rust::get_servers().await?; println!("Servers: {:?}", servers); - let config: ApiConfig = radiobrowser_lib_rust::get_server_config().await?; - println!("{:#?}", config); + for server in servers { + let config: ApiConfig = radiobrowser_lib_rust::get_server_config(server).await?; + println!("{:#?}", config); + } Ok(()) } diff --git a/src/lib.rs b/src/lib.rs index 45ed6fc..4bba390 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -2,6 +2,10 @@ use reqwest; use serde::Deserialize; use std::error::Error; +use async_std_resolver::proto::rr::RecordType; +use async_std_resolver::proto::xfer::DnsRequestOptions; +use async_std_resolver::{config, resolver}; + #[derive(Debug, Deserialize)] pub struct ApiConfig { pub check_enabled: bool, @@ -28,10 +32,10 @@ pub struct ApiConfig { pub language_to_code_filepath: String, } -pub async fn get_server_config() -> Result> { +pub async fn get_server_config>(server: P) -> Result> { let client = reqwest::Client::new(); let res = client - .post("https://de1.api.radio-browser.info/json/config") + .post(format!("https://{}/json/config", server.as_ref())) .send() .await? .json::() @@ -39,10 +43,6 @@ pub async fn get_server_config() -> Result> { Ok(res) } -use async_std_resolver::proto::rr::RecordType; -use async_std_resolver::proto::xfer::DnsRequestOptions; -use async_std_resolver::{config, resolver}; - pub async fn get_servers() -> Result, Box> { // Construct a new Resolver with default configuration options let resolver = resolver( @@ -67,16 +67,7 @@ pub async fn get_servers() -> Result, Box> { let list = response .iter() .filter_map(|entry| entry.as_srv()) - .map(|entry| entry.target().to_string()) + .map(|entry| entry.target().to_string().trim_matches('.').to_string()) .collect(); Ok(list) } - -#[cfg(test)] -mod tests { - #[test] - fn it_works() { - let result = 2 + 2; - assert_eq!(result, 4); - } -}