1 package org.apache.maven.it; 2 3 /* 4 * Licensed to the Apache Software Foundation (ASF) under one 5 * or more contributor license agreements. See the NOTICE file 6 * distributed with this work for additional information 7 * regarding copyright ownership. The ASF licenses this file 8 * to you under the Apache License, Version 2.0 (the 9 * "License"); you may not use this file except in compliance 10 * with the License. You may obtain a copy of the License at 11 * 12 * http://www.apache.org/licenses/LICENSE-2.0 13 * 14 * Unless required by applicable law or agreed to in writing, 15 * software distributed under the License is distributed on an 16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17 * KIND, either express or implied. See the License for the 18 * specific language governing permissions and limitations 19 * under the License. 20 */ 21 22 import java.io.File; 23 24 import org.apache.maven.it.util.ResourceExtractor; 25 26 /** 27 * This is a test set for <a href="https://issues.apache.org/jira/browse/MNG-3642">MNG-3642</a>. 28 * 29 * todo Fill in a better description of what this test verifies! 30 * 31 * @author <a href="mailto:brianf@apache.org">Brian Fox</a> 32 * @author jdcasey 33 * 34 */ 35 public class MavenITmng3642DynamicResourcesTest 36 extends AbstractMavenIntegrationTestCase 37 { 38 public MavenITmng3642DynamicResourcesTest() 39 { 40 super( "(2.0.9,)" ); // only test in 2.0.9+ 41 } 42 43 public void testitMNG3642 () 44 throws Exception 45 { 46 // The testdir is computed from the location of this 47 // file. 48 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-3642" ); 49 50 Verifier verifier; 51 52 /* 53 * We must first make sure that any artifact created 54 * by this test has been removed from the local 55 * repository. Failing to do this could cause 56 * unstable test results. Fortunately, the verifier 57 * makes it easy to do this. 58 */ 59 verifier = newVerifier( testDir.getAbsolutePath() ); 60 61 /* 62 * The Command Line Options (CLI) are passed to the 63 * verifier as a list. This is handy for things like 64 * redefining the local repository if needed. In 65 * this case, we use the -N flag so that Maven won't 66 * recurse. We are only installing the parent pom to 67 * the local repo here. 68 */ 69 verifier.executeGoal( "process-test-resources" ); 70 71 /* 72 * This is the simplest way to check a build 73 * succeeded. It is also the simplest way to create 74 * an IT test: make the build pass when the test 75 * should pass, and make the build fail when the 76 * test should fail. There are other methods 77 * supported by the verifier. They can be seen here: 78 * http://maven.apache.org/shared/maven-verifier/apidocs/index.html 79 */ 80 verifier.verifyErrorFreeLog(); 81 82 /* 83 * Reset the streams before executing the verifier 84 * again. 85 */ 86 verifier.resetStreams(); 87 88 File first = new File( testDir, "target/test-classes/one.txt" ); 89 assertTrue( "First resource file was not present: " + first, first.exists() ); 90 91 File second = new File( testDir, "target/test-classes/two.txt" ); 92 assertTrue( "Second resource file was not present: " + second, second.exists() ); 93 } 94 }