You are viewing a plain text version of this content. The canonical link for it is here.
Posted to m2-dev@maven.apache.org by jv...@apache.org on 2004/06/24 02:06:40 UTC

cvs commit: maven-components/maven-core/src/test/java/org/apache/maven/project/inheritance/t00 ProjectInheritanceTest.java

jvanzyl     2004/06/23 17:06:40

  Added:       maven-core/src/test/java/org/apache/maven/project/inheritance/t00
                        ProjectInheritanceTest.java
  Log:
  o first in a series of new inheritance tests.
  
  Revision  Changes    Path
  1.1                  maven-components/maven-core/src/test/java/org/apache/maven/project/inheritance/t00/ProjectInheritanceTest.java
  
  Index: ProjectInheritanceTest.java
  ===================================================================
  /*
   * CopyrightPlugin (c) 2004 Your Corporation. All Rights Reserved.
   */
  package org.apache.maven.project.inheritance.t00;
  
  import org.apache.maven.model.MailingList;
  import org.apache.maven.project.MavenProject;
  import org.apache.maven.project.inheritance.ProjectInheritanceTestCase;
  
  /**
   * A test which demonstrates maven's recursive inheritance where
   * a distinct value is taken from each parent contributing to the
   * the final model of the project being assembled. There is no
   * overriding going on amongst the models being used in this test:
   * each model in the lineage is providing a value that is not present
   * anywhere else in the lineage. We are just making sure that values
   * down in the lineage are bubbling up where they should.
   *
   * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
   * @version $Id: ProjectInheritanceTest.java,v 1.1 2004/06/24 00:06:40 jvanzyl Exp $
   */
  public class ProjectInheritanceTest
      extends ProjectInheritanceTestCase
  {
      // ----------------------------------------------------------------------
      //
      // p4 inherits from p3
      // p3 inherits from p2
      // p2 inherits from p1
      // p1 inherits from p0
      // p0 inhertis from super model
      //
      // or we can show it graphically as:
      //
      // p4 ---> p3 ---> p2 ---> p1 ---> p0 --> super model
      //
      // ----------------------------------------------------------------------
  
      public void testProjectInheritance()
          throws Exception
      {
          MavenProject p0 = projectBuilder.build( projectFile( "p4" ) );
  
          assertEquals( "p4", p0.getName() );
  
          // ----------------------------------------------------------------------
          // Value inherited from p3
          // ----------------------------------------------------------------------
  
          assertEquals( "2000", p0.getInceptionYear() );
  
          // ----------------------------------------------------------------------
          // Value taken from p2
          // ----------------------------------------------------------------------
  
          assertEquals( "mailing-list", ((MailingList)p0.getMailingLists().get(0)).getName() );
  
          // ----------------------------------------------------------------------
          // Value taken from p1
          // ----------------------------------------------------------------------
  
          assertEquals( "scm-url", p0.getScm().getUrl() );
  
          // ----------------------------------------------------------------------
          // Value taken from p0
          // ----------------------------------------------------------------------
  
          assertEquals( "Codehaus", p0.getOrganization().getName() );
  
          // ----------------------------------------------------------------------
          // Value taken from super model
          // ----------------------------------------------------------------------
  
          assertEquals( "4.0.0", p0.getModelVersion() );
      }
  }