1
0
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:
2020-06-27 18:28:38 +02:00
parent c28196f80e
commit 926892a29b
3 changed files with 60 additions and 6 deletions

View File

@ -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);
}
}