// Test setting properties to valid values public void testPropertiesValid() throws Exception { super.testPropertiesValid(); UISelectItem selectItem = (UISelectItem) component; // value SelectItem item = new SelectItem("foo"); selectItem.setValue(item); assertEquals("expected value", item, selectItem.getValue()); selectItem.setValue(null); assertNull("erased value", selectItem.getValue()); selectItem.setItemDescription("foo"); assertEquals("foo", selectItem.getItemDescription()); selectItem.setItemDescription(null); assertNull(selectItem.getItemDescription()); selectItem.setItemDisabled(false); assertFalse(selectItem.isItemDisabled()); selectItem.setItemDisabled(true); assertTrue(selectItem.isItemDisabled()); selectItem.setItemLabel("foo"); assertEquals("foo", selectItem.getItemLabel()); selectItem.setItemLabel(null); assertNull(selectItem.getItemLabel()); selectItem.setItemValue("foo"); assertEquals("foo", selectItem.getItemValue()); selectItem.setItemValue(null); assertNull(selectItem.getItemValue()); }
// Check that the properties on the specified components are equal protected void checkProperties(UIComponent comp1, UIComponent comp2) { super.checkProperties(comp1, comp2); UISelectItem si1 = (UISelectItem) comp1; UISelectItem si2 = (UISelectItem) comp2; assertEquals(si1.getItemDescription(), si2.getItemDescription()); assertEquals(si1.isItemDisabled(), si2.isItemDisabled()); assertEquals(si1.getItemLabel(), si2.getItemLabel()); assertEquals(si1.getItemValue(), si2.getItemValue()); }
protected List<SelectItem> getSelectItems(FacesContext context, UIInput component) { List<SelectItem> selectItems = new ArrayList<SelectItem>(); for (UIComponent child : component.getChildren()) { if (child instanceof UISelectItem) { UISelectItem uiSelectItem = (UISelectItem) child; Object selectItemValue = uiSelectItem.getValue(); if (selectItemValue == null) { selectItems.add( new SelectItem( uiSelectItem.getItemValue(), uiSelectItem.getItemLabel(), uiSelectItem.getItemDescription(), uiSelectItem.isItemDisabled(), uiSelectItem.isItemEscaped(), uiSelectItem.isNoSelectionOption())); } else { selectItems.add((SelectItem) selectItemValue); } } else if (child instanceof UISelectItems) { UISelectItems uiSelectItems = ((UISelectItems) child); Object value = uiSelectItems.getValue(); if (value != null) { if (value instanceof SelectItem) { selectItems.add((SelectItem) value); } else if (value.getClass().isArray()) { for (int i = 0; i < Array.getLength(value); i++) { Object item = Array.get(value, i); if (item instanceof SelectItem) selectItems.add((SelectItem) item); else selectItems.add(createSelectItem(context, uiSelectItems, item)); } } else if (value instanceof Map) { Map map = (Map) value; for (Iterator it = map.keySet().iterator(); it.hasNext(); ) { Object key = it.next(); selectItems.add( createSelectItem(context, uiSelectItems, String.valueOf(key), map.get(key))); } } else if (value instanceof Collection) { Collection collection = (Collection) value; for (Iterator it = collection.iterator(); it.hasNext(); ) { Object item = it.next(); if (item instanceof SelectItem) selectItems.add((SelectItem) item); else selectItems.add(createSelectItem(context, uiSelectItems, item)); } } } } } return selectItems; }
// Test a pristine UISelectItem instance public void testPristine() { super.testPristine(); UISelectItem selectItem = (UISelectItem) component; assertNull("no value", selectItem.getValue()); assertNull("no itemDescription", selectItem.getItemDescription()); assertFalse("no itemDisabled", selectItem.isItemDisabled()); assertNull("no itemLabel", selectItem.getItemLabel()); assertNull("no itemValue", selectItem.getItemValue()); }
// Test attribute-property transparency public void testAttributesTransparency() { super.testAttributesTransparency(); UISelectItem selectItem = (UISelectItem) component; assertEquals(selectItem.getValue(), component.getAttributes().get("value")); SelectItem item = new SelectItem("foo"); selectItem.setValue(item); assertEquals(item, component.getAttributes().get("value")); selectItem.setValue(null); assertNull(component.getAttributes().get("value")); component.getAttributes().put("value", "bar"); assertEquals("bar", selectItem.getValue()); component.getAttributes().put("value", null); assertNull(selectItem.getValue()); assertEquals( selectItem.getItemDescription(), (String) selectItem.getAttributes().get("itemDescription")); selectItem.setItemDescription("foo"); assertEquals("foo", (String) selectItem.getAttributes().get("itemDescription")); selectItem.setItemDescription(null); assertNull((String) selectItem.getAttributes().get("itemDescription")); selectItem.getAttributes().put("itemDescription", "bar"); assertEquals("bar", selectItem.getItemDescription()); selectItem.getAttributes().put("itemDescription", null); assertNull(selectItem.getItemDescription()); assertEquals( selectItem.isItemDisabled(), ((Boolean) selectItem.getAttributes().get("itemDisabled")).booleanValue()); selectItem.setItemDisabled(true); assertTrue(((Boolean) selectItem.getAttributes().get("itemDisabled")).booleanValue()); selectItem.setItemDisabled(false); assertFalse(((Boolean) selectItem.getAttributes().get("itemDisabled")).booleanValue()); selectItem.getAttributes().put("itemDisabled", Boolean.FALSE); assertFalse(selectItem.isItemDisabled()); selectItem.getAttributes().put("itemDisabled", Boolean.TRUE); assertTrue(selectItem.isItemDisabled()); assertEquals(selectItem.getItemLabel(), (String) selectItem.getAttributes().get("itemLabel")); selectItem.setItemLabel("foo"); assertEquals("foo", (String) selectItem.getAttributes().get("itemLabel")); selectItem.setItemLabel(null); assertNull((String) selectItem.getAttributes().get("itemLabel")); selectItem.getAttributes().put("itemLabel", "bar"); assertEquals("bar", selectItem.getItemLabel()); selectItem.getAttributes().put("itemLabel", null); assertNull(selectItem.getItemLabel()); assertEquals(selectItem.getItemValue(), (String) selectItem.getAttributes().get("itemValue")); selectItem.setItemValue("foo"); assertEquals("foo", (String) selectItem.getAttributes().get("itemValue")); selectItem.setItemValue(null); assertNull((String) selectItem.getAttributes().get("itemValue")); selectItem.getAttributes().put("itemValue", "bar"); assertEquals("bar", selectItem.getItemValue()); selectItem.getAttributes().put("itemValue", null); assertNull(selectItem.getItemValue()); }
public void PENDING_FIXME_testValueBindings() { super.testValueBindings(); UISelectItem test = (UISelectItem) component; // "itemDescription" property request.setAttribute("foo", "bar"); test.setItemDescription(null); assertNull(test.getItemDescription()); test.setValueBinding("itemDescription", application.createValueBinding("#{foo}")); assertNotNull(test.getValueBinding("itemDescription")); assertEquals("bar", test.getItemDescription()); test.setItemDescription("baz"); assertEquals("baz", test.getItemDescription()); test.setItemDescription(null); assertEquals("bar", test.getItemDescription()); test.setValueBinding("itemDescription", null); assertNull(test.getValueBinding("itemDescription")); assertNull(test.getItemDescription()); // "itemDisabled" property assertFalse(test.isItemDisabled()); request.setAttribute("foo", Boolean.TRUE); test.setValueBinding("itemDisabled", application.createValueBinding("#{foo}")); assertNotNull(test.getValueBinding("itemDisabled")); assertTrue(test.isItemDisabled()); test.setItemDisabled(false); assertFalse(test.isItemDisabled()); test.setValueBinding("itemDisabled", null); assertNull(test.getValueBinding("itemDisabled")); assertFalse(test.isItemDisabled()); // "itemLabel" property request.setAttribute("foo", "bar"); test.setItemLabel(null); assertNull(test.getItemLabel()); test.setValueBinding("itemLabel", application.createValueBinding("#{foo}")); assertNotNull(test.getValueBinding("itemLabel")); assertEquals("bar", test.getItemLabel()); test.setItemLabel("baz"); assertEquals("baz", test.getItemLabel()); test.setItemLabel(null); assertEquals("bar", test.getItemLabel()); test.setValueBinding("itemLabel", null); assertNull(test.getValueBinding("itemLabel")); assertNull(test.getItemLabel()); // "itemValue" property request.setAttribute("foo", "bar"); test.setItemValue(null); assertNull(test.getItemValue()); test.setValueBinding("itemValue", application.createValueBinding("#{foo}")); assertNotNull(test.getValueBinding("itemValue")); assertEquals("bar", test.getItemValue()); test.setItemValue("baz"); assertEquals("baz", test.getItemValue()); test.setItemValue(null); assertEquals("bar", test.getItemValue()); test.setValueBinding("itemValue", null); assertNull(test.getValueBinding("itemValue")); assertNull(test.getItemValue()); // "value" property request.setAttribute("foo", "bar"); test.setValue(null); assertNull(test.getValue()); test.setValueBinding("value", application.createValueBinding("#{foo}")); assertNotNull(test.getValueBinding("value")); assertEquals("bar", test.getValue()); test.setValue("baz"); assertEquals("baz", test.getValue()); test.setValue(null); assertEquals("bar", test.getValue()); test.setValueBinding("value", null); assertNull(test.getValueBinding("value")); assertNull(test.getValue()); }