mirror of
https://github.com/nitnelave/lldap.git
synced 2023-04-12 14:25:13 +00:00
tests for dn filter in users and groups
This commit is contained in:
parent
aaa6b065cc
commit
398b0d79ef
@ -135,7 +135,7 @@ fn convert_group_filter(
|
||||
) {
|
||||
Ok(value) => GroupRequestFilter::DisplayName(value),
|
||||
Err(_) => {
|
||||
warn!("Invalid dn filter on user: {}", value);
|
||||
warn!("Invalid dn filter on group: {}", value);
|
||||
GroupRequestFilter::Not(Box::new(GroupRequestFilter::And(vec![])))
|
||||
}
|
||||
},
|
||||
@ -233,3 +233,48 @@ pub async fn get_groups_list<Backend: BackendHandler>(
|
||||
})
|
||||
.collect::<Vec<_>>())
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use ldap3_proto::LdapFilter;
|
||||
|
||||
use crate::domain::ldap::group::GroupRequestFilter;
|
||||
use crate::domain::ldap::utils::{parse_distinguished_name, LdapInfo};
|
||||
|
||||
use super::convert_group_filter;
|
||||
|
||||
static BASE_DN_STR: &str = "dc=example,dc=com";
|
||||
|
||||
#[test]
|
||||
fn test_convert_group_filter() {
|
||||
let ldap_info = LdapInfo {
|
||||
base_dn: parse_distinguished_name(BASE_DN_STR).unwrap(),
|
||||
base_dn_str: BASE_DN_STR.to_string(),
|
||||
ignored_user_attributes: vec![],
|
||||
ignored_group_attributes: vec![],
|
||||
};
|
||||
// TODO: test all other match cases
|
||||
let res = convert_group_filter(
|
||||
&ldap_info,
|
||||
&LdapFilter::Equality(
|
||||
"dn".to_string(),
|
||||
"uid=test,ou=groups,dc=example,dc=com".to_string(),
|
||||
),
|
||||
);
|
||||
assert_eq!(
|
||||
res,
|
||||
Ok(GroupRequestFilter::DisplayName("test".to_string().into()))
|
||||
);
|
||||
let res = convert_group_filter(
|
||||
&ldap_info,
|
||||
&LdapFilter::Equality(
|
||||
"dn".to_string(),
|
||||
"cn=test,ou=groups,dc=example,dc=com".to_string(),
|
||||
),
|
||||
);
|
||||
assert_eq!(
|
||||
res,
|
||||
Ok(GroupRequestFilter::DisplayName("test".to_string().into()))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -247,3 +247,48 @@ pub async fn get_user_list<Backend: BackendHandler>(
|
||||
})
|
||||
.collect::<Vec<_>>())
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use ldap3_proto::LdapFilter;
|
||||
|
||||
use crate::domain::ldap::user::UserRequestFilter;
|
||||
use crate::domain::ldap::utils::{parse_distinguished_name, LdapInfo};
|
||||
|
||||
use super::convert_user_filter;
|
||||
|
||||
static BASE_DN_STR: &str = "dc=example,dc=com";
|
||||
|
||||
#[test]
|
||||
fn test_convert_user_filter() {
|
||||
let ldap_info = LdapInfo {
|
||||
base_dn: parse_distinguished_name(BASE_DN_STR).unwrap(),
|
||||
base_dn_str: BASE_DN_STR.to_string(),
|
||||
ignored_user_attributes: vec![],
|
||||
ignored_group_attributes: vec![],
|
||||
};
|
||||
// TODO: test all other match cases
|
||||
let res = convert_user_filter(
|
||||
&ldap_info,
|
||||
&LdapFilter::Equality(
|
||||
"dn".to_string(),
|
||||
"uid=test,ou=people,dc=example,dc=com".to_string(),
|
||||
),
|
||||
);
|
||||
assert_eq!(
|
||||
res,
|
||||
Ok(UserRequestFilter::UserId("test".to_string().into()))
|
||||
);
|
||||
let res = convert_user_filter(
|
||||
&ldap_info,
|
||||
&LdapFilter::Equality(
|
||||
"dn".to_string(),
|
||||
"cn=test,ou=people,dc=example,dc=com".to_string(),
|
||||
),
|
||||
);
|
||||
assert_eq!(
|
||||
res,
|
||||
Ok(UserRequestFilter::UserId("test".to_string().into()))
|
||||
);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user