mwapi_responses 0.5.1

Automatically generate strict types for MediaWiki API responses
Documentation
// Autogenerated by gen_tests.py
use mwapi_responses::prelude::*;

mod test_client;

#[query(action = "query", list = "globalblocks", bgprop = "by")]
struct Response0;

#[tokio::test]
async fn query_globalblocks_by() {
    let params = Response0::params();

    let resp: Response0 = test_client::test(params).await.unwrap();
    assert_eq!(resp.items().len(), 10);
    assert!(!resp.continue_.is_empty());
}

#[query(action = "query", list = "globalblocks", bgprop = "expiry")]
struct Response1;

#[tokio::test]
async fn query_globalblocks_expiry() {
    let params = Response1::params();

    let resp: Response1 = test_client::test(params).await.unwrap();
    assert_eq!(resp.items().len(), 10);
    assert!(!resp.continue_.is_empty());
}

#[query(action = "query", list = "globalblocks", bgprop = "id")]
struct Response2;

#[tokio::test]
async fn query_globalblocks_id() {
    let params = Response2::params();

    let resp: Response2 = test_client::test(params).await.unwrap();
    assert_eq!(resp.items().len(), 10);
    assert!(!resp.continue_.is_empty());
}

#[query(action = "query", list = "globalblocks", bgprop = "range")]
struct Response3;

#[tokio::test]
async fn query_globalblocks_range() {
    let params = Response3::params();

    let resp: Response3 = test_client::test(params).await.unwrap();
    assert_eq!(resp.items().len(), 10);
    assert!(!resp.continue_.is_empty());
}

#[query(action = "query", list = "globalblocks", bgprop = "reason")]
struct Response4;

#[tokio::test]
async fn query_globalblocks_reason() {
    let params = Response4::params();

    let resp: Response4 = test_client::test(params).await.unwrap();
    assert_eq!(resp.items().len(), 10);
    assert!(!resp.continue_.is_empty());
}

#[query(action = "query", list = "globalblocks", bgprop = "target")]
struct Response5;

#[tokio::test]
async fn query_globalblocks_target() {
    let params = Response5::params();

    let resp: Response5 = test_client::test(params).await.unwrap();
    assert_eq!(resp.items().len(), 10);
    assert!(!resp.continue_.is_empty());
}

#[query(action = "query", list = "globalblocks", bgprop = "timestamp")]
struct Response6;

#[tokio::test]
async fn query_globalblocks_timestamp() {
    let params = Response6::params();

    let resp: Response6 = test_client::test(params).await.unwrap();
    assert_eq!(resp.items().len(), 10);
    assert!(!resp.continue_.is_empty());
}