Skip to content

Commit

Permalink
FORGE-1967: UIInput/UISelectOne.hasValue() and hasDefaultValue() shou…
Browse files Browse the repository at this point in the history
…ld return false if an empty string
  • Loading branch information
gastaldi committed Aug 2, 2014
1 parent 4b38afc commit d7c73c0
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 2 deletions.
Expand Up @@ -18,6 +18,7 @@
import org.jboss.forge.addon.ui.input.ValueChangeListener;
import org.jboss.forge.addon.ui.util.InputComponents;
import org.jboss.forge.furnace.util.Callables;
import org.jboss.forge.furnace.util.Strings;

/**
* Implementation of a {@link UIInput} object
Expand Down Expand Up @@ -109,12 +110,21 @@ public String toString()
@Override
public boolean hasDefaultValue()
{
return Callables.call(defaultValue) != null;
VALUETYPE defaultValueValue = Callables.call(defaultValue);
if (defaultValueValue instanceof String)
{
return !Strings.isNullOrEmpty((String) defaultValueValue);
}
return defaultValueValue != null;
}

@Override
public boolean hasValue()
{
if (value instanceof String)
{
return !Strings.isNullOrEmpty((String) value);
}
return value != null;
}
}
Expand Up @@ -13,6 +13,7 @@
import org.jboss.forge.addon.ui.input.ValueChangeListener;
import org.jboss.forge.addon.ui.util.InputComponents;
import org.jboss.forge.furnace.util.Callables;
import org.jboss.forge.furnace.util.Strings;

/**
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a>
Expand Down Expand Up @@ -65,12 +66,21 @@ public VALUETYPE getValue()
@Override
public boolean hasDefaultValue()
{
return Callables.call(defaultValue) != null;
VALUETYPE defaultValueValue = Callables.call(defaultValue);
if (defaultValueValue instanceof String)
{
return !Strings.isNullOrEmpty((String) defaultValueValue);
}
return defaultValueValue != null;
}

@Override
public boolean hasValue()
{
if (value instanceof String)
{
return !Strings.isNullOrEmpty((String) value);
}
return value != null;
}

Expand Down
Expand Up @@ -57,6 +57,9 @@ public static ForgeArchive getDeployment()
@WithAttributes(label = "")
private UIInput<String> stringNoDefault;

@Inject
private UIInput<String> stringValue;

@Test
public void testBooleanInputWithDefaultValue()
{
Expand Down Expand Up @@ -88,4 +91,13 @@ public void testStringInputNoDefaultValue()
Assert.assertFalse(stringNoDefault.hasValue());
Assert.assertNull(stringNoDefault.getValue());
}

@Test
public void testStringEmptyInputNoDefaultValue()
{
stringValue.setValue("");
Assert.assertFalse(stringValue.hasValue());
stringValue.setDefaultValue("");
Assert.assertFalse(stringValue.hasDefaultValue());
}
}

0 comments on commit d7c73c0

Please sign in to comment.