コード例 #1
0
  @Before
  public void setUp() throws Exception {

    manager = new MockBackingRepositoryLifecycleManager(new MockSecurityHelper());
    repo = context.mock(IUnifiedRepository.class);

    booter = new MicroPlatform("test-res/solution1");
    booter.define(IPasswordService.class, Base64PasswordService.class, Scope.GLOBAL);
    booter.define(IDatabaseConnection.class, DatabaseConnection.class, Scope.GLOBAL);
    booter.define(IDatabaseDialectService.class, DatabaseDialectService.class, Scope.GLOBAL);
    booter.define(IMondrianCatalogService.class, MondrianCatalogHelper.class, Scope.GLOBAL);
    booter.define(ICacheManager.class, CacheManager.class, Scope.GLOBAL);
    booter.defineInstance(IUserRoleListService.class, context.mock(IUserRoleListService.class));
    final IAuthorizationPolicy policy = context.mock(IAuthorizationPolicy.class);
    booter.defineInstance(IAuthorizationPolicy.class, policy);
    booter.defineInstance(IUnifiedRepository.class, repo);
    booter.setSettingsProvider(new SystemSettings());
    booter.start();

    context.checking(
        new Expectations() {
          {
            oneOf(policy);
            will(returnValue(false));
            oneOf(policy);
            will(returnValue(false));
            oneOf(policy);
            will(returnValue(false));
          }
        });

    PentahoSessionHolder.setStrategyName(PentahoSessionHolder.MODE_GLOBAL);
    SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);
  }
 @BeforeClass
 public static void beforeClass() throws Exception {
   System.setProperty(SYSTEM_PROPERTY, "MODE_GLOBAL");
   PentahoSessionHolder.setStrategyName(PentahoSessionHolder.MODE_GLOBAL);
   FileUtils.deleteDirectory(new File("/tmp/jackrabbit-test-TRUNK"));
   SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);
 }
コード例 #3
0
  @BeforeClass
  public static void beforeClass() throws Exception {
    //    BasicConfigurator.configure();
    System.setProperty(SYSTEM_PROPERTY, "MODE_GLOBAL");
    Logger.getLogger("org").setLevel(Level.WARN);
    Logger.getLogger("org.pentaho").setLevel(Level.WARN);
    Logger.getLogger(RepositoryResource.class).setLevel(Level.DEBUG);
    //    Logger.getLogger(RequestProxy.class).setLevel(Level.DEBUG);
    Logger.getLogger("MIME_TYPE").setLevel(Level.TRACE);

    PentahoSessionHolder.setStrategyName(PentahoSessionHolder.MODE_GLOBAL);

    FileUtils.deleteDirectory(new File("/tmp/jackrabbit-test-TRUNK"));
    SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);
  }
コード例 #4
0
  @Before
  public void beforeTest() throws PlatformInitializationException {
    mp = new MicroPlatform();
    // used by DefaultPentahoJackrabbitAccessControlHelper
    mp.defineInstance(IAuthorizationPolicy.class, authorizationPolicy);
    mp.defineInstance(ITenantManager.class, tenantManager);
    mp.define(ITenant.class, Tenant.class);
    mp.defineInstance("roleAuthorizationPolicyRoleBindingDaoTarget", roleBindingDaoTarget);
    mp.defineInstance(IRoleAuthorizationPolicyRoleBindingDao.class, roleBindingDaoTarget);
    mp.defineInstance("tenantedUserNameUtils", tenantedUserNameUtils);
    mp.defineInstance("tenantedRoleNameUtils", tenantedRoleNameUtils);
    mp.defineInstance("repositoryAdminUsername", repositoryAdminUsername);
    mp.define(
        IRoleAuthorizationPolicyRoleBindingDao.class, RoleAuthorizationPolicy.class, Scope.GLOBAL);
    mp.define(ITenantManager.class, RepositoryTenantManager.class, Scope.GLOBAL);
    mp.defineInstance("singleTenantAdminAuthorityName", new String("Administrator"));
    mp.defineInstance(
        "RepositoryFileProxyFactory",
        new RepositoryFileProxyFactory(this.testJcrTemplate, this.repositoryFileDao));

    UserRoleDaoUserDetailsService userDetailsService = new UserRoleDaoUserDetailsService();
    userDetailsService.setUserRoleDao(userRoleDao);
    List<String> systemRoles = new ArrayList<String>();
    systemRoles.add("Admin");
    List<String> extraRoles = Arrays.asList(new String[] {"Authenticated", "Anonymous"});
    String adminRole = "Admin";

    userRoleListService =
        new UserRoleDaoUserRoleListService(
            userRoleDao,
            userDetailsService,
            tenantedUserNameUtils,
            systemRoles,
            extraRoles,
            adminRole);
    ((UserRoleDaoUserRoleListService) userRoleListService).setUserRoleDao(userRoleDao);
    ((UserRoleDaoUserRoleListService) userRoleListService)
        .setUserDetailsService(userDetailsService);

    mp.defineInstance(IUserRoleListService.class, userRoleListService);
    mp.start();
    logout();
    startupCalled = true;
    SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);
  }
