View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.apache.maven.plugins.dependency;
20  
21  import java.io.File;
22  import java.util.Set;
23  
24  import org.apache.maven.artifact.Artifact;
25  import org.apache.maven.project.MavenProject;
26  
27  public class TestPropertiesMojo extends AbstractDependencyMojoTestCase {
28      protected void setUp() throws Exception {
29          // required for mojo lookups to work
30          super.setUp("markers", true);
31      }
32  
33      /**
34       * tests the proper discovery and configuration of the mojo
35       *
36       * @throws Exception in case of errors
37       */
38      public void testSetProperties() throws Exception {
39          File testPom = new File(getBasedir(), "target/test-classes/unit/properties-test/plugin-config.xml");
40          PropertiesMojo mojo = (PropertiesMojo) lookupMojo("properties", testPom);
41  
42          assertNotNull(mojo);
43          MavenProject project = (MavenProject) getVariableValueFromObject(mojo, "project");
44          assertNotNull(project);
45  
46          Set<Artifact> artifacts = this.stubFactory.getScopedArtifacts();
47          Set<Artifact> directArtifacts = this.stubFactory.getReleaseAndSnapshotArtifacts();
48          artifacts.addAll(directArtifacts);
49  
50          project.setArtifacts(artifacts);
51          project.setDependencyArtifacts(directArtifacts);
52  
53          // this.assertNull( project.getProperties().getProperty( "org.apacha ) )
54          mojo.execute();
55  
56          for (Artifact artifact : artifacts) {
57              File artifactFile = artifact.getFile();
58              assertNotNull(artifact.getDependencyConflictId());
59              assertTrue(artifactFile.isFile());
60          }
61      }
62  }