mirror of
https://gitlab.com/comunic/comunicapiv3
synced 2025-06-20 08:25:16 +00:00
Can delete group members
This commit is contained in:
@ -2,17 +2,21 @@
|
||||
//!
|
||||
//! @author Pierre Hubert
|
||||
|
||||
use crate::data::user::UserID;
|
||||
use crate::data::group_id::GroupID;
|
||||
use crate::data::user::UserID;
|
||||
|
||||
#[derive(PartialEq, Eq)]
|
||||
#[derive(PartialEq, Eq, PartialOrd)]
|
||||
pub enum GroupMembershipLevel {
|
||||
ADMINISTRATOR = 0,
|
||||
MODERATOR = 1,
|
||||
MEMBER = 2,
|
||||
INVITED = 3,
|
||||
PENDING = 4, //When the group membership has not been approved yet
|
||||
VISITOR = 5, //Simple visit
|
||||
|
||||
// When the group membership has not been approved yet
|
||||
PENDING = 4,
|
||||
|
||||
// Simple visit
|
||||
VISITOR = 5,
|
||||
}
|
||||
|
||||
impl GroupMembershipLevel {
|
||||
@ -34,5 +38,19 @@ pub struct GroupMember {
|
||||
pub group_id: GroupID,
|
||||
pub time_create: u64,
|
||||
pub level: GroupMembershipLevel,
|
||||
pub following: bool
|
||||
pub following: bool,
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use crate::data::group_member::GroupMembershipLevel;
|
||||
|
||||
#[test]
|
||||
fn membership_level_coherence() {
|
||||
assert!(GroupMembershipLevel::ADMINISTRATOR < GroupMembershipLevel::MODERATOR);
|
||||
assert!(GroupMembershipLevel::MODERATOR < GroupMembershipLevel::MEMBER);
|
||||
assert!(GroupMembershipLevel::MEMBER < GroupMembershipLevel::INVITED);
|
||||
assert!(GroupMembershipLevel::INVITED < GroupMembershipLevel::PENDING);
|
||||
assert!(GroupMembershipLevel::PENDING < GroupMembershipLevel::VISITOR);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user