use payabli_api::prelude::*;
mod wire_test_utils;
#[tokio::test]
#[allow(unused_variables, unreachable_code)]
async fn test_statistic_basic_stats_with_wiremock() {
wire_test_utils::reset_wiremock_requests().await.unwrap();
let wiremock_base_url = wire_test_utils::WIREMOCK_BASE_URL;
let mut config = ClientConfig {
api_key: Some("<value>".to_string()),
..Default::default()
};
config.base_url = wiremock_base_url.to_string();
let client = ApiClient::new(config).expect("Failed to build client");
let result = client
.statistic
.basic_stats(
&"ytd".to_string(),
&"m".to_string(),
1,
1000000,
&BasicStatsQueryRequest {
end_date: Some("2025-11-01".to_string()),
start_date: Some("2025-11-30".to_string()),
parameters: None,
},
None,
)
.await;
assert!(result.is_ok(), "Client method call should succeed");
wire_test_utils::verify_request_count(
"GET",
"/Statistic/basic/ytd/m/1/1000000",
Some(HashMap::from([
("endDate".to_string(), "2025-11-01".to_string()),
("startDate".to_string(), "2025-11-30".to_string()),
])),
1,
)
.await
.unwrap();
}
#[tokio::test]
#[allow(unused_variables, unreachable_code)]
async fn test_statistic_customer_basic_stats_with_wiremock() {
wire_test_utils::reset_wiremock_requests().await.unwrap();
let wiremock_base_url = wire_test_utils::WIREMOCK_BASE_URL;
let mut config = ClientConfig {
api_key: Some("<value>".to_string()),
..Default::default()
};
config.base_url = wiremock_base_url.to_string();
let client = ApiClient::new(config).expect("Failed to build client");
let result = client
.statistic
.customer_basic_stats(
&"ytd".to_string(),
&"m".to_string(),
998,
&CustomerBasicStatsQueryRequest { parameters: None },
None,
)
.await;
assert!(result.is_ok(), "Client method call should succeed");
wire_test_utils::verify_request_count("GET", "/Statistic/customerbasic/ytd/m/998", None, 1)
.await
.unwrap();
}
#[tokio::test]
#[allow(unused_variables, unreachable_code)]
async fn test_statistic_sub_stats_with_wiremock() {
wire_test_utils::reset_wiremock_requests().await.unwrap();
let wiremock_base_url = wire_test_utils::WIREMOCK_BASE_URL;
let mut config = ClientConfig {
api_key: Some("<value>".to_string()),
..Default::default()
};
config.base_url = wiremock_base_url.to_string();
let client = ApiClient::new(config).expect("Failed to build client");
let result = client
.statistic
.sub_stats(
&"30".to_string(),
1,
1000000,
&SubStatsQueryRequest { parameters: None },
None,
)
.await;
assert!(result.is_ok(), "Client method call should succeed");
wire_test_utils::verify_request_count("GET", "/Statistic/subscriptions/30/1/1000000", None, 1)
.await
.unwrap();
}
#[tokio::test]
#[allow(unused_variables, unreachable_code)]
async fn test_statistic_vendor_basic_stats_with_wiremock() {
wire_test_utils::reset_wiremock_requests().await.unwrap();
let wiremock_base_url = wire_test_utils::WIREMOCK_BASE_URL;
let mut config = ClientConfig {
api_key: Some("<value>".to_string()),
..Default::default()
};
config.base_url = wiremock_base_url.to_string();
let client = ApiClient::new(config).expect("Failed to build client");
let result = client
.statistic
.vendor_basic_stats(
&"ytd".to_string(),
&"m".to_string(),
1,
&VendorBasicStatsQueryRequest { parameters: None },
None,
)
.await;
assert!(result.is_ok(), "Client method call should succeed");
wire_test_utils::verify_request_count("GET", "/Statistic/vendorbasic/ytd/m/1", None, 1)
.await
.unwrap();
}