Author: bentmann
Date: Tue Sep 22 11:43:11 2009
New Revision: 817609

URL: http://svn.apache.org/viewvc?rev=817609&view=rev
Log:
o Fixed validation of model version

Added:
    
maven/maven-3/trunk/maven-model-builder/src/test/resources/poms/validation/bad-modelVersion.xml
   (with props)
Modified:
    
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
    
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
    
maven/maven-3/trunk/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
    
maven/maven-3/trunk/maven-model/src/main/java/org/apache/maven/model/merge/ModelMerger.java

Modified: 
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java?rev=817609&r1=817608&r2=817609&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
 (original)
+++ 
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
 Tue Sep 22 11:43:11 2009
@@ -20,7 +20,6 @@
  */
 
 import java.util.ArrayList;
-import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.LinkedHashSet;
 import java.util.LinkedList;
@@ -166,6 +165,12 @@
     }
 
     @Override
+    protected void mergeModel_ModelVersion( Model target, Model source, 
boolean sourceDominant, Map<Object, Object> context )
+    {
+        // neither inherited nor injected
+    }
+
+    @Override
     protected void mergeModel_Profiles( Model target, Model source, boolean 
sourceDominant, Map<Object, Object> context )
     {
         // neither inherited nor injected

Modified: 
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java?rev=817609&r1=817608&r2=817609&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
 (original)
+++ 
maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java
 Tue Sep 22 11:43:11 2009
@@ -73,6 +73,7 @@
 
         if ( request.getValidationLevel() >= 
ModelBuildingRequest.VALIDATION_LEVEL_MAVEN_2_0 )
         {
+            validateEnum( "modelVersion", problems, false, 
model.getModelVersion(), null, "4.0.0" );
             validateStringNoExpression( "groupId", problems, true, 
model.getGroupId() );
             validateStringNoExpression( "artifactId", problems, true, 
model.getArtifactId() );
             validateStringNoExpression( "version", problems, true, 
model.getVersion() );

Modified: 
maven/maven-3/trunk/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java?rev=817609&r1=817608&r2=817609&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
 (original)
+++ 
maven/maven-3/trunk/maven-model-builder/src/test/java/org/apache/maven/model/validation/DefaultModelValidatorTest.java
 Tue Sep 22 11:43:11 2009
@@ -112,6 +112,17 @@
         assertEquals( "'modelVersion' is missing.", result.getErrors().get( 0 
) );
     }
 
+    public void testBadModelVersion()
+        throws Exception
+    {
+        SimpleProblemCollector result =
+            validateRaw( "bad-modelVersion.xml", 
ModelBuildingRequest.VALIDATION_LEVEL_STRICT );
+
+        assertViolations( result, 1, 0 );
+
+        assertTrue( result.getErrors().get( 0 ).indexOf( "modelVersion" ) > -1 
);
+    }
+
     public void testMissingArtifactId()
         throws Exception
     {

Added: 
maven/maven-3/trunk/maven-model-builder/src/test/resources/poms/validation/bad-modelVersion.xml
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model-builder/src/test/resources/poms/validation/bad-modelVersion.xml?rev=817609&view=auto
==============================================================================
--- 
maven/maven-3/trunk/maven-model-builder/src/test/resources/poms/validation/bad-modelVersion.xml
 (added)
+++ 
maven/maven-3/trunk/maven-model-builder/src/test/resources/poms/validation/bad-modelVersion.xml
 Tue Sep 22 11:43:11 2009
@@ -0,0 +1,25 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<project>
+  <modelVersion>99.0.0</modelVersion>
+  <groupId>foo</groupId>
+  <artifactId>bar</artifactId>
+  <version>0.1</version>
+</project>

Propchange: 
maven/maven-3/trunk/maven-model-builder/src/test/resources/poms/validation/bad-modelVersion.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/maven-3/trunk/maven-model-builder/src/test/resources/poms/validation/bad-modelVersion.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Modified: 
maven/maven-3/trunk/maven-model/src/main/java/org/apache/maven/model/merge/ModelMerger.java
URL: 
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model/src/main/java/org/apache/maven/model/merge/ModelMerger.java?rev=817609&r1=817608&r2=817609&view=diff
==============================================================================
--- 
maven/maven-3/trunk/maven-model/src/main/java/org/apache/maven/model/merge/ModelMerger.java
 (original)
+++ 
maven/maven-3/trunk/maven-model/src/main/java/org/apache/maven/model/merge/ModelMerger.java
 Tue Sep 22 11:43:11 2009
@@ -21,7 +21,6 @@
 
 import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;


Reply via email to