// Copyright 2004-2014 Jim Voris // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // // $FilePath$ // $Date: Wednesday, March 21, 2012 10:31:06 PM $ // $Header: RoleManagerTest.java Revision:1.3 Wednesday, March 21, 2012 10:31:06 PM JimVoris $ // $Copyright � 2011-2012 Define this string in the qvcs.keywords.properties property file $ package com.qumasoft.server; import com.qumasoft.TestHelper; import java.util.concurrent.atomic.AtomicReference; import org.junit.AfterClass; import static org.junit.Assert.*; import org.junit.BeforeClass; import org.junit.Test; /** * * @author JimVoris */ public class RoleManagerTest { @BeforeClass public static void setUpClass() throws Exception { } @AfterClass public static void tearDownClass() throws Exception { } /** * Test of getRoleManager method, of class com.qumasoft.server.RoleManager. */ @Test public void testGetRoleManager() { System.out.println("testGetRoleManager"); // Add your test code below by replacing the default call to fail. RoleManager roleManager = RoleManager.getRoleManager(); if (roleManager == null) { fail("Failed getRoleManager()."); } } /** * Test of initialize method, of class com.qumasoft.server.RoleManager. */ @Test public void testInitialize() { System.out.println("testInitialize"); // Add your test code below by replacing the default call to fail. if (RoleManager.getRoleManager().initialize() != true) { fail("Failed initialize()"); } } /** * Test of writeRoleStore method, of class com.qumasoft.server.RoleManager. */ @Test public void testWriteRoleStore() { System.out.println("testWriteRoleStore"); // Add your test code below by replacing the default call to fail. RoleManager.getRoleManager().writeRoleStore(); } /** * Test of isUserInRole method, of class com.qumasoft.server.RoleManager. */ @Test public void testAddUserRole() { System.out.println("testIsUserInRole"); boolean testResult = false; com.qumasoft.qvcslib.RoleType adminRole = RoleManager.ADMIN_ROLE; String adminRoleType = adminRole.toString(); RolePrivilegesManager.getInstance().initialize(); if (RoleManager.getRoleManager().addUserRole(adminRoleType, TestHelper.getTestProjectName(), "JoeSmith", RoleManager.PROJECT_ADMIN_ROLE)) { AtomicReference<String> information = new AtomicReference<String>(); if (RolePrivilegesManager.getInstance().isUserPrivileged(TestHelper.getTestProjectName(), "JoeSmith", RolePrivilegesManager.ADD_DIRECTORY, information)) { if (RoleManager.getRoleManager().addUserRole("JoeSmith", TestHelper.getTestProjectName(), "JaneSmith", RoleManager.READER_ROLE)) { if (RolePrivilegesManager.getInstance().isUserPrivileged(TestHelper.getTestProjectName(), "JaneSmith", RolePrivilegesManager.GET, information)) { if (RoleManager.getRoleManager().addUserRole("JoeSmith", TestHelper.getTestProjectName(), "JeffSmith", RoleManager.WRITER_ROLE)) { if (RolePrivilegesManager.getInstance().isUserPrivileged(TestHelper.getTestProjectName(), "JeffSmith", RolePrivilegesManager.CHECK_IN, information)) { if (RoleManager.getRoleManager().addUserRole(adminRoleType, TestHelper.getTestProjectName(), "JoeAdmin", RoleManager.PROJECT_ADMIN_ROLE)) { if (RoleManager.getRoleManager().addUserRole("JoeAdmin", TestHelper.getTestProjectName(), "RalphSmith", RoleManager.READER_ROLE)) { if (RoleManager.getRoleManager().addUserRole("JoeAdmin", TestHelper.getTestProjectName(), "RalphSmith", RoleManager.WRITER_ROLE)) { testResult = true; } } } } } } } } } if (testResult == false) { fail("Failed isUserInRole()"); } } /** * Test of removeUserRole method, of class com.qumasoft.server.RoleManager. */ @Test public void testRemoveUserRole() { boolean testResult = false; System.out.println("testRemoveUserRole"); testAddUserRole(); // populate the store if (RoleManager.getRoleManager().removeUserRole("JoeAdmin", TestHelper.getTestProjectName(), "RalphSmith", RoleManagerInterface.WRITER_ROLE)) { if (RoleManager.getRoleManager().removeUserRole("JoeAdmin", TestHelper.getTestProjectName(), "RalphSmith", RoleManagerInterface.READER_ROLE)) { if (RoleManager.getRoleManager().removeUserRole("JoeAdmin", TestHelper.getTestProjectName(), "JoeAdmin", RoleManagerInterface.PROJECT_ADMIN_ROLE)) { if (RoleManager.getRoleManager().removeUserRole(RoleManagerInterface.ADMIN_ROLE.getRoleType(), TestHelper.getTestProjectName(), "JeffSmith", RoleManagerInterface.WRITER_ROLE)) { if (RoleManager.getRoleManager().removeUserRole(RoleManagerInterface.ADMIN_ROLE.getRoleType(), TestHelper.getTestProjectName(), "JaneSmith", RoleManagerInterface.READER_ROLE)) { if (RoleManager.getRoleManager().removeUserRole(RoleManagerInterface.ADMIN_ROLE.getRoleType(), TestHelper.getTestProjectName(), "JoeSmith", RoleManagerInterface.PROJECT_ADMIN_ROLE)) { testResult = true; } } } } } } if (testResult == false) { fail("Failed isUserInRole()"); } } @Test public void testAddRolesForDevelopment() { System.out.println("testAddRolesForDevelopment"); RoleManager.getRoleManager().addUserRole("ADMIN", "Remote C++ Code", "JimVoris", RoleManager.PROJECT_ADMIN_ROLE); RoleManager.getRoleManager().addUserRole("ADMIN", "Remote C++ Code", "ADMIN", RoleManager.PROJECT_ADMIN_ROLE); RoleManager.getRoleManager().addUserRole("ADMIN", "Remote Crypto Code", "JimVoris", RoleManager.PROJECT_ADMIN_ROLE); RoleManager.getRoleManager().addUserRole("ADMIN", "Remote Crypto Code", "ADMIN", RoleManager.PROJECT_ADMIN_ROLE); RoleManager.getRoleManager().addUserRole("ADMIN", "Remote Secure Java Project", "JimVoris", RoleManager.PROJECT_ADMIN_ROLE); RoleManager.getRoleManager().addUserRole("ADMIN", "Remote Secure Java Project", "ADMIN", RoleManager.PROJECT_ADMIN_ROLE); RoleManager.getRoleManager().addUserRole("ADMIN", "Remote Test Project", "JimVoris", RoleManager.PROJECT_ADMIN_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Secure Java Project", "JimVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Secure Java Project", "JimVoris", RoleManager.WRITER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Secure Java Project", "BrianVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Secure Java Project", "BrianVoris", RoleManager.WRITER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Secure Java Project", "BruceVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote C++ Code", "JimVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote C++ Code", "JimVoris", RoleManager.WRITER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote C++ Code", "BruceVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Crypto Code", "JimVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Crypto Code", "JimVoris", RoleManager.WRITER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Crypto Code", "BruceVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Test Project", "JimVoris", RoleManager.READER_ROLE); RoleManager.getRoleManager().addUserRole("JimVoris", "Remote Test Project", "JimVoris", RoleManager.WRITER_ROLE); RoleManager.getRoleManager().addUserRole(TestHelper.USER_NAME, TestHelper.getTestProjectName(), TestHelper.USER_NAME, RoleManager.DEVELOPER_ROLE); } }