package com.rapidftr.controls; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.mock; import org.junit.Ignore; import org.junit.Test; import com.rapidftr.form.FormField; @Ignore("Currently the fields are added to the manager in the constructor. " + "We need to do this in the onDisplay method. However due to a problem the onDisplay" + "is being called twice by the ManageChildScreen. Fix that and we should " + "get this test case passing") public class FormFieldFactoryTest { @Test public void shouldReturnTextboxFormField() { FormFieldFactory formFieldFactory = new FormFieldFactory(); net.rim.device.api.ui.Field field = formFieldFactory .createFrom(mock(FormField.class)); assertNotNull(field); assertTrue(field instanceof TextboxFormField); } @Test public void shouldReturnSelecttboxFormField() { FormFieldFactory formFieldFactory = new FormFieldFactory(); net.rim.device.api.ui.Field field = formFieldFactory .createFrom(mock(FormField.class)); assertNotNull(field); assertTrue(field instanceof SelectboxFormField); } @Test public void shouldReturnRadiobuttonFormField() { FormFieldFactory formFieldFactory = new FormFieldFactory(); net.rim.device.api.ui.Field field = formFieldFactory .createFrom(mock(FormField.class)); assertNotNull(field); assertTrue(field instanceof RadioButtonFormField); } @Test public void shouldReturnCheckboxFormField() { FormFieldFactory formFieldFactory = new FormFieldFactory(); net.rim.device.api.ui.Field field = formFieldFactory .createFrom(mock(FormField.class)); assertNotNull(field); assertTrue(field instanceof CheckboxFormField); } @Test public void shouldReturnPhotoUploadFormField() { FormFieldFactory formFieldFactory = new FormFieldFactory(); net.rim.device.api.ui.Field field = formFieldFactory .createFrom(mock(FormField.class)); assertNotNull(field); assertTrue(field instanceof PhotoUploadFormField); } @Test public void shouldReturnNumericTextboxFormField() { FormFieldFactory formFieldFactory = new FormFieldFactory(); net.rim.device.api.ui.Field field = formFieldFactory .createFrom(mock(FormField.class)); assertNotNull(field); assertTrue(field instanceof NumericTextboxFormField); } @Test public void shouldReturnNullWhenInvalidInputTypeIsGiven() { FormFieldFactory formFieldFactory = new FormFieldFactory(); net.rim.device.api.ui.Field field = formFieldFactory .createFrom(mock(FormField.class)); assertNull(field); } }