Padding extends AbstractCssProperty<Padding> implements StateChangeInformer<CssProperty> { public static boolean isValid(final String cssValue) { final String trimmedCssValue; if (cssValue == null || (trimmedCssValue = TagStringUtil .toLowerCase(StringUtil.strip(cssValue))).isEmpty()) { return false; } if (INITIAL.equalsIgnoreCase(trimmedCssValue) || INHERIT.equalsIgnoreCase(trimmedCssValue)) { return true; } final String[] cssValueParts = StringUtil.splitBySpace(trimmedCssValue); for (final String eachPart : cssValueParts) { final boolean valid = PaddingTop.isValid(eachPart); if ((valid && (INITIAL.equals(eachPart) || INHERIT.equals(eachPart))) || !valid) { return false; } } return true; } Padding();  Padding(final String cssValue);  Padding(final Padding paddingBottom); Padding setValue(final String value); @Override String getCssName(); @Override String getCssValue(); @Override String toString(); String getValue(); @Override Padding setCssValue(final String cssValue); void setAsInitial(); void setAsInherit(); PaddingTop getPaddingTop(); void setPadding(final PaddingTop paddingTop,
            final PaddingRight paddingRight, final PaddingBottom paddingBottom,
            final PaddingLeft paddingLeft); PaddingRight getPaddingRight(); PaddingBottom getPaddingBottom(); PaddingLeft getPaddingLeft(); @Override void stateChanged(final CssProperty stateChangedObject); boolean hasPredefinedConstantValue(); static boolean isValid(final String cssValue); static final String INITIAL; static final String INHERIT; }
@Test public void testIsValid() { { final boolean valid = Padding.isValid("45px"); assertTrue(valid); final boolean invalid = Padding.isValid("55"); assertFalse(invalid); } { final boolean valid = Padding.isValid("45PX"); assertTrue(valid); } { final boolean valid = Padding.isValid("45em"); assertTrue(valid); final boolean invalid = Padding.isValid("dfd"); assertFalse(invalid); } { final boolean valid = Padding.isValid("45%"); assertTrue(valid); final boolean invalid = Padding.isValid("45 px"); assertFalse(invalid); } { final boolean valid = Padding.isValid("45em"); assertTrue(valid); final boolean invalid = Padding.isValid("45sem"); assertFalse(invalid); } { final boolean valid = Padding.isValid("45rem"); assertTrue(valid); } { final boolean valid = Padding.isValid("-1px"); assertTrue(valid); } { final boolean valid = Padding.isValid("25px 23px 17px -1px"); assertTrue(valid); } { final boolean valid = Padding.isValid("-25px 23px 17px 1px"); assertTrue(valid); } { final boolean valid = Padding.isValid("25px -23px 17px 1px"); assertTrue(valid); } { final boolean valid = Padding.isValid("25px 23px -17px 1px"); assertTrue(valid); } { final boolean valid = Padding.isValid("25px 23px 17px -1px"); assertTrue(valid); } { final boolean valid = Padding.isValid("25px 23px 17px initial"); assertFalse(valid); } { final boolean valid = Padding.isValid("25px 23px 17PX initial"); assertFalse(valid); } { final boolean valid = Padding.isValid("25px 23px 17PX initial"); assertFalse(valid); } { final boolean valid = Padding.isValid("25px 23px 17px INHERIT"); assertFalse(valid); } }