Changeset 6058

Show
Ignore:
Timestamp:
02/09/10 11:24:45 (6 months ago)
Author:
jmoore
Message:

ticket:1776 - Adding check for identical permissions in group filter in OmeroInterceptor

Location:
trunk/components
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • trunk/components/server/src/ome/security/basic/OmeroInterceptor.java

    r6057 r6058  
    769769 
    770770            // see https://trac.openmicroscopy.org.uk/omero/ticket/1434 
    771             if (obj instanceof ExperimenterGroup) { 
     771            if (!currentP.identical(tmpPreviousP) && 
     772                    obj instanceof ExperimenterGroup) { 
    772773                throw new GroupSecurityViolation( 
    773774                        "Group permissions must be changed via IAdmin"); 
  • trunk/components/server/test/ome/server/itests/perms42/SetGroupPermissionsTest.java

    r6056 r6058  
    125125    } 
    126126 
     127    @Test 
     128    public void testCopiedFromPython() throws Exception { 
     129         
     130        loginRoot(); 
     131         
     132        String uuid = iAdmin.getEventContext().getCurrentSessionUuid(); 
     133        ExperimenterGroup new_gr1 = new ExperimenterGroup(); 
     134        new_gr1.setName("group1_"+uuid); 
     135        Permissions p = Permissions.OPEN; 
     136        new_gr1.getDetails().setPermissions(p); 
     137        long g1_id = iAdmin.createGroup(new_gr1); 
     138             
     139        //  update name of group1 
     140        ExperimenterGroup gr1 = iAdmin.getGroup(g1_id); 
     141        assertEquals("rwrw--", gr1.getDetails().getPermissions().toString()); 
     142        String new_name = "changed_name_group1_" + uuid; 
     143        gr1.setName(new_name); 
     144        iAdmin.updateGroup(gr1); 
     145        ExperimenterGroup gr1_u = iAdmin.getGroup(g1_id); 
     146        assertEquals(new_name, gr1_u.getName()); 
     147    } 
    127148} 
  • trunk/components/tools/OmeroPy/test/integration/permissions.py

    r6055 r6058  
    4646        # update name of group1 
    4747        gr1 = admin.getGroup(g1_id) 
    48         self.assertEquals('rw----', str(gr1.details.permissions))  
     48        self.assertEquals('rw----', str(gr1.details.permissions)) 
    4949        new_name = "changed_name_group1_%s" % uuid 
    5050        gr1.name = rstring(new_name) 
    51         admin.updateGroup(gr1)         
     51        admin.updateGroup(gr1) 
    5252        gr1_u = admin.getGroup(g1_id) 
    5353        self.assertEquals(new_name, gr1_u.name.val) 
     
    7676        # update name of group1 
    7777        gr1 = admin.getGroup(g1_id) 
    78         self.assertEquals('rwr---', str(gr1.details.permissions))  
     78        self.assertEquals('rwr---', str(gr1.details.permissions)) 
    7979        new_name = "changed_name_group1_%s" % uuid 
    8080        gr1.name = rstring(new_name) 
    81         admin.updateGroup(gr1)         
     81        admin.updateGroup(gr1) 
    8282        gr1_u = admin.getGroup(g1_id) 
    8383        self.assertEquals(new_name, gr1_u.name.val) 
     
    106106        # update name of group1 
    107107        gr1 = admin.getGroup(g1_id) 
    108         self.assertEquals('rwrw--', str(gr1.details.permissions))  
     108        self.assertEquals('rwrw--', str(gr1.details.permissions)) 
    109109        new_name = "changed_name_group1_%s" % uuid 
    110110        gr1.name = rstring(new_name) 
    111         admin.updateGroup(gr1)         
     111        admin.updateGroup(gr1) 
    112112        gr1_u = admin.getGroup(g1_id) 
    113113        self.assertEquals(new_name, gr1_u.name.val) 
    114      
     114 
    115115    def testCreatGroupAndchangePermissions(self): 
    116116        # this is the test of updating group permissions 
     
    190190        defaultGroup = admin.lookupGroup("default") 
    191191        listOfGroups = list() 
    192         listOfGroups.append(admin.lookupGroup("user"))         
     192        listOfGroups.append(admin.lookupGroup("user")) 
    193193        eid1 = admin.createExperimenterWithPassword(new_exp1, rstring("ome"), defaultGroup, listOfGroups) 
    194         exp1 = getExperimenter(eid) 
     194        exp1 = admin.getExperimenter(eid1) 
    195195         
    196196        #set owner of the group (user is not a member of) 
    197         admin_serv.addGroupOwners(gr1, [exp1]) 
     197        admin.addGroupOwners(gr1, [exp1]) 
    198198        # chech if is the leader 
    199         isLeader() ???     
    200          
     199        ec = admin.getEventContext() 
     200        self.assertTrue(gr1.id.val in ec.leaderOfGroups()) 
     201 
    201202        # remove group owner 
    202         admin_serv.removeGroupOwners(gr1, [exp1]) 
     203        admin.removeGroupOwners(gr1, [exp1]) 
    203204        # chech if no longer is the leader 
    204         isLeader() ??? 
     205        self.assertFalse(gr1.id.val in ec.leaderOfGroups()) 
    205206 
    206207        ''' 

1.2.1-PRO © 2008-2009 agile42 all rights reserved (this page was served in: 0.123408 sec.)