use of cz.metacentrum.perun.core.api.User in project perun by CESNET.
the class FacilitiesManagerEntryIntegrationTest method getAllowedUsersWithVoAndServiceFilter.
@Test
public void getAllowedUsersWithVoAndServiceFilter() throws Exception {
System.out.println(CLASS_NAME + "getAllowedUsers");
Vo vo = setUpVo();
Resource resource = setUpResource(vo);
Service serv = new Service();
serv.setName("TestService");
perun.getServicesManager().createService(sess, serv);
perun.getResourcesManager().assignService(sess, resource, serv);
Member member = setUpMember(vo);
User user = perun.getUsersManagerBl().getUserByMember(sess, member);
Group group = setUpGroup(vo, member);
perun.getResourcesManagerBl().assignGroupToResource(sess, group, resource);
// second vo and member, assign group but no service
Vo vo2 = new Vo();
vo2.setName("FacilitiesMangerTestVo2");
vo2.setShortName("FMTVO2");
assertNotNull("unable to create VO", perun.getVosManager().createVo(sess, vo2));
Member member2 = setUpMember(vo2);
User user2 = perun.getUsersManagerBl().getUserByMember(sess, member2);
Group group2 = setUpGroup(vo2, member2);
Resource resource2 = setUpResource(vo2);
perun.getResourcesManager().assignService(sess, resource2, serv);
perun.getResourcesManagerBl().assignGroupToResource(sess, group2, resource2);
List<User> users = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo, serv);
assertTrue("our facility should have 1 allowed user", users.size() == 1);
assertTrue("our user should be between allowed on facility", users.contains(user));
List<User> users2 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, serv);
assertTrue("our facility should have 1 allowed user", users2.size() == 1);
assertTrue("our user should be between allowed on facility", users2.contains(user2));
List<User> users3 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, null, serv);
assertTrue("our facility should have 1 allowed user", users3.size() == 2);
assertTrue("our user should be between allowed on facility", users3.contains(user));
assertTrue("our user should be between allowed on facility", users3.contains(user2));
List<User> users4 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo, null);
assertTrue("our facility should have 1 allowed user", users4.size() == 1);
assertTrue("our user should be between allowed on facility", users4.contains(user));
List<User> users5 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, null);
assertTrue("our facility should have 1 allowed user", users5.size() == 1);
assertTrue("our user should be between allowed on facility", users5.contains(user2));
// remove service from resource2 to test other edge cases
perun.getResourcesManager().removeService(sess, resource2, serv);
List<User> users6 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo, serv);
assertTrue("our facility should have 1 allowed user", users6.size() == 1);
assertTrue("our user should be between allowed on facility", users6.contains(user));
List<User> users7 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, serv);
assertTrue("our user shouldn't be allowed on facility with vo filter on", users7.size() == 0);
List<User> users8 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, null, serv);
assertTrue("our facility should have 1 allowed user", users8.size() == 1);
assertTrue("our user should be between allowed on facility", users8.contains(user));
assertTrue("our user shouldn't be between allowed on facility", !users8.contains(user2));
List<User> users9 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo, null);
assertTrue("our facility should have 1 allowed user", users9.size() == 1);
assertTrue("our user should be between allowed on facility", users9.contains(user));
List<User> users10 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, null);
assertTrue("our facility should have 1 allowed user", users10.size() == 1);
assertTrue("our user should be between allowed on facility", users10.contains(user2));
// create different service to test another edge cases
Service serv2 = new Service();
serv2.setName("TestService2");
serv2 = perun.getServicesManager().createService(sess, serv2);
perun.getResourcesManager().assignService(sess, resource2, serv2);
List<User> users11 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo, serv2);
assertTrue("our facility shouldn't have allowed user with vo and service filter on", users11.size() == 0);
List<User> users12 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, serv2);
assertTrue("our facility should have 1 allowed user", users12.size() == 1);
assertTrue("our user should be between allowed on facility", users12.contains(user2));
List<User> users13 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, null, serv2);
assertTrue("our facility should have 1 allowed user", users13.size() == 1);
assertTrue("our user should be between allowed on facility", users13.contains(user2));
List<User> users14 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo, null);
assertTrue("our facility should have 1 allowed user", users14.size() == 1);
assertTrue("our user should be between allowed on facility", users14.contains(user));
List<User> users15 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, null);
assertTrue("our facility should have 1 allowed user", users15.size() == 1);
assertTrue("our user should be between allowed on facility", users15.contains(user2));
List<User> users16 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, null, null);
assertTrue("our facility should have 2 allowed users", users16.size() == 2);
assertTrue("our user should be between allowed on facility", users16.contains(user));
assertTrue("our user should be between allowed on facility", users16.contains(user2));
// disabled members shouldn't be allowed
perun.getMembersManager().setStatus(sess, member, Status.DISABLED);
List<User> users17 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, null, null);
assertTrue("our facility should have 1 allowed user", users17.size() == 1);
assertTrue("our user should be between allowed on facility", users17.contains(user2));
List<User> users18 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo, null);
assertTrue("our facility shouldn't have allowed user with vo filter on", users18.size() == 0);
List<User> users19 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, null);
assertTrue("our facility should have 1 allowed user", users19.size() == 1);
assertTrue("our user should be between allowed on facility", users19.contains(user2));
List<User> users20 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, serv);
assertTrue("our facility shouldn't have allowed user with vo and service filter on", users20.size() == 0);
List<User> users21 = perun.getFacilitiesManager().getAllowedUsers(sess, facility, vo2, serv2);
assertTrue("our facility should have 1 allowed user", users21.size() == 1);
assertTrue("our user should be between allowed on facility", users21.contains(user2));
}
use of cz.metacentrum.perun.core.api.User in project perun by CESNET.
the class FacilitiesManagerEntryIntegrationTest method removeAdmin.
@Test
public void removeAdmin() throws Exception {
System.out.println(CLASS_NAME + "removeAdmin");
final Member member = setUpMember(vo);
User u = perun.getUsersManagerBl().getUserByMember(sess, member);
final RichUser richUser = new RichUser(u, perun.getUsersManagerBl().getUserExtSources(sess, u));
facilitiesManagerEntry.addAdmin(sess, facility, u);
assertTrue(facilitiesManagerEntry.getAdmins(sess, facility).contains(u));
facilitiesManagerEntry.removeAdmin(sess, facility, u);
assertFalse(facilitiesManagerEntry.getAdmins(sess, facility).contains(u));
}
use of cz.metacentrum.perun.core.api.User in project perun by CESNET.
the class AttributesManagerEntryIntegrationTest method getResourceRequiredFacilityUserAttributesWhenResourceNotExists.
@Test(expected = ResourceNotExistsException.class)
public void getResourceRequiredFacilityUserAttributesWhenResourceNotExists() throws Exception {
System.out.println(CLASS_NAME + "getResourceRequiredFacilityUserAttributesWhenResourceNotExists");
vo = setUpVo();
member = setUpMember();
facility = setUpFacility();
User user = perun.getUsersManager().getUserByMember(sess, member);
attributesManager.getResourceRequiredAttributes(sess, new Resource(), facility, user);
// shouldn't find resource
}
use of cz.metacentrum.perun.core.api.User in project perun by CESNET.
the class AttributesManagerEntryIntegrationTest method getUserAttributeById.
@Test
public void getUserAttributeById() throws Exception {
System.out.println(CLASS_NAME + "getUserAttributeById");
vo = setUpVo();
member = setUpMember();
attributes = setUpUserAttribute();
User user = perun.getUsersManager().getUserByMember(sess, member);
attributesManager.setAttributes(sess, user, attributes);
int id = attributes.get(0).getId();
Attribute retAttr = attributesManager.getAttributeById(sess, user, id);
assertNotNull("unable to get user attribute by id", retAttr);
assertEquals("returned attribute is not same as stored", retAttr, attributes.get(0));
}
use of cz.metacentrum.perun.core.api.User in project perun by CESNET.
the class AttributesManagerEntryIntegrationTest method removeFacilityUserAttributes.
@Test
public void removeFacilityUserAttributes() throws Exception {
System.out.println(CLASS_NAME + "removeFacilityUserAttributes");
vo = setUpVo();
facility = setUpFacility();
member = setUpMember();
User user = perun.getUsersManager().getUserByMember(sess, member);
attributes = setUpFacilityUserAttribute();
attributesManager.setAttributes(sess, facility, user, attributes);
// create facility user and set attribute with value
attributesManager.removeAttributes(sess, facility, user, attributes);
// remove attributes from facility user (definition or attribute)
List<Attribute> retAttr = attributesManager.getAttributes(sess, facility, user);
assertFalse("our member-resource shouldn't have set our attribute", retAttr.contains(attributes.get(0)));
}
Aggregations