Пример #1
0
  protected Fixture createFixture(File ctxFile) throws Exception {
    Fixture fixture = new Fixture();
    fixture.ctx = new FileSystemXmlApplicationContext("file:" + ctxFile.getAbsolutePath());
    fixture.config = (LdapConfig) fixture.ctx.getBean("config");

    Map<String, LdapContextSource> sources = fixture.ctx.getBeansOfType(LdapContextSource.class);

    LdapContextSource source = sources.values().iterator().next();
    String[] urls = source.getUrls();
    assertEquals(1, urls.length);

    fixture.template = new LdapTemplate(source);

    fixture.role = mock(RoleProvider.class);
    RoleProvider provider = (RoleProvider) fixture.role.proxy();

    fixture.sql = mock(SqlAction.class);
    SqlAction sql = (SqlAction) fixture.sql.proxy();

    fixture.queryMock = mock(LocalQuery.class);
    fixture.query = (LocalQuery) fixture.queryMock.proxy();
    fixture.queryMock.expects(once()).method("findByString").will(returnValue(null));

    fixture.ldap =
        new LdapImpl(source, fixture.template, new Roles(), fixture.config, provider, sql);
    fixture.ldap.setQueryService(fixture.query);

    fixture.provider = new LdapPasswordProvider(new PasswordUtil(sql), fixture.ldap);

    return fixture;
  }