### Question:
CheckInMemoryDataSourceTypeValidator implements ConstraintValidator<CheckInMemoryDataSourceType, ClientReferenceable>,
        ValidationErrorDescriptorBuilder { @Override public boolean isValid(ClientReferenceable value, ConstraintValidatorContext context) { return value == null || supportedDatasourceClazzAndNameMap.contains(value.getClass()); }  @Override void initialize(CheckInMemoryDataSourceType constraintAnnotation); @Override boolean isValid(ClientReferenceable value, ConstraintValidatorContext context); @Override ErrorDescriptor build(ConstraintViolation violation);  }### Answer:
@Test public void isValid_DomainDataSource_true() { ClientDomain domain = new ClientDomain(); assertTrue(checkInMemoryDataSourceTypeValidator.isValid(domain, context)); }
@Test public void isValid_Reference_true() { ClientReference domain = new ClientReference(); assertTrue(checkInMemoryDataSourceTypeValidator.isValid(domain, context)); }
@Test public void isValid_nonSupportedDatasource_false() { ClientSemanticLayerDataSource domain = new ClientSemanticLayerDataSource(); assertFalse(checkInMemoryDataSourceTypeValidator.isValid(domain, context)); }
@Test public void isValid_DataSourceIsNull_true() { ClientDomain domain = null; assertTrue(checkInMemoryDataSourceTypeValidator.isValid(domain, context)); }