mod common;
use common::resolve_base_url;
#[test]
fn base_url_falls_back_to_default() {
assert_eq!(resolve_base_url(None), "https://api.apify.com");
}
#[test]
fn base_url_strips_v2_suffix() {
assert_eq!(
resolve_base_url(Some("https://api.example.com/v2")),
"https://api.example.com"
);
assert_eq!(
resolve_base_url(Some("https://api.example.com/v2/")),
"https://api.example.com"
);
}
#[test]
fn make_client_honors_apify_api_url_env() {
let prev_token = std::env::var("APIFY_TOKEN").ok();
let prev_url = std::env::var("APIFY_API_URL").ok();
std::env::set_var("APIFY_TOKEN", "dummy-token-for-config-test");
std::env::set_var("APIFY_API_URL", "https://api.example.test/v2");
let client = common::make_client().expect("make_client with a token set");
assert_eq!(client.api_base_url(), "https://api.example.test/v2");
match prev_token {
Some(v) => std::env::set_var("APIFY_TOKEN", v),
None => std::env::remove_var("APIFY_TOKEN"),
}
match prev_url {
Some(v) => std::env::set_var("APIFY_API_URL", v),
None => std::env::remove_var("APIFY_API_URL"),
}
}