Search in sources :

Example 21 with Group

use of org.olat.basesecurity.Group in project OpenOLAT by OpenOLAT.

the class GroupDAOTest method countMembers.

@Test
public void countMembers() {
    Identity id1 = JunitTestHelper.createAndPersistIdentityAsRndUser("bgrp-4-");
    Identity id2 = JunitTestHelper.createAndPersistIdentityAsRndUser("bgrp-5-");
    Identity id3 = JunitTestHelper.createAndPersistIdentityAsRndUser("bgrp-6-");
    Group group = groupDao.createGroup();
    GroupMembership membership1 = groupDao.addMembershipTwoWay(group, id1, "pilot");
    GroupMembership membership2 = groupDao.addMembershipTwoWay(group, id2, "pilot");
    GroupMembership membership3 = groupDao.addMembershipTwoWay(group, id3, "copilot");
    dbInstance.commit();
    Assert.assertNotNull(membership1);
    Assert.assertNotNull(membership2);
    Assert.assertNotNull(membership3);
    dbInstance.commitAndCloseSession();
    int numOfMembers = groupDao.countMembers(group);
    Assert.assertEquals(3, numOfMembers);
}
Also used : Group(org.olat.basesecurity.Group) GroupMembership(org.olat.basesecurity.GroupMembership) Identity(org.olat.core.id.Identity) Test(org.junit.Test)

Example 22 with Group

use of org.olat.basesecurity.Group in project OpenOLAT by OpenOLAT.

the class GroupDAOTest method addRemoveGrants.

@Test
public void addRemoveGrants() {
    Identity id = JunitTestHelper.createAndPersistIdentityAsRndUser("addremove-1-");
    Group group = groupDao.createGroup();
    groupDao.addMembershipTwoWay(group, id, "addremove-1");
    groupDao.addMembershipTwoWay(group, id, "addremove-2");
    OLATResource resource = JunitTestHelper.createRandomResource();
    groupDao.addGrant(group, "addremove-1", "addremove-1-perm", resource);
    groupDao.addGrant(group, "addremove-1", "addremove-11-perm", resource);
    groupDao.addGrant(group, "addremove-2", "addremove-2-perm", resource);
    groupDao.addGrant(group, "addremove-2", "addremove-22-perm", resource);
    dbInstance.commitAndCloseSession();
    // setup check
    boolean hasPerm1 = groupDao.hasGrant(id, "addremove-1-perm", resource);
    Assert.assertTrue(hasPerm1);
    boolean hasPerm11 = groupDao.hasGrant(id, "addremove-11-perm", resource);
    Assert.assertTrue(hasPerm11);
    boolean hasPerm2 = groupDao.hasGrant(id, "addremove-2-perm", resource);
    Assert.assertTrue(hasPerm2);
    boolean hasPerm22 = groupDao.hasGrant(id, "addremove-22-perm", resource);
    Assert.assertTrue(hasPerm22);
    // remove perm 1
    groupDao.removeGrants(group, "addremove-1", resource);
    dbInstance.commitAndCloseSession();
    // check
    boolean hasStillPerm1 = groupDao.hasGrant(id, "addremove-1-perm", resource);
    Assert.assertFalse(hasStillPerm1);
    boolean hasStillPerm11 = groupDao.hasGrant(id, "addremove-11-perm", resource);
    Assert.assertFalse(hasStillPerm11);
    boolean hasStillPerm2 = groupDao.hasGrant(id, "addremove-2-perm", resource);
    Assert.assertTrue(hasStillPerm2);
    boolean hasStillPerm22 = groupDao.hasGrant(id, "addremove-22-perm", resource);
    Assert.assertTrue(hasStillPerm22);
}
Also used : Group(org.olat.basesecurity.Group) OLATResource(org.olat.resource.OLATResource) Identity(org.olat.core.id.Identity) Test(org.junit.Test)

Example 23 with Group

use of org.olat.basesecurity.Group in project OpenOLAT by OpenOLAT.

the class GroupDAOTest method addGrant.

