View Javadoc

    1   package net.sourceforge.pmd.properties;
    2
    3   import net.sourceforge.pmd.PropertyDescriptor;
    4   import net.sourceforge.pmd.lang.rule.properties.BooleanMultiProperty;
    5   import net.sourceforge.pmd.lang.rule.properties.BooleanProperty;
    6
    7   import org.junit.Test;
    8
    9   /**
    10   * @author Brian Remedios
    11   */
    12  public class BooleanPropertyTest extends AbstractPropertyDescriptorTester {
    13
    14  	public BooleanPropertyTest() {
    15  		super();
    16  	}
    17
    18  	/**
    19  	 * Method createValue.
    20  	 * @param valueCount int
    21  	 * @return Object
    22  	 */
    23  	protected Object createValue(int valueCount) {
    24
    25  		if (valueCount == 1) return System.currentTimeMillis() % 1 > 0 ?
    26  			Boolean.TRUE : Boolean.FALSE;
    27
    28  		Boolean[] values = new Boolean[valueCount];
    29  		for (int i=0; i<values.length; i++) values[i] = (Boolean)createValue(1);
    30  		return values;
    31  	}
    32
    33  	 @Test
    34  	public void testErrorForBad() {
    35  		 // override, cannot create a 'bad' boolean per se
    36  	}
    37
    38  	 protected Object createBadValue(int count) {
    39  	 	return null;
    40  	}
    41
    42
    43  	/**
    44  	 * Method createProperty.
    45  	 * @param multiValue boolean
    46  	 * @return PropertyDescriptor
    47  	 */
    48  	 protected PropertyDescriptor createProperty(boolean multiValue) {
    49  		return multiValue ?
    50  			new BooleanMultiProperty("testBoolean", "Test boolean property", new Boolean[] {false, true, true}, 1.0f) :
    51  			new BooleanProperty("testBoolean", "Test boolean property", false, 1.0f);
    52  	}
    53
    54  	/**
    55  	 * Method createBadProperty.
    56  	 * @param multiValue boolean
    57  	 * @return PropertyDescriptor
    58  	 */
    59  	 protected PropertyDescriptor createBadProperty(boolean multiValue) {
    60  		return multiValue ?
    61  			new BooleanMultiProperty("", "Test boolean property", new Boolean[] {false, true, true}, 1.0f) :
    62  			new BooleanProperty("testBoolean", "", false, 1.0f);
    63  	}
    64
    65      public static junit.framework.Test suite() {
    66          return new junit.framework.JUnit4TestAdapter(BooleanPropertyTest.class);
    67      }
    68  }