@Test public void testValidation() { final List<Descriptor> descriptors = descriptors(); final List<Map<String, String>> properties = properties(); Preconditions.checkArgument(descriptors.size() == properties.size()); for (int i = 0; i < descriptors.size(); i++) { verifyProperties(descriptors.get(i), properties.get(i)); } }
protected void removePropertyAndVerify(Descriptor descriptor, String property) { final DescriptorProperties properties = new DescriptorProperties(); properties.putProperties(descriptor.toProperties()); final DescriptorProperties copy = properties.withoutKeys(Collections.singletonList(property)); validator().validate(copy); } }
protected void addPropertyAndVerify(Descriptor descriptor, String property, String newValue) { final DescriptorProperties properties = new DescriptorProperties(); properties.putProperties(descriptor.toProperties()); final DescriptorProperties copy = properties.withoutKeys(Collections.singletonList(property)); copy.putString(property, newValue); validator().validate(copy); }
protected void verifyProperties(Descriptor descriptor, Map<String, String> expected) { // test produced properties assertEquals(expected, descriptor.toProperties()); // test validation logic final DescriptorProperties properties = new DescriptorProperties(); properties.putProperties(expected); validator().validate(properties); }