@Test public void testGetValidationResult() throws Exception { Properties properties = new Properties(); properties.put("p1", "v1"); Configuration ambariConfig = new Configuration(properties); ViewConfig config = ViewConfigTest.getConfig(xml_valid_instance); ViewEntity viewEntity = ViewRegistryTest.getViewEntity(config, ambariConfig, getClass().getClassLoader(), ""); ViewInstanceEntity viewInstanceEntity = ViewRegistryTest.getViewInstanceEntity(viewEntity, config.getInstances().get(0)); ViewEntityTest.TestValidator validator = new ViewEntityTest.TestValidator(); validator.result = new ValidationResultImpl(true, "detail"); viewEntity.setValidator(validator); InstanceValidationResultImpl result = viewInstanceEntity.getValidationResult(viewEntity, Validator.ValidationContext.PRE_CREATE); Map<String, ValidationResult> propertyResults = result.getPropertyResults(); junit.framework.Assert.assertEquals(2, propertyResults.size()); junit.framework.Assert.assertTrue(propertyResults.containsKey("p1")); junit.framework.Assert.assertTrue(propertyResults.containsKey("p2")); junit.framework.Assert.assertTrue(propertyResults.get("p1").isValid()); junit.framework.Assert.assertTrue(propertyResults.get("p2").isValid()); }
@Test public void testValidateWithValidator_fail() throws Exception { Properties properties = new Properties(); properties.put("p1", "v1"); Configuration ambariConfig = new Configuration(properties); ViewConfig config = ViewConfigTest.getConfig(xml_invalid_instance); ViewEntity viewEntity = ViewRegistryTest.getViewEntity(config, ambariConfig, getClass().getClassLoader(), ""); ViewInstanceEntity viewInstanceEntity = ViewRegistryTest.getViewInstanceEntity(viewEntity, config.getInstances().get(0)); ViewEntityTest.TestValidator validator = new ViewEntityTest.TestValidator(); validator.result = new ValidationResultImpl(false, "detail"); viewEntity.setValidator(validator); try { viewInstanceEntity.validate(viewEntity, Validator.ValidationContext.PRE_CREATE); Assert.fail("Expected an IllegalStateException"); } catch (ValidationException e) { // expected } }
public static ViewInstanceEntity getViewInstanceEntity() throws Exception { InstanceConfig instanceConfig = InstanceConfigTest.getInstanceConfigs().get(0); ViewEntity viewDefinition = ViewEntityTest.getViewEntity(); ViewInstanceEntity viewInstanceEntity = new ViewInstanceEntity(viewDefinition, instanceConfig); ResourceTypeEntity resourceTypeEntity = new ResourceTypeEntity(); resourceTypeEntity.setId(10); resourceTypeEntity.setName(viewDefinition.getName()); viewDefinition.setResourceType(resourceTypeEntity); ResourceEntity resourceEntity = new ResourceEntity(); resourceEntity.setId(20L); resourceEntity.setResourceType(resourceTypeEntity); viewInstanceEntity.setResource(resourceEntity); return viewInstanceEntity; }
@Test public void testValidateWithValidator() throws Exception { Properties properties = new Properties(); properties.put("p1", "v1"); Configuration ambariConfig = new Configuration(properties); ViewConfig config = ViewConfigTest.getConfig(xml_valid_instance); ViewEntity viewEntity = ViewRegistryTest.getViewEntity(config, ambariConfig, getClass().getClassLoader(), ""); ViewInstanceEntity viewInstanceEntity = ViewRegistryTest.getViewInstanceEntity(viewEntity, config.getInstances().get(0)); ViewEntityTest.TestValidator validator = new ViewEntityTest.TestValidator(); validator.result = new ValidationResultImpl(true, "detail"); viewEntity.setValidator(validator); viewInstanceEntity.validate(viewEntity, Validator.ValidationContext.PRE_CREATE); }