use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Provider {
pub key: String,
pub operator: String,
pub company: String,
pub value: String,
#[serde(rename = "istop")]
pub is_top: i64,
#[serde(rename = "hasPlans")]
pub has_plans: i64,
}
#[cfg(test)]
mod tests {
use crate::client::BbmClient;
const TESTING_PROVIDER_IDS: &[i64] = &[1, 7, 10, 11, 244, 251, 330, 416, 709];
#[tokio::test]
#[ignore] async fn test_get_providers() {
let client = BbmClient::new();
crate::testutil::assert_graceful(client.get_providers().await, |providers| {
assert!(!providers.is_empty());
});
}
#[tokio::test]
#[ignore] async fn test_get_provider_by_id() {
let client = BbmClient::new();
for &id in TESTING_PROVIDER_IDS {
crate::testutil::assert_graceful(client.get_provider_by_id(id).await, |provider| {
assert_eq!(provider.key, id.to_string());
});
}
}
}