chorus/tests/member.rs

39 lines
1.1 KiB
Rust

mod common;
#[tokio::test]
async fn add_remove_role() {
let mut bundle = common::setup().await;
let guild_id = &bundle.guild.id.to_string();
let role_id = &bundle.role.id.to_string();
let user_id = &bundle.user.object.id.to_string();
chorus::types::GuildMember::add_role(&mut bundle.user, guild_id, user_id, role_id).await;
let member = chorus::types::GuildMember::get(&mut bundle.user, guild_id, user_id)
.await
.unwrap();
let mut role_found = false;
for role in member.roles.iter() {
if role == role_id {
println!("Role found: {:?}", role);
role_found = true;
}
}
if !role_found {
assert!(false)
}
chorus::types::GuildMember::remove_role(&mut bundle.user, guild_id, user_id, role_id).await;
let member = chorus::types::GuildMember::get(&mut bundle.user, guild_id, user_id)
.await
.unwrap();
for role in member.roles.iter() {
if role != role_id {
role_found = false;
} else {
assert!(false);
}
}
if role_found {
assert!(false)
}
common::teardown(bundle).await
}