private static Currency addCode(String currencyCode) { ArgChecker.matches(CODE_MATCHER, 3, 3, currencyCode, "currencyCode", "[A-Z][A-Z][A-Z]"); return DYNAMIC.computeIfAbsent(currencyCode, code -> new Currency(code, 0, "USD")); }
private static Country addCode(String countryCode) { ArgChecker.matches(CODE_MATCHER, 2, 2, countryCode, "countryCode", "[A-Z][A-Z]"); return new Country(countryCode); }
/** * Creates an identifier. * * @param scheme the scheme of the identifier, not empty * @param value the value of the identifier, not empty */ @ImmutableConstructor private StandardId(String scheme, String value) { ArgChecker.matches(SCHEME_MATCHER, 1, Integer.MAX_VALUE, scheme, "scheme", "[A-Za-z0-9:/+.=_-]+"); ArgChecker.matches(VALUE_MATCHER, 1, Integer.MAX_VALUE, value, "value", "[!-z][ -z]+"); if (value.charAt(0) == ' ') { throw new IllegalArgumentException(Messages.format( "Invalid initial space in value '{}' must match regex '[!-z][ -z]+'", value)); } this.scheme = scheme; this.value = value; this.hashCode = scheme.hashCode() ^ value.hashCode(); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'pattern'.*") public void test_matches_CharMatcher_String_nullMatcher() { ArgChecker.matches(null, 1, Integer.MAX_VALUE, "", "name", "[A-Z]+"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'pattern'.*") public void test_matches_String_nullPattern() { ArgChecker.matches(null, "", "name"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'name'.*") public void test_matches_String_nullString() { ArgChecker.matches(Pattern.compile("[A-Z]+"), null, "name"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'name'.*'123'.*") public void test_matches_String_noMatch() { ArgChecker.matches(Pattern.compile("[A-Z]+"), "123", "name"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'name'.*") public void test_matches_String_empty() { ArgChecker.matches(Pattern.compile("[A-Z]+"), "", "name"); }
public void test_matches_String_ok() { assertEquals(ArgChecker.matches(Pattern.compile("[A-Z]+"), "OG", "name"), "OG"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'name'.*") public void test_matches_CharMatcher_String_tooLong() { ArgChecker.matches(CharMatcher.inRange('A', 'Z'), 1, 2, "abc", "name", "[A-Z]+"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'name'.*") public void test_matches_CharMatcher_String_nullString() { ArgChecker.matches(CharMatcher.inRange('A', 'Z'), 1, 2, null, "name", "[A-Z]+"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'name'.*") public void test_matches_CharMatcher_String_tooShort() { ArgChecker.matches(CharMatcher.inRange('A', 'Z'), 1, 2, "", "name", "[A-Z]+"); }
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = ".*'name'.*'123'.*") public void test_matches_CharMatcher_String_noMatch() { ArgChecker.matches(CharMatcher.inRange('A', 'Z'), 1, Integer.MAX_VALUE, "123", "name", "[A-Z]+"); }
public void test_matches_CharMatcher_String_ok() { assertEquals(ArgChecker.matches(CharMatcher.inRange('A', 'Z'), 1, Integer.MAX_VALUE, "OG", "name", "[A-Z]+"), "OG"); }