You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2016/10/30 10:31:38 UTC
svn commit: r1767140 - in
/sling/trunk/tooling/support/provisioning-model/src:
main/java/org/apache/sling/provisioning/model/ModelUtility.java
test/java/org/apache/sling/provisioning/model/ModelUtilityTest.java
Author: cziegeler
Date: Sun Oct 30 10:31:38 2016
New Revision: 1767140
URL: http://svn.apache.org/viewvc?rev=1767140&view=rev
Log:
SLING-6214 : Validate feature version to be a valid version
Modified:
sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java
sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/ModelUtilityTest.java
Modified: sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java?rev=1767140&r1=1767139&r2=1767140&view=diff
==============================================================================
--- sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java (original)
+++ sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/ModelUtility.java Sun Oct 30 10:31:38 2016
@@ -168,6 +168,14 @@ public abstract class ModelUtility {
if ( feature.getName() == null || feature.getName().isEmpty() ) {
errors.put(feature, "Name is required for a feature.");
}
+ // version should be a valid version
+ if ( feature.getVersion() != null ) {
+ try {
+ new Version(feature.getVersion());
+ } catch ( final IllegalArgumentException iae) {
+ errors.put(feature, "Version is not a valid version");
+ }
+ }
for(final RunMode runMode : feature.getRunModes()) {
final String[] rm = runMode.getNames();
if ( rm != null ) {
Modified: sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/ModelUtilityTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/ModelUtilityTest.java?rev=1767140&r1=1767139&r2=1767140&view=diff
==============================================================================
--- sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/ModelUtilityTest.java (original)
+++ sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/ModelUtilityTest.java Sun Oct 30 10:31:38 2016
@@ -252,4 +252,20 @@ public class ModelUtilityTest {
assertNotNull(ModelUtility.validate(m));
f.getRunModes().remove(rmC);
}
+
+ @Test public void testValidateFeatureVersion() {
+ final Model m = new Model();
+ final Feature f = m.getOrCreateFeature("f");
+
+ // no version -> no error
+ assertNull(ModelUtility.validate(m));
+
+ f.setVersion("1.0");
+ // valid version -> no error
+ assertNull(ModelUtility.validate(m));
+
+ f.setVersion("foo");
+ // invalid version -> error
+ assertNotNull(ModelUtility.validate(m));
+ }
}