/** * Convenience method for checking and verifying a value without having to chain calls * * @param key * the key we want to verify * @param value * the value we want to verify against the allowed values for key * @return true if the value is valid for key, false otherwise */ public boolean isValidFor(final String key, final String value) { return canValidate(key) && getValidatorFor(key).isValid(value); }
@Test public void testInvalidValue() { Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid(" ")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("mph")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("-60 kph")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("-60")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("60 km/h")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("sixty")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("sixty kph")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("sixty mph")); Assert.assertFalse(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("sixty knots")); }
@Test public void testValidValues() { Assert.assertTrue(validators().canValidate(AddressFlatsTag.KEY)); Assert.assertTrue(validators().getValidatorFor(AddressFlatsTag.KEY).isValid("7")); Assert.assertTrue(validators().getValidatorFor(AddressFlatsTag.KEY).isValid("1-20")); Assert.assertTrue( validators().getValidatorFor(AddressFlatsTag.KEY).isValid("3-7;10;14;16-18")); } }
@Test public void testValidValues() { Assert.assertTrue(validators().canValidate(MaxSpeedTag.KEY)); Assert.assertTrue(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("60")); Assert.assertTrue(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("60 kph")); Assert.assertTrue(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("60kph")); Assert.assertTrue(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("60 knots")); Assert.assertTrue(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("60mph")); Assert.assertTrue(validators().getValidatorFor(MaxSpeedTag.KEY).isValid("60 mph")); Assert.assertTrue(validators().canValidate(MinSpeedTag.KEY)); Assert.assertTrue(validators().getValidatorFor(MinSpeedTag.KEY).isValid("60")); Assert.assertTrue(validators().getValidatorFor(MinSpeedTag.KEY).isValid("60 kph")); Assert.assertTrue(validators().getValidatorFor(MinSpeedTag.KEY).isValid("60kph")); Assert.assertTrue(validators().getValidatorFor(MinSpeedTag.KEY).isValid("60 knots")); Assert.assertTrue(validators().getValidatorFor(MinSpeedTag.KEY).isValid("60mph")); Assert.assertTrue(validators().getValidatorFor(MinSpeedTag.KEY).isValid("60 mph")); Assert.assertTrue(validators().canValidate(MaxSpeedBackwardTag.KEY)); Assert.assertTrue(validators().canValidate(MaxSpeedForwardTag.KEY)); }
@Test public void testValidValues() { Assert.assertTrue(validators().canValidate(DisusedShopTag.KEY)); for (final ShopTag tag : ShopTag.values()) { Assert.assertTrue(validators().getValidatorFor(DisusedShopTag.KEY) .isValid(tag.name().toLowerCase())); } } }
@Test public void testInvalidValue() { Assert.assertTrue(validators().canValidate(AddressFlatsTag.KEY)); Assert.assertFalse(validators().getValidatorFor(AddressFlatsTag.KEY).isValid(" ")); }
@Test public void testJapan() { Assert.assertTrue(validators().canValidate(ISOCountryTag.KEY)); Assert.assertTrue(validators().getValidatorFor(ISOCountryTag.KEY).isValid("JPN")); } }
@Test public void testIllegalValue() { Assert.assertTrue(validators().canValidate(OpeningHoursTag.KEY)); Assert.assertFalse(validators().getValidatorFor(OpeningHoursTag.KEY).isValid("Garbage")); }
@Test public void testTimeOnly() { Assert.assertTrue(validators().canValidate(OpeningHoursTag.KEY)); Assert.assertTrue(validators().getValidatorFor(OpeningHoursTag.KEY).isValid("08:00-22:00")); }
@Test public void testBadCountry() { Assert.assertTrue(validators().canValidate(ISOCountryTag.KEY)); Assert.assertFalse(validators().getValidatorFor(ISOCountryTag.KEY).isValid("Timbuktu")); }
@Test public void testDateAndTime() { Assert.assertTrue(validators().canValidate(OpeningHoursTag.KEY)); Assert.assertTrue( validators().getValidatorFor(OpeningHoursTag.KEY).isValid("Mo-Fr 08:00-22:00")); }
@Test public void testTwentyFourSeven() { Assert.assertTrue(validators().canValidate(OpeningHoursTag.KEY)); Assert.assertTrue(validators().getValidatorFor(OpeningHoursTag.KEY).isValid("24/7")); } }
@Test public void testInvalidValue() { Assert.assertTrue(validators().canValidate(DisusedShopTag.KEY)); Assert.assertFalse( validators().getValidatorFor(DisusedShopTag.KEY).isValid("Crisps and Chips")); }