Package br.com.caelum.stella.bean.validation.xml

Source Code of br.com.caelum.stella.bean.validation.xml.StellaPatternValidatorTest$AnnotatedModel3

package br.com.caelum.stella.bean.validation.xml;

import javax.validation.ConstraintValidatorContext;

import junit.framework.Assert;
import net.vidageek.mirror.dsl.Mirror;

import org.junit.Test;
import org.mockito.Mockito;

import br.com.caelum.stella.bean.validation.xml.Pattern;
import br.com.caelum.stella.bean.validation.xml.logic.StellaPatternValidator;

@SuppressWarnings("deprecation")
public class StellaPatternValidatorTest {
  private ConstraintValidatorContext context = Mockito
      .mock(ConstraintValidatorContext.class);

  public static class AnnotatedModel {
    @Pattern("")
    public Integer i;
  }

  public static class AnnotatedModel2 {
    @Pattern("[ab]*c")
    public String i;
  }

  @Test
  public void testThatIsValidIfPatternMatchesWholeString() {
    StellaPatternValidator validator = new StellaPatternValidator();
    validator.initialize(new Mirror().on(AnnotatedModel2.class).reflect()
        .annotation(Pattern.class).atField("i"));
    Assert.assertEquals(true, validator.isValid("babac", context));
  }

  public static class AnnotatedModel3 {
    @Pattern("[ab]*")
    public String i;
  }

  @Test
  public void testThatIsNotValidIfMatchIsPartial() {
    StellaPatternValidator validator = new StellaPatternValidator();
    validator.initialize(new Mirror().on(AnnotatedModel3.class).reflect()
        .annotation(Pattern.class).atField("i"));
    Assert.assertEquals(false, validator.isValid("babac", context));
  }

  @Test
  public void testThatNullIsValid() {
    StellaPatternValidator validator = new StellaPatternValidator();
    validator.initialize(new Mirror().on(AnnotatedModel3.class).reflect()
        .annotation(Pattern.class).atField("i"));
    Assert.assertEquals(true, validator.isValid(null, context));
  }

}
TOP

Related Classes of br.com.caelum.stella.bean.validation.xml.StellaPatternValidatorTest$AnnotatedModel3

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.