/** * */ package org.richfaces.javascript.client.validator; import java.util.List; import java.util.Map; import javax.faces.validator.LengthValidator; import javax.faces.validator.Validator; import org.junit.runners.Parameterized.Parameters; import org.richfaces.javascript.client.RunParameters; /** * @author asmirnov * */ public class LengthValidatorTest extends ValidatorTestBase { private static final String MINIMUM = "min"; private static final String MAXIMUM = "max"; /** * @param criteria */ public LengthValidatorTest(RunParameters criteria) { super(criteria); } /* * (non-Javadoc) * * @see org.richfaces.javascript.client.validator.ValidatorTestBase#createValidator() */ @Override protected Validator createValidator() { LengthValidator validator = new LengthValidator(); Map<String, Object> options = getOptions(); if (options.containsKey(MINIMUM)) { validator.setMinimum((Integer) options.get(MINIMUM)); } if (options.containsKey(MAXIMUM)) { validator.setMaximum((Integer) options.get(MAXIMUM)); } return validator; } /* * (non-Javadoc) * * @see org.richfaces.javascript.client.MockTestBase#getJavaScriptFunctionName() */ @Override protected String getJavaScriptFunctionName() { return "validateLength"; } @SuppressWarnings("deprecation") @Parameters public static List<RunParameters[]> parameters() { return options(pass(""), pass("aaa"), pass("123"), pass("", MINIMUM, 2), pass("vv", MINIMUM, 2), pass("vvv", MINIMUM, 2), pass("", MAXIMUM, 2), pass("vv", MAXIMUM, 2), pass("123", MAXIMUM, 2), pass("", MINIMUM, 3, MAXIMUM, 5, IGNORE_MESSAGE, true), pass("ddd", MINIMUM, 3, MAXIMUM, 5), pass("dddd", MINIMUM, 3, MAXIMUM, 5), pass("abcdefg", MINIMUM, 3, MAXIMUM, 5, IGNORE_MESSAGE, true)); } }