View Javadoc

1   package org.codehaus.modello.plugin.java;
2   
3   /*
4    * Copyright (c) 2004, Codehaus.org
5    *
6    * Permission is hereby granted, free of charge, to any person obtaining a copy of
7    * this software and associated documentation files (the "Software"), to deal in
8    * the Software without restriction, including without limitation the rights to
9    * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
10   * of the Software, and to permit persons to whom the Software is furnished to do
11   * so, subject to the following conditions:
12   *
13   * The above copyright notice and this permission notice shall be included in all
14   * copies or substantial portions of the Software.
15   *
16   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22   * SOFTWARE.
23   */
24  
25  import org.codehaus.modello.AbstractModelloJavaGeneratorTest;
26  import org.codehaus.modello.ModelloParameterConstants;
27  import org.codehaus.modello.core.ModelloCore;
28  import org.codehaus.modello.model.Model;
29  
30  import java.util.Properties;
31  
32  /**
33   * @author Hervé Boutemy
34   */
35  public class FeaturesVersionJavaGeneratorTest
36      extends AbstractModelloJavaGeneratorTest
37  {
38      public FeaturesVersionJavaGeneratorTest()
39      {
40          super( "features-version" );
41      }
42  
43      private static final String ALL_VERSIONS = "1.0.0,1.5.0,2.0.0,3.0.0";
44  
45      public void testJavaGenerator()
46          throws Throwable
47      {
48          ModelloCore modello = (ModelloCore) lookup( ModelloCore.ROLE );
49  
50          Model model = modello.loadModel( getXmlResourceReader( "/features.mdo" ) );
51  
52          Properties parameters = getModelloParameters();
53          parameters.setProperty( ModelloParameterConstants.ALL_VERSIONS, ALL_VERSIONS );
54          parameters.setProperty( ModelloParameterConstants.PACKAGE_WITH_VERSION, Boolean.toString( true ) );
55  
56          String[] versions = ALL_VERSIONS.split( "," );
57  
58          for ( String version : versions )
59          {
60              parameters.setProperty( ModelloParameterConstants.VERSION, version );
61              modello.generate( model, "java", parameters );
62          }
63  
64          compileGeneratedSources();
65  
66          verifyCompiledGeneratedSources( "JavaVerifier" );
67      }
68  }