コード例 #5
0
 @AfterClass
 public static void afterClass() {
   PentahoSessionHolder.setStrategyName(PentahoSessionHolder.MODE_GLOBAL);
   SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);
 }
コード例 #6
0
  @BeforeClass
  public static void setUp() throws Exception {
    System.setProperty(
        "org.osjava.sj.root", "test-res/solution1/system/simple-jndi"); // $NON-NLS-1$ //$NON-NLS-2$
    mp = new MicroPlatform("test-res/solution1");

    IAuthorizationPolicy mockAuthorizationPolicy = mock(IAuthorizationPolicy.class);
    when(mockAuthorizationPolicy.isAllowed(anyString())).thenReturn(true);

    IUserRoleListService mockUserRoleListService = mock(IUserRoleListService.class);

    IDataAccessPermissionHandler mockDataAccessPermHandler =
        mock(IDataAccessPermissionHandler.class);
    when(mockDataAccessPermHandler.hasDataAccessPermission(any(IPentahoSession.class)))
        .thenReturn(true);

    mp.define(
        ISolutionEngine.class, SolutionEngine.class, IPentahoDefinableObjectFactory.Scope.GLOBAL);
    mp.define(
        IUnifiedRepository.class,
        TestFileSystemBackedUnifiedRepository.class,
        IPentahoDefinableObjectFactory.Scope.GLOBAL);
    mp.define(
        IMondrianCatalogService.class,
        MondrianCatalogHelper.class,
        IPentahoDefinableObjectFactory.Scope.GLOBAL);
    mp.define("connection-SQL", SQLConnection.class);
    mp.define("connection-MDX", MDXConnection.class);
    mp.define("connection-MDXOlap4j", MDXOlap4jConnection.class);
    mp.define(
        IDBDatasourceService.class,
        JndiDatasourceService.class,
        IPentahoDefinableObjectFactory.Scope.GLOBAL);
    mp.define(
        MDXConnection.MDX_CONNECTION_MAPPER_KEY,
        MondrianOneToOneUserRoleListMapper.class,
        IPentahoDefinableObjectFactory.Scope.GLOBAL);
    mp.define(IDatasourceMgmtService.class, MockDatasourceMgmtService.class);
    mp.define(IClientRepositoryPathsStrategy.class, MockClientRepositoryPathsStrategy.class);
    mp.define(ISecurityHelper.class, MockSecurityHelper.class);
    mp.define(UserDetailsService.class, MockUserDetailService.class);
    mp.define("singleTenantAdminUserName", "admin");
    mp.defineInstance(IMetadataDomainRepository.class, createMetadataDomainRepository());
    mp.defineInstance(IAuthorizationPolicy.class, mockAuthorizationPolicy);
    mp.defineInstance(
        IPluginResourceLoader.class,
        new PluginResourceLoader() {
          protected PluginClassLoader getOverrideClassloader() {
            return new PluginClassLoader(
                new File(".", "test-res/solution1/system/simple-jndi"), this);
          }
        });
    mp.defineInstance(IUserRoleListService.class, mockUserRoleListService);
    mp.defineInstance(IDataAccessPermissionHandler.class, mockDataAccessPermHandler);

    mp.setSettingsProvider(new SystemSettings());
    mp.start();

    PentahoSessionHolder.setStrategyName(PentahoSessionHolder.MODE_GLOBAL);
    SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);
  }