@Test
public void addGrant() {
    Group group = groupDao.createGroup();
    OLATResource resource = JunitTestHelper.createRandomResource();
    groupDao.addGrant(group, "grant-role", "read-only", resource);
    dbInstance.commitAndCloseSession();
}
Also used : Group(org.olat.basesecurity.Group) OLATResource(org.olat.resource.OLATResource) Test(org.junit.Test)

Example 24 with Group

use of org.olat.basesecurity.Group in project OpenOLAT by OpenOLAT.

the class RepositoryServiceImpl method deleteRepositoryEntryAndBaseGroups.

/**
 * @param entry
 */
@Override
public void deleteRepositoryEntryAndBaseGroups(RepositoryEntry entry) {
    RepositoryEntry reloadedEntry = dbInstance.getCurrentEntityManager().getReference(RepositoryEntry.class, entry.getKey());
    Long resourceKey = reloadedEntry.getOlatResource().getKey();
    Group defaultGroup = reToGroupDao.getDefaultGroup(reloadedEntry);
    if (defaultGroup != null) {
        groupDao.removeMemberships(defaultGroup);
    }
    reToGroupDao.removeRelations(reloadedEntry);
    dbInstance.commit();
    dbInstance.getCurrentEntityManager().remove(reloadedEntry);
    if (defaultGroup != null) {
        groupDao.removeGroup(defaultGroup);
    }
    dbInstance.commit();
    OLATResource reloadedResource = resourceManager.findResourceById(resourceKey);
    if (reloadedResource != null) {
        dbInstance.getCurrentEntityManager().remove(reloadedResource);
    }
    dbInstance.commit();
}
Also used : Group(org.olat.basesecurity.Group) OLATResource(org.olat.resource.OLATResource) RepositoryEntry(org.olat.repository.RepositoryEntry)

Example 25 with Group

use of org.olat.basesecurity.Group in project OpenOLAT by OpenOLAT.

the class BusinessGroupDAOTest method loadBusinessGroup_fetch.

@Test
public void loadBusinessGroup_fetch() {
    // create business group
    BusinessGroup group = businessGroupDao.createAndPersist(null, "gd-fetch", "gd-fetch-desc", 0, 10, true, true, false, false, false);
    dbInstance.commitAndCloseSession();
    BusinessGroup reloadedGroup = businessGroupDao.load(group.getKey());
    Assert.assertNotNull(reloadedGroup);
    dbInstance.commitAndCloseSession();
    // check lazy
    Group baseGroup = reloadedGroup.getBaseGroup();
    Assert.assertNotNull(baseGroup);
    Assert.assertNotNull(baseGroup.getKey());
    OLATResource resource = reloadedGroup.getResource();
    Assert.assertNotNull(resource);
    Assert.assertNotNull(resource.getKey());
}
Also used : Group(org.olat.basesecurity.Group) BusinessGroup(org.olat.group.BusinessGroup) BusinessGroup(org.olat.group.BusinessGroup) OLATResource(org.olat.resource.OLATResource) Test(org.junit.Test)

Aggregations

Group (org.olat.basesecurity.Group)170 Test (org.junit.Test)92 Identity (org.olat.core.id.Identity)80 BusinessGroup (org.olat.group.BusinessGroup)72 RepositoryEntry (org.olat.repository.RepositoryEntry)46 ArrayList (java.util.ArrayList)28 GroupMembership (org.olat.basesecurity.GroupMembership)26 LectureBlock (org.olat.modules.lecture.LectureBlock)26 OLATResource (org.olat.resource.OLATResource)26 LectureBlockToGroup (org.olat.modules.lecture.LectureBlockToGroup)20 Date (java.util.Date)16 SecurityGroup (org.olat.basesecurity.SecurityGroup)16 EPStructureElementToGroupRelation (org.olat.portfolio.model.structel.EPStructureElementToGroupRelation)14 HashSet (java.util.HashSet)12 RepositoryEntryToGroupRelation (org.olat.repository.model.RepositoryEntryToGroupRelation)11 HashMap (java.util.HashMap)8 Grant (org.olat.basesecurity.Grant)8 Calendar (java.util.Calendar)6 EPStructuredMapTemplate (org.olat.portfolio.model.structel.EPStructuredMapTemplate)6 BGRights (org.olat.group.right.BGRights)5