| | |
| | | |
| | | package org.forgerock.opendj.config; |
| | | |
| | | import static org.testng.Assert.assertEquals; |
| | | import static org.testng.Assert.assertTrue; |
| | | |
| | | import java.util.Comparator; |
| | | import java.util.List; |
| | | |
| | |
| | | import org.testng.annotations.DataProvider; |
| | | import org.testng.annotations.Test; |
| | | |
| | | import static org.forgerock.opendj.config.ClassPropertyDefinition.*; |
| | | import static org.testng.Assert.*; |
| | | |
| | | @SuppressWarnings("javadoc") |
| | | public class ClassPropertyDefinitionTest extends ConfigTestCase { |
| | | |
| | |
| | | |
| | | public Comparator<Dummy> comparator() { |
| | | return new Comparator<ClassPropertyDefinitionTest.Dummy>() { |
| | | @Override |
| | | public int compare(Dummy o1, Dummy o2) { |
| | | // No implementation required. |
| | | return 0; |
| | |
| | | } |
| | | } |
| | | |
| | | ClassPropertyDefinition.Builder builder = null; |
| | | |
| | | @DataProvider(name = "validClassNames") |
| | | public Object[][] createBuilderAddInstanceOfData() { |
| | | return new Object[][] { |
| | |
| | | |
| | | @Test(dataProvider = "validClassNames") |
| | | public void testBuilderAddInstanceOf(String classNameToAdd) { |
| | | ClassPropertyDefinition.Builder localBuilder = ClassPropertyDefinition.createBuilder(RootCfgDefn.getInstance(), |
| | | "test-property"); |
| | | ClassPropertyDefinition.Builder localBuilder = createBuilder(RootCfgDefn.getInstance(), "test-property"); |
| | | localBuilder.addInstanceOf(classNameToAdd); |
| | | ClassPropertyDefinition propertyDef = localBuilder.getInstance(); |
| | | List<String> instances = propertyDef.getInstanceOfInterface(); |
| | |
| | | |
| | | @Test(dataProvider = "invalidClassNames", expectedExceptions = { IllegalArgumentException.class }) |
| | | public void testBuilderAddInstanceInvalid(String className) { |
| | | ClassPropertyDefinition.Builder localBuilder = ClassPropertyDefinition.createBuilder(RootCfgDefn.getInstance(), |
| | | "test-property"); |
| | | ClassPropertyDefinition.Builder localBuilder = createBuilder(RootCfgDefn.getInstance(), "test-property"); |
| | | localBuilder.addInstanceOf(className); |
| | | ClassPropertyDefinition propertyDef = localBuilder.getInstance(); |
| | | List<String> instances = propertyDef.getInstanceOfInterface(); |
| | |
| | | @Test(dataProvider = "loadClasses") |
| | | public <T> void testLoadClass(String interfaceName, String loadClassName, Class<T> instanceOfClass, |
| | | Class<?> expectedClass) { |
| | | ClassPropertyDefinition.Builder localBuilder = ClassPropertyDefinition.createBuilder(RootCfgDefn.getInstance(), |
| | | "test-property"); |
| | | ClassPropertyDefinition.Builder localBuilder = createBuilder(RootCfgDefn.getInstance(), "test-property"); |
| | | localBuilder.addInstanceOf(interfaceName); |
| | | ClassPropertyDefinition propertyDef = localBuilder.getInstance(); |
| | | Class<?> clazz = propertyDef.loadClass(loadClassName, instanceOfClass); |
| | |
| | | @Test(dataProvider = "loadClassesIllegal", expectedExceptions = { PropertyException.class }) |
| | | public <T> void testLoadClassIllegal(String interfaceName, String loadClassName, Class<T> instanceOfClass, |
| | | Class<?> expectedClass) { |
| | | ClassPropertyDefinition.Builder localBuilder = ClassPropertyDefinition.createBuilder(RootCfgDefn.getInstance(), |
| | | "test-property"); |
| | | ClassPropertyDefinition.Builder localBuilder = createBuilder(RootCfgDefn.getInstance(), "test-property"); |
| | | localBuilder.addInstanceOf(interfaceName); |
| | | ClassPropertyDefinition propertyDef = localBuilder.getInstance(); |
| | | Class<?> clazz = propertyDef.loadClass(loadClassName, instanceOfClass); |