directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Lecharny (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (DIRSERVER-1784) Annotations to enable/disable schemas
Date Fri, 21 Dec 2012 22:47:12 GMT

     [ https://issues.apache.org/jira/browse/DIRSERVER-1784?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Emmanuel Lecharny resolved DIRSERVER-1784.
------------------------------------------

    Resolution: Fixed

Added with http://svn.apache.org/viewvc?rev=1425172&view=rev

One can add the @LoadSchemas annotation like :
    @CreateDS(
        name = "MethodDSWithPartition",
        partitions =
            {
        },
        loadedSchemas =
            {
                @LoadSchema(name = "nis", enabled = true),
                @LoadSchema(name = "posix", enabled = false)
        }
        )
        public void testCreateMethodDSWithPartition() throws Exception
...
                
> Annotations to enable/disable schemas
> -------------------------------------
>
>                 Key: DIRSERVER-1784
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1784
>             Project: Directory ApacheDS
>          Issue Type: Bug
>    Affects Versions: 2.0.0-M8
>            Reporter: Anthony Dahanne
>            Priority: Minor
>              Labels: test
>
> There is no annotations to enable/disable schemas in integration tests; it would be convenient
to have :
> {code}
> @EnableSchema( <list of schema to enable> ) and
> @DisableSchema( <List of schema to disable> )
> {code}
> As a workaround, we can use :
> {code}
>        @Before
>         public void enableNis() throws Exception  {
>             connection = IntegrationUtils.getAdminConnection(getService() );
>             Entry nisEntry = connection.lookup( "cn=nis,ou=schema" );
>             boolean isNisDisabled = nisEntry.contains( "m-disabled","TRUE" );
>             // if nis is disabled then enable it
>             if ( isNisDisabled )  {
>                 connection.modify( "cn=nis,ou=schema", new DefaultModification(ModificationOperation.REMOVE_ATTRIBUTE,"m-disabled",
"TRUE" ) );
>             }
>         }
> {code}
> or, even :
> {code}
> @Before
>  // simplest way to enable a schema in embedded mode
>   public void enableNis() throws Exception  {
>       if(!service.getSchemaManager().isEnabled( "nis" ))
>       {
>           service.getSchemaManager().enable( "nis" );
>       }
>   }
> {code}
> The problem with this workaround is that if we try to apply an ldif relying on the new
schema in the @ApplyLdif annotation of a test, ApacheDS will fail.
> Another workaround is to apply this ldif in the test itself.
> More info / code examples in the original mail thread :
> http://mail-archives.apache.org/mod_mbox/directory-users/201212.mbox/%3CCAJHJdS9JqW5yNSwgiFohWUxJzEgqf9c-0XP2jr8P14PdTz7X%2BA%40mail.gmail.com%3E

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message