throw new IllegalArgumentException(errorMessage);
}
- throw new IllegalArgumentException("Value " + str + " " + (invert ? "matches" : "does not match")
+ throw new IllegalArgumentException("Value '" + str + "' " + (invert ? "matches" : "does not match")
+ " regular expression '" + regEx + "'");
}
}
fail("Exception should have been thrown.");
} catch (final IllegalArgumentException ex) {
LOG.debug("IllegalArgumentException was thrown as expected", ex);
- assertEquals("Supplied value does not match the regular expression ^(?:[A-Z]+)$.", ex.getMessage());
+ assertEquals("Value 'abcd' does not match regular expression '[A-Z]+'", ex.getMessage());
}
}
}
this.description = description.orElse(null);
this.reference = reference.orElse(null);
this.errorAppTag = errorAppTag != null ? errorAppTag : "invalid-regular-expression";
- this.errorMessage = errorMessage != null ? errorMessage : String.format(
- "Supplied value does not match the regular expression %s.", regex);
+ this.errorMessage = errorMessage;
this.modifier = modifier.orElse(null);
}
@Override
public String toString() {
- return MoreObjects.toStringHelper(this).add("regex", regex).add("description", description)
+ return MoreObjects.toStringHelper(this).omitNullValues().add("regex", regex).add("description", description)
.add("reference", reference).add("errorAppTag", errorAppTag).add("errorMessage", errorMessage)
.add("modifier", modifier).toString();
}
assertEquals("Description should be 'test description'.", Optional.of("test description"),
patternConstraint.getDescription());
assertEquals(Optional.of("invalid-regular-expression"), patternConstraint.getErrorAppTag());
- assertTrue(patternConstraint.getErrorMessage().isPresent());
+ assertFalse(patternConstraint.getErrorMessage().isPresent());
assertEquals(Optional.of("RFC 6020"), patternConstraint.getReference());
assertEquals("Regular expression should be equls '\\D'.", "\\D", patternConstraint.getJavaPatternString());
assertNotEquals("Hash codes shouldn't be equals.", patternConstraint.hashCode(), patternConstraint2.hashCode());
import com.google.common.base.MoreObjects;
import java.util.Objects;
import java.util.Optional;
+import org.opendaylight.yangtools.concepts.Immutable;
import org.opendaylight.yangtools.yang.model.api.type.ModifierKind;
import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
-final class PatternConstraintImpl implements PatternConstraint {
+final class PatternConstraintImpl implements PatternConstraint, Immutable {
private final String regEx;
private final String rawRegEx;
this.description = description;
this.reference = reference;
this.errorAppTag = errorAppTag != null ? errorAppTag : "invalid-regular-expression";
- this.errorMessage = errorMessage != null ? errorMessage : String.format(
- "Supplied value does not match the regular expression %s.", regex);
+ this.errorMessage = errorMessage;
this.modifier = modifier;
}
@Override
public String toString() {
- return MoreObjects.toStringHelper(this).add("regex", regEx).add("description", description)
+ return MoreObjects.toStringHelper(this).omitNullValues().add("regex", regEx).add("description", description)
.add("reference", reference).add("errorAppTag", errorAppTag).add("errorMessage", errorMessage)
.add("modifier", modifier).toString();
}
assertEquals("^(?:[0-9a-fA-F]*)$", patternConstraint.getJavaPatternString());
assertFalse(patternConstraint.getReference().isPresent());
assertFalse(patternConstraint.getDescription().isPresent());
- assertEquals(Optional.of("Supplied value does not match the regular expression ^(?:[0-9a-fA-F]*)$."),
- patternConstraint.getErrorMessage());
+ assertEquals(Optional.empty(), patternConstraint.getErrorMessage());
assertEquals(Optional.of("invalid-regular-expression"), patternConstraint.getErrorAppTag());
assertNotNull(patternConstraint.toString());
assertNotNull(patternConstraint.hashCode());