Package javango.forms.fields

Source Code of javango.forms.fields.BooleanFieldTest

package javango.forms.fields;

import java.util.HashMap;
import java.util.Map;

import com.google.inject.Injector;

import javango.forms.fields.BooleanField;
import javango.forms.fields.BoundField;
import javango.forms.fields.Field;
import javango.forms.tests.InjectedTestCaseBase;
import javango.forms.widgets.WidgetFactory;
import junit.framework.TestCase;

public class BooleanFieldTest extends InjectedTestCaseBase {

  public void testRequired() throws Exception {
    Field field = new BooleanField(injector.getInstance(WidgetFactory.class));
    field.setName("fieldName");

    Map<String, String> errors = new HashMap<String, String>();
   
    field.clean(new String[]{""}, errors);
    assertFalse(errors.isEmpty());
    assertTrue(errors.containsKey(field.getName()));
    assertEquals("Required", errors.get(field.getName()));
  }
 
  public void testNotRequired() throws Exception {
    Field field = new BooleanField(injector.getInstance(WidgetFactory.class));
    field.setName("fieldName");
    field.setRequired(false);
   
    Map<String, String> errors = new HashMap<String, String>();
   
    field.clean(new String[]{""}, errors);
    assertTrue(errors.isEmpty());
  }

  public void testInvalid() throws Exception {
    Field field = new BooleanField(injector.getInstance(WidgetFactory.class));
    field.setName("fieldName");
   
    Map<String, String> errors = new HashMap<String, String>();
   
    Boolean value = (Boolean)field.clean(new String []{"qwert"}, errors);
    assertFalse(errors.isEmpty());
    assertTrue(errors.containsKey("fieldName"));
    assertEquals("Unknown value 'qwert'", errors.get("fieldName"));
  }

  public void testValidTrue() throws Exception {
    Field field = new BooleanField(injector.getInstance(WidgetFactory.class));
    field.setName("fieldName");
   
    Map<String, String> errors = new HashMap<String, String>();
   
    Boolean value = (Boolean)field.clean(new String[]{"true"}, errors);
    assertTrue(errors.isEmpty());
    assertEquals(Boolean.TRUE, value);
 

  public void testValidFalse() throws Exception {
    Field field = new BooleanField(injector.getInstance(WidgetFactory.class));
    field.setName("fieldName");
   
    Map<String, String> errors = new HashMap<String, String>();
   
    Boolean value = (Boolean)field.clean(new String[]{"false"}, errors);
    assertTrue(errors.isEmpty());
    assertEquals(Boolean.FALSE, value);
 

}
TOP

Related Classes of javango.forms.fields.BooleanFieldTest

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.