Search in sources :

Example 6 with UIRepositoryRole

use of org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole in project pentaho-kettle by pentaho.

the class UIEESecurityTest method testUpdateRole.

@Test
public void testUpdateRole() throws Exception {
    try {
        IUIRole roleToAdd = new UIRepositoryRole(new EERoleInfo());
        roleToAdd.setName("newrole");
        roleToAdd.setDescription("new description");
        Set<IUIUser> usersToAssign = new HashSet<IUIUser>();
        usersToAssign.add(new UIRepositoryUser(suzyUser));
        usersToAssign.add(new UIRepositoryUser(tiffanyUser));
        usersToAssign.add(new UIRepositoryUser(joeUser));
        roleToAdd.setUsers(usersToAssign);
        security.addRole(roleToAdd);
        security.setSelectedRole(findRole("newrole"));
        IUIRole selectedRole = security.getSelectedRole();
        selectedRole.setDescription("new description 123");
        selectedRole.addUser(new UIRepositoryUser(patUser));
        selectedRole.removeUser(new UIRepositoryUser(suzyUser));
        selectedRole.removeUser(new UIRepositoryUser(tiffanyUser));
        security.updateRole(selectedRole, usersToAssign);
        // $NON-NLS-1$
        assertEquals(selectedRole.getDescription(), "new description 123");
        assertEquals(security.getSelectedRole(), selectedRole);
        assertEquals(security.getRoleList().size(), 9);
    } catch (Exception e) {
        Assert.fail();
    }
}
Also used : UIRepositoryRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole) IUIUser(org.pentaho.di.ui.repository.repositoryexplorer.model.IUIUser) EERoleInfo(org.pentaho.di.repository.pur.model.EERoleInfo) UIRepositoryUser(org.pentaho.di.ui.repository.repositoryexplorer.model.UIRepositoryUser) IUIRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole) HashSet(java.util.HashSet) Test(org.junit.Test)

Example 7 with UIRepositoryRole

use of org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole in project pentaho-kettle by pentaho.

the class UIEESecurityTest method testAddUser.

@Test
public void testAddUser() throws Exception {
    try {
        security.setSelectedDeck(ObjectRecipient.Type.USER);
        UIEERepositoryUser userToAdd = new UIEERepositoryUser(new EEUserInfo());
        userToAdd.setName("newuser");
        userToAdd.setPassword("newpassword");
        userToAdd.setDescription("new description");
        Set<IUIRole> rolesToAssign = new HashSet<IUIRole>();
        rolesToAssign.add(new UIRepositoryRole(ctoRole));
        rolesToAssign.add(new UIRepositoryRole(isRole));
        rolesToAssign.add(new UIRepositoryRole(adminRole));
        rolesToAssign.add(new UIRepositoryRole(authenticatedRole));
        userToAdd.setRoles(rolesToAssign);
        security.addUser(userToAdd);
        assertEquals(security.getSelectedUser(), userToAdd);
        assertEquals(security.getSelectedDeck(), ObjectRecipient.Type.USER);
        assertEquals(security.getUserList().size(), 5);
    } catch (Exception e) {
        Assert.fail();
    }
}
Also used : UIEERepositoryUser(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIEERepositoryUser) UIRepositoryRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole) EEUserInfo(org.pentaho.di.repository.pur.model.EEUserInfo) IUIRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole) HashSet(java.util.HashSet) Test(org.junit.Test)

Example 8 with UIRepositoryRole

use of org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole in project pentaho-kettle by pentaho.

the class UIEESecurityTest method testRemoveUser.

