### Question:
ExpressionRepresentationRequiredValidator implements ConstraintValidator<ExpressionRepresentationRequired, ClientExpressionContainer>, ValidationErrorDescriptorBuilder { @Override public ErrorDescriptor build(ConstraintViolation violation) { return createDescriptorFrom(violation.getMessageTemplate(), violation.getPropertyPath().toString()); }  @Override ErrorDescriptor build(ConstraintViolation violation); @Override void initialize(ExpressionRepresentationRequired constraintAnnotation); @Override boolean isValid(ClientExpressionContainer value, ConstraintValidatorContext context);  }### Answer:
@Test public void build_someViolationObject_ErrorDescription() { ConstraintViolation violation = mock(ConstraintViolation.class); Path path = mock(Path.class); when(path.toString()).thenReturn(TEST_PATH); when(violation.getPropertyPath()).thenReturn(path); when(violation.getMessageTemplate()).thenReturn(EXPRESSION_REPRESENTATION_REQUIRED.toString()); ErrorDescriptor expected = EXPRESSION_REPRESENTATION_REQUIRED.createDescriptor(TEST_PATH); ErrorDescriptor actual = objectUnderTests.build(violation); assertEquals(expected, actual); }