@@ -0,0 +1,2443 @@
+package cc.redpen.validator;%0A%0Aimport cc.redpen.RedPenException;%0Aimport cc.redpen.ValidationError;%0Aimport cc.redpen.config.Configuration;%0Aimport cc.redpen.config.ValidatorConfiguration;%0Aimport cc.redpen.model.Sentence;%0Aimport org.junit.Test;%0A%0Aimport java.util.List;%0A%0Aimport static junit.framework.Assert.fail;%0A%0Aclass NotImplementInterfaceValidator %7B%7D%0A%0Aclass NoConstructorWithConfigsValidator implements Validator%3CSentence%3E %7B%0A    @Override%0A    public List%3CValidationError%3E validate(Sentence block) %7B%0A        return null;%0A    %7D%0A%7D%0A%0Apublic class ValidatorFactoryTest %7B%0A    @Test%0A    public void testCreateValidator() %7B%0A        Configuration conf = new Configuration.Builder()%0A                .setSymbolTable(%22en%22)%0A                .addValidatorConfig(new ValidatorConfiguration(%22SentenceLength%22))%0A                .build();%0A        try %7B%0A            ValidatorFactory.getInstance(%0A                    conf.getValidatorConfigs().get(0), conf.getSymbolTable());%0A        %7D catch (RedPenException e) %7B%0A            fail();%0A        %7D%0A    %7D%0A%0A    @Test(expected = RedPenException.class)%0A    public void testThrowExceptionWhenCreateNonExistValidator() throws RedPenException %7B%0A        Configuration conf = new Configuration.Builder()%0A                .setSymbolTable(%22en%22)%0A                .addValidatorConfig(new ValidatorConfiguration(%22Foobar%22))%0A                .build();%0A        ValidatorFactory.getInstance(%0A                conf.getValidatorConfigs().get(0), conf.getSymbolTable());%0A    %7D%0A%0A    @Test(expected = RuntimeException.class)%0A    public void testThrowExceptionWhenCreateValidatorNotImplementsInterface() throws RedPenException %7B%0A        Configuration conf = new Configuration.Builder()%0A                .setSymbolTable(%22en%22)%0A                .addValidatorConfig(new ValidatorConfiguration(%22NotImplementInterface%22))%0A                .build();%0A        ValidatorFactory.getInstance(%0A                conf.getValidatorConfigs().get(0), conf.getSymbolTable());%0A    %7D%0A%0A    @Test(expected = RuntimeException.class)%0A    public void testThrowExceptionWhenCreateValidatorWithoutConstructorWithConfigs() throws RedPenException %7B%0A        Configuration conf = new Configuration.Builder()%0A                .setSymbolTable(%22en%22)%0A                .addValidatorConfig(new ValidatorConfiguration(%22NoConstructorWithConfigs%22))%0A                .build();%0A        ValidatorFactory.getInstance(%0A                conf.getValidatorConfigs().get(0), conf.getSymbolTable());%0A    %7D%0A%0A%7D%0A

Enhance ValidatorFactory test