@Test
public void testRemoveUser() throws Exception {
    try {
        UIEERepositoryUser userToAdd = new UIEERepositoryUser(new EEUserInfo());
        userToAdd.setName("newuser");
        userToAdd.setPassword("newpassword");
        userToAdd.setDescription("new description");
        Set<IUIRole> rolesToAssign = new HashSet<IUIRole>();
        rolesToAssign.add(new UIRepositoryRole(ctoRole));
        rolesToAssign.add(new UIRepositoryRole(isRole));
        rolesToAssign.add(new UIRepositoryRole(adminRole));
        rolesToAssign.add(new UIRepositoryRole(authenticatedRole));
        userToAdd.setRoles(rolesToAssign);
        security.addUser(userToAdd);
        // IUIUser selectedUser = security.getSelectedUser();
        int removeUserIndex = security.getSelectedUserIndex();
        security.removeUser("newuser");
        assertEquals(security.getSelectedUserIndex(), removeUserIndex - 1);
        assertEquals(security.getUserList().size(), 4);
    } catch (Exception e) {
        Assert.fail();
    }
}
Also used : UIEERepositoryUser(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIEERepositoryUser) UIRepositoryRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole) EEUserInfo(org.pentaho.di.repository.pur.model.EEUserInfo) IUIRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole) HashSet(java.util.HashSet) Test(org.junit.Test)

Example 9 with UIRepositoryRole

use of org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole in project pentaho-kettle by pentaho.

the class UIEESecurityTest method init.

@Before
public void init() {
    roles.add(adminRole);
    roles.add(anonymousRole);
    roles.add(authenticatedRole);
    roles.add(ceoRole);
    roles.add(ctoRole);
    roles.add(devRole);
    roles.add(devmgrRole);
    roles.add(isRole);
    joeUser = new EEUserInfo("joe", "password", "joe", "joe", true);
    patUser = new EEUserInfo("pat", "password", "pat", "pat", true);
    suzyUser = new EEUserInfo("suzy", "password", "suzy", "suzy", true);
    tiffanyUser = new EEUserInfo("tiffany", "password", "tiffany", "tiffany", true);
    joeUser.addRole(roles.get(0));
    joeUser.addRole(roles.get(2));
    joeUser.addRole(roles.get(3));
    suzyUser.addRole(roles.get(2));
    suzyUser.addRole(roles.get(4));
    suzyUser.addRole(roles.get(7));
    patUser.addRole(roles.get(2));
    patUser.addRole(roles.get(5));
    tiffanyUser.addRole(roles.get(2));
    tiffanyUser.addRole(roles.get(5));
    tiffanyUser.addRole(roles.get(6));
    adminRole.addUser(joeUser);
    adminRole.addUser(patUser);
    anonymousRole.addUser(tiffanyUser);
    authenticatedRole.addUser(joeUser);
    authenticatedRole.addUser(patUser);
    authenticatedRole.addUser(suzyUser);
    authenticatedRole.addUser(tiffanyUser);
    ceoRole.addUser(joeUser);
    ctoRole.addUser(patUser);
    devmgrRole.addUser(joeUser);
    devmgrRole.addUser(patUser);
    isRole.addUser(joeUser);
    isRole.addUser(suzyUser);
    users.add(joeUser);
    users.add(patUser);
    users.add(suzyUser);
    users.add(tiffanyUser);
    rroles = new ArrayList<IUIRole>();
    for (IRole EERoleInfo : roles) {
        IUIRole role = new UIRepositoryRole(EERoleInfo);
        rroles.add(role);
    }
    rusers = new ArrayList<IUIUser>();
    for (IUser eEUserInfo : users) {
        rusers.add(new UIRepositoryUser(eEUserInfo));
    }
    security.setUserList(rusers);
    security.setRoleList(rroles);
}
Also used : IUIRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole) IRole(org.pentaho.di.repository.pur.model.IRole) UIRepositoryRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole) IUIUser(org.pentaho.di.ui.repository.repositoryexplorer.model.IUIUser) EEUserInfo(org.pentaho.di.repository.pur.model.EEUserInfo) IUIUser(org.pentaho.di.ui.repository.repositoryexplorer.model.IUIUser) IUser(org.pentaho.di.repository.IUser) UIRepositoryUser(org.pentaho.di.ui.repository.repositoryexplorer.model.UIRepositoryUser) IUIRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole) Before(org.junit.Before)

