#![allow(clippy::unwrap_used, clippy::expect_used, clippy::panic)]
use crawlkit_engine::backlink_adapters::{
AhrefsAdapter, BacklinkAdapter, GscAdapter, MajesticAdapter,
};
#[tokio::test]
async fn test_ahrefs_adapter_api_key_required() {
let adapter = AhrefsAdapter::new(None);
assert!(!adapter.is_available());
let result = adapter.fetch_backlinks("example.com", 10).await;
assert!(result.is_err());
let result = adapter.get_domain_rating("example.com").await;
assert!(result.is_err());
}
#[tokio::test]
async fn test_majestic_adapter_api_key_required() {
let adapter = MajesticAdapter::new(None);
assert!(!adapter.is_available());
let result = adapter.fetch_backlinks("example.com", 10).await;
assert!(result.is_err());
let result = adapter.get_domain_rating("example.com").await;
assert!(result.is_err());
}
#[tokio::test]
async fn test_gsc_adapter_token_required() {
let adapter = GscAdapter::new(None);
assert!(!adapter.is_available());
let result = adapter.fetch_backlinks("example.com", 10).await;
assert!(result.is_err());
let result = adapter.get_domain_rating("example.com").await;
assert!(result.is_err());
}
#[test]
fn test_backlink_registry() {
let registry = crawlkit_engine::BacklinkAdapterRegistry::with_defaults();
assert!(registry.get("ahrefs").is_some());
assert!(registry.get("majestic").is_some());
assert!(registry.get("google_search_console").is_some());
let available = registry.available();
assert!(available.is_empty());
}