imports!();
new_builder!(
User,
Users
);
exec!(
User -> crate::models::User,
Users -> Vec<crate::models::User>,
);
from!(
@Users
-> User,
);
impl_client!(
-> users ["users"] -> Users,
);
impl_builder!(
@Users
-> me ["me"] -> User,
=> get [] -> User = id,
);
#[cfg(test)]
mod test {
use crate::client::test::{client, ids::*};
use crate::client::Executor;
#[tokio::test]
async fn test_user() {
let c = client();
let res = c
.users()
.get(USER_ID)
.execute()
.await
.expect("send request")
.response
.expect("api error returned");
assert_ne!(res.id, "");
}
#[tokio::test]
async fn test_users() {
let c = client();
let res = c
.users()
.execute()
.await
.expect("send request")
.response
.expect("api error returned");
assert_ne!(res.len(), 0);
let ok = res.iter().fold(true, |ok, usr| ok && usr.id != "");
assert_eq!(ok, true);
}
}