Example 10 with UIRepositoryRole

use of org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole in project pentaho-kettle by pentaho.

the class UIEESecurityUserTest method testEditUser.

@Test
public void testEditUser() throws Exception {
    try {
        UIEESecurityUser user = new UIEESecurityUser(sm);
        List<IUIRole> rroles = new ArrayList<IUIRole>();
        for (IRole EERoleInfo : roles) {
            rroles.add(new UIRepositoryRole(EERoleInfo));
        }
        user.setUser(new UIRepositoryUser(joeUser), rroles);
        user.setMode(Mode.EDIT);
        user.setPassword("newpassword");
        user.setDescription("new description");
        List<Object> rolesToAssign1 = new ArrayList<Object>();
        rolesToAssign1.add(new UIRepositoryRole(adminRole));
        rolesToAssign1.add(new UIRepositoryRole(authenticatedRole));
        user.assignRoles(rolesToAssign1);
        List<Object> rolesToAssign = new ArrayList<Object>();
        rolesToAssign.add(new UIRepositoryRole(ctoRole));
        rolesToAssign.add(new UIRepositoryRole(isRole));
        List<Object> rolesToUnAssign = new ArrayList<Object>();
        rolesToUnAssign.add(new UIRepositoryRole(adminRole));
        rolesToUnAssign.add(new UIRepositoryRole(authenticatedRole));
        user.assignRoles(rolesToAssign);
        user.unassignRoles(rolesToUnAssign);
        // Should have exactly 7 roles
        assertEquals(user.getMode(), Mode.EDIT);
        // $NON-NLS-1$
        assertEquals(user.getPassword(), "newpassword");
        // $NON-NLS-1$
        assertEquals(user.getDescription(), "new description");
        Assert.assertFalse(contains(user.getAssignedRoles(), new UIRepositoryRole(adminRole)));
        Assert.assertFalse(contains(user.getAssignedRoles(), new UIRepositoryRole(authenticatedRole)));
        Assert.assertTrue(contains(user.getAssignedRoles(), new UIRepositoryRole(ctoRole)));
        Assert.assertTrue(contains(user.getAssignedRoles(), new UIRepositoryRole(isRole)));
    } catch (Exception e) {
        Assert.fail();
    }
}
Also used : IUIRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole) IRole(org.pentaho.di.repository.pur.model.IRole) UIRepositoryRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole) ArrayList(java.util.ArrayList) UIRepositoryUser(org.pentaho.di.ui.repository.repositoryexplorer.model.UIRepositoryUser) IUIRole(org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole) UIEESecurityUser(org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIEESecurityUser) Test(org.junit.Test)

Aggregations

UIRepositoryRole (org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIRepositoryRole)10 Test (org.junit.Test)9 IUIRole (org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIRole)7 HashSet (java.util.HashSet)6 EEUserInfo (org.pentaho.di.repository.pur.model.EEUserInfo)6 UIEERepositoryUser (org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIEERepositoryUser)4 IUIUser (org.pentaho.di.ui.repository.repositoryexplorer.model.IUIUser)4 UIRepositoryUser (org.pentaho.di.ui.repository.repositoryexplorer.model.UIRepositoryUser)4 ArrayList (java.util.ArrayList)3 EERoleInfo (org.pentaho.di.repository.pur.model.EERoleInfo)3 IRole (org.pentaho.di.repository.pur.model.IRole)3 UIEESecurityUser (org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UIEESecurityUser)2 Before (org.junit.Before)1 IUser (org.pentaho.di.repository.IUser)1 UserInfo (org.pentaho.di.repository.UserInfo)1 IUIEEUser (org.pentaho.di.ui.repository.pur.repositoryexplorer.IUIEEUser)1 UISecurityRole (org.pentaho.di.ui.repository.pur.repositoryexplorer.model.UISecurityRole)1