From 38f9db658f4eb1c09b0632e1f7ea4fe64bb45dff Mon Sep 17 00:00:00 2001 From: Jason van Zyl Date: Thu, 26 Oct 2006 05:00:09 +0000 Subject: [PATCH] moved git-svn-id: https://svn.apache.org/repos/asf/maven/core-integration-testing/trunk@467862 13f79535-47bb-0310-9956-ffa450edef68 --- its/maven-core-integration-tests/pom.xml | 34 + .../IntegrationTestSuite.java | 122 +++ .../integrationtests/MavenIT0000Test.java | 34 + .../integrationtests/MavenIT0001Test.java | 32 + .../integrationtests/MavenIT0002Test.java | 34 + .../integrationtests/MavenIT0003Test.java | 34 + .../integrationtests/MavenIT0004Test.java | 30 + .../integrationtests/MavenIT0005Test.java | 30 + .../integrationtests/MavenIT0006Test.java | 27 + .../integrationtests/MavenIT0007Test.java | 34 + .../integrationtests/MavenIT0008Test.java | 33 + .../integrationtests/MavenIT0009Test.java | 32 + .../integrationtests/MavenIT0010Test.java | 34 + .../integrationtests/MavenIT0011Test.java | 28 + .../integrationtests/MavenIT0012Test.java | 29 + .../integrationtests/MavenIT0013Test.java | 35 + .../integrationtests/MavenIT0014Test.java | 29 + .../integrationtests/MavenIT0016Test.java | 38 + .../integrationtests/MavenIT0017Test.java | 31 + .../integrationtests/MavenIT0018Test.java | 32 + .../integrationtests/MavenIT0019Test.java | 28 + .../integrationtests/MavenIT0020Test.java | 32 + .../integrationtests/MavenIT0021Test.java | 34 + .../integrationtests/MavenIT0022Test.java | 33 + .../integrationtests/MavenIT0023Test.java | 33 + .../integrationtests/MavenIT0024Test.java | 29 + .../integrationtests/MavenIT0025Test.java | 29 + .../integrationtests/MavenIT0026Test.java | 33 + .../integrationtests/MavenIT0027Test.java | 34 + .../integrationtests/MavenIT0028Test.java | 29 + .../integrationtests/MavenIT0029Test.java | 30 + .../integrationtests/MavenIT0030Test.java | 33 + .../integrationtests/MavenIT0031Test.java | 39 + .../integrationtests/MavenIT0032Test.java | 31 + .../integrationtests/MavenIT0033Test.java | 30 + .../integrationtests/MavenIT0034Test.java | 31 + .../integrationtests/MavenIT0035Test.java | 33 + .../integrationtests/MavenIT0036Test.java | 28 + .../integrationtests/MavenIT0037Test.java | 33 + .../integrationtests/MavenIT0038Test.java | 34 + .../integrationtests/MavenIT0039Test.java | 36 + .../integrationtests/MavenIT0040Test.java | 28 + .../integrationtests/MavenIT0041Test.java | 31 + .../integrationtests/MavenIT0042Test.java | 33 + .../integrationtests/MavenIT0043Test.java | 28 + .../integrationtests/MavenIT0044Test.java | 33 + .../integrationtests/MavenIT0045Test.java | 35 + .../integrationtests/MavenIT0046Test.java | 37 + .../integrationtests/MavenIT0047Test.java | 29 + .../integrationtests/MavenIT0048Test.java | 29 + .../integrationtests/MavenIT0049Test.java | 30 + .../integrationtests/MavenIT0050Test.java | 29 + .../integrationtests/MavenIT0051Test.java | 34 + .../integrationtests/MavenIT0052Test.java | 35 + .../integrationtests/MavenIT0053Test.java | 36 + .../integrationtests/MavenIT0054Test.java | 31 + .../integrationtests/MavenIT0055Test.java | 32 + .../integrationtests/MavenIT0056Test.java | 34 + .../integrationtests/MavenIT0057Test.java | 31 + .../integrationtests/MavenIT0058Test.java | 34 + .../integrationtests/MavenIT0059Test.java | 33 + .../integrationtests/MavenIT0060Test.java | 33 + .../integrationtests/MavenIT0061Test.java | 31 + .../integrationtests/MavenIT0062Test.java | 31 + .../integrationtests/MavenIT0063Test.java | 31 + .../integrationtests/MavenIT0064Test.java | 31 + .../integrationtests/MavenIT0065Test.java | 29 + .../integrationtests/MavenIT0066Test.java | 33 + .../integrationtests/MavenIT0067Test.java | 34 + .../integrationtests/MavenIT0068Test.java | 33 + .../integrationtests/MavenIT0069Test.java | 33 + .../integrationtests/MavenIT0070Test.java | 30 + .../integrationtests/MavenIT0071Test.java | 30 + .../integrationtests/MavenIT0072Test.java | 29 + .../integrationtests/MavenIT0073Test.java | 34 + .../integrationtests/MavenIT0074Test.java | 29 + .../integrationtests/MavenIT0075Test.java | 37 + .../integrationtests/MavenIT0076Test.java | 29 + .../integrationtests/MavenIT0077Test.java | 34 + .../integrationtests/MavenIT0078Test.java | 30 + .../integrationtests/MavenIT0079Test.java | 30 + .../integrationtests/MavenIT0080Test.java | 36 + .../integrationtests/MavenIT0081Test.java | 28 + .../integrationtests/MavenIT0082Test.java | 29 + .../integrationtests/MavenIT0083Test.java | 33 + .../integrationtests/MavenIT0084Test.java | 39 + .../integrationtests/MavenIT0085Test.java | 33 + .../integrationtests/MavenIT0086Test.java | 29 + .../integrationtests/MavenIT0087Test.java | 29 + .../integrationtests/MavenIT0088Test.java | 29 + .../integrationtests/MavenIT0089Test.java | 30 + .../integrationtests/MavenIT0090Test.java | 33 + .../integrationtests/MavenIT0091Test.java | 33 + .../integrationtests/MavenIT0092Test.java | 29 + .../integrationtests/MavenIT0094Test.java | 27 + .../integrationtests/MavenIT0095Test.java | 27 + .../integrationtests/MavenIT0096Test.java | 27 + .../integrationtests/MavenIT0097Test.java | 30 + .../integrationtests/MavenIT0098Test.java | 35 + .../integrationtests/MavenIT0099Test.java | 29 + .../integrationtests/MavenIT0100Test.java | 27 + .../integrationtests/MavenIT0101Test.java | 34 + .../integrationtests/MavenIT0102Test.java | 28 + .../integrationtests/MavenIT0103Test.java | 29 + .../integrationtests/MavenIT0104Test.java | 32 + .../integrationtests/MavenIT0105Test.java | 33 + .../integrationtests/MavenIT0106Test.java | 30 + .../integrationtests/MavenIT0107Test.java | 35 + .../org/apache/maven/integrationtests/fix.sh | 9 + .../src/test/resources/it0000/pom.xml | 21 + .../java/org/apache/maven/it0000/Person.java | 16 + .../org/apache/maven/it0000/PersonTest.java | 16 + .../src/test/resources/it0001/pom.xml | 19 + .../java/org/apache/maven/it0001/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0001/PersonTest.java | 16 + .../src/test/resources/it0002/pom.xml | 27 + .../java/org/apache/maven/it0002/Person.java | 16 + .../src/main/resources/it0002.properties | 1 + .../org/apache/maven/it0002/PersonTest.java | 16 + .../src/test/resources/it0003/pom.xml | 20 + .../java/org/apache/maven/it0003/Person.java | 16 + .../src/main/resources/it0003.properties | 1 + .../org/apache/maven/it0003/PersonTest.java | 16 + .../src/test/resources/it0004/pom.xml | 11 + .../src/test/resources/it0005/pom.xml | 10 + .../src/test/resources/it0006/pom.xml | 22 + .../src/test/verifier/verifications.xml | 15 + .../src/test/resources/it0007/pom.xml | 22 + .../java/org/apache/maven/it0007/Person.java | 16 + .../src/main/resources/it0007.properties | 1 + .../org/apache/maven/it0007/PersonTest.java | 16 + .../src/test/resources/it0008/pom.xml | 38 + .../java/org/apache/maven/it0008/Person.java | 16 + .../org/apache/maven/it0008/PersonTest.java | 16 + .../src/test/resources/it0009/pom.xml | 44 + .../src/test/resources/it0010/pom.xml | 32 + .../org/apache/maven/it0010/PersonFinder.java | 11 + .../apache/maven/it0010/PersonFinderTest.java | 14 + .../src/test/resources/it0011/pom.xml | 41 + .../org/apache/maven/it0011/PersonFinder.java | 6 + .../resources/it0012/child-project/pom.xml | 20 + .../src/test/resources/it0012/pom.xml | 24 + .../src/test/resources/it0013/pom.xml | 34 + .../maven/plugin/coreit/CoreIt0013Mojo.java | 70 ++ .../src/test/resources/it0014/pom.xml | 31 + .../java/org/apache/maven/it0014/Person.java | 18 + .../org/apache/maven/it0014/PersonTest.java | 16 + .../src/test/resources/it0016/pom.xml | 38 + .../java/org/apache/maven/it0016/Person.java | 16 + .../it0016/src/main/webapp/WEB-INF/web.xml | 5 + .../it0016/src/main/webapp/index.html | 5 + .../src/test/resources/it0017/pom.xml | 21 + .../java/org/apache/maven/it0017/Person.java | 16 + .../src/main/resources/META-INF/ejb-jar.xml | 22 + .../src/test/resources/it0018/pom.xml | 31 + .../src/test/resources/it0019/pom.xml | 16 + .../java/org/apache/maven/it0019/Person.java | 16 + .../src/test/resources/it0020/pom.xml | 45 + .../org/apache/maven/it0020/it0020.bsh | 28 + .../src/test/resources/it0021/pom.xml | 38 + .../java/org/apache/maven/it0021/Person.java | 16 + .../src/test/resources/it0022/pom.xml | 20 + .../src/test/resources/it0022/profiles.xml | 17 + .../java/org/apache/maven/it0022/Person.java | 16 + .../src/test/resources/it0023/pom.xml | 20 + .../src/test/resources/it0023/settings.xml | 21 + .../java/org/apache/maven/it0023/Person.java | 16 + .../src/test/resources/it0024/pom.xml | 40 + .../java/org/apache/maven/it0024/Person.java | 18 + .../org/apache/maven/it0024/PersonTest.java | 16 + .../src/test/resources/it0025/pom.xml | 40 + .../java/org/apache/maven/it0023/Person.java | 16 + .../test/resources/it0026/global-settings.xml | 17 + .../src/test/resources/it0026/pom.xml | 20 + .../java/org/apache/maven/it0026/Person.java | 16 + .../test/resources/it0026/user-settings.xml | 5 + .../src/test/resources/it0027/pom.xml | 18 + .../src/test/resources/it0028/pom.xml | 32 + .../java/org/apache/maven/it0028/Person.java | 18 + .../org/apache/maven/it0028/PersonTest.java | 16 + .../resources/it0029/child-project/pom.xml | 28 + .../java/org/apache/maven/it0029/Person.java | 18 + .../src/test/resources/it0029/pom.xml | 29 + .../resources/it0030/child-hierarchy/pom.xml | 22 + .../it0030/child-hierarchy/project1/pom.xml | 10 + .../it0030/child-hierarchy/project2/pom.xml | 16 + .../java/org/apache/maven/it0030/Person.java | 16 + .../src/test/resources/it0030/pom.xml | 27 + .../src/test/resources/it0031/pom.xml | 22 + .../src/test/resources/it0031/settings.xml | 19 + .../resources/it0031/src/main/mdo/test.mdo | 20 + .../src/test/resources/it0032/pom.xml | 22 + .../java/org/apache/maven/it0032/Person.java | 16 + .../src/main/resources/it0032.properties | 1 + .../org/apache/maven/it0032/PersonTest.java | 16 + .../src/test/resources/it0033/pom.xml | 21 + .../META-INF/appserver-application.xml | 4 + .../src/test/resources/it0034/pom.xml | 22 + .../src/test/resources/it0035/pom.xml | 22 + .../src/test/resources/it0036/pom.xml | 18 + .../src/test/resources/it0036/release-pom.xml | 16 + .../java/org/apache/maven/it0036/Person.java | 16 + .../org/apache/maven/it0036/PersonTest.java | 16 + .../src/test/resources/it0037/pom.xml | 18 + .../src/test/resources/it0037/pom2.xml | 16 + .../java/org/apache/maven/it0037/Person.java | 16 + .../org/apache/maven/it0000/PersonTest.java | 16 + .../src/test/resources/it0038/pom.xml | 19 + .../test/resources/it0038/project/pom2.xml | 16 + .../java/org/apache/maven/it0038/Person.java | 16 + .../org/apache/maven/it0000/PersonTest.java | 16 + .../src/test/resources/it0039/project/pom.xml | 16 + .../resources/it0039/project/release-pom.xml | 16 + .../java/org/apache/maven/it0039/Person.java | 16 + .../org/apache/maven/it0039/PersonTest.java | 16 + .../test/resources/it0039/project2/pom.xml | 16 + .../resources/it0039/project2/release-pom.xml | 16 + .../java/org/apache/maven/it0039/Person2.java | 16 + .../org/apache/maven/it0039/Person2Test.java | 16 + .../src/test/resources/it0040/pom.xml | 19 + .../src/test/resources/it0041/pom.xml | 26 + .../src/test/resources/it0042/pom.xml | 15 + .../resources/it0042/test-component-a/pom.xml | 12 + .../test-component-a/src/main/java/A.java | 3 + .../resources/it0042/test-component-b/pom.xml | 19 + .../test-component-b/src/main/java/B.java | 5 + .../resources/it0042/test-component-c/pom.xml | 40 + .../test-component-c/src/main/java/C.java | 5 + .../src/main/webapp/WEB-INF/web.xml | 5 + .../test/resources/it0042/test-plugin/pom.xml | 19 + .../maven/plugin/coreit/CoreItMojo.java | 77 ++ .../src/test/resources/it0043/pom.xml | 52 ++ .../inheritance/RepositoryOverrideTest.java | 26 + .../src/test/resources/it0044/pom.xml | 20 + .../src/test/resources/it0044/settings.xml | 15 + .../java/org/apache/maven/it0044/Person.java | 16 + .../src/test/resources/it0045/pom.xml | 12 + .../test/resources/it0045/subproject/pom.xml | 10 + .../src/test/resources/it0046/pom.xml | 14 + .../test/resources/it0046/subproject/pom.xml | 22 + .../test/resources/it0046/subproject2/pom.xml | 10 + .../src/test/resources/it0047/pom.xml | 16 + .../java/org/apache/maven/it0047/Person.java | 19 + .../src/test/resources/it0048/pom.xml | 19 + .../java/org/apache/maven/it0048/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0048/PersonTest.java | 40 + .../src/test/resources/it0049/pom.xml | 21 + .../src/test/resources/it0050/pom.xml | 34 + .../it0050/src/test/java/DefaultTest.java | 13 + .../it0050/src/test/java/DontRunTest.java | 9 + .../src/test/java/NotIncludedByDefault.java | 13 + .../src/test/resources/it0051/pom.xml | 18 + .../java/org/apache/maven/it0051/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0051/PersonTest.java | 16 + .../src/test/resources/it0052/pom.xml | 19 + .../java/org/apache/maven/it0052/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0001/PersonTest.java | 16 + .../src/test/resources/it0053/pom.xml | 27 + .../java/org/apache/maven/it0053/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0001/PersonTest.java | 16 + .../src/test/resources/it0054/pom.xml | 29 + .../src/main/filters/filters.properties | 2 + .../java/org/apache/maven/it0054/Person.java | 16 + .../src/main/resources/it0054.properties | 3 + .../org/apache/maven/it0054/PersonTest.java | 24 + .../src/test/resources/it0055/pom.xml | 36 + .../java/org/apache/maven/it0055/Person.java | 16 + .../org/apache/maven/it0055/PersonTwo.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0055/PersonTest.java | 16 + .../apache/maven/it0055/PersonTwoTest.java | 16 + .../src/test/resources/it0056/pom.xml | 45 + .../java/org/apache/maven/it0056/Person.java | 16 + .../org/apache/maven/it0056/PersonThree.java | 16 + .../org/apache/maven/it0056/PersonTwo.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0056/PersonTest.java | 16 + .../apache/maven/it0056/PersonThreeTest.java | 16 + .../apache/maven/it0056/PersonTwoTest.java | 16 + .../src/test/resources/it0057/pom.xml | 17 + .../java/org/apache/maven/it0057/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0057/PersonTest.java | 16 + .../src/test/resources/it0058/pom.xml | 14 + .../src/test/resources/it0058/settings.xml | 19 + .../test/resources/it0058/subproject/pom.xml | 18 + .../java/org/apache/maven/it0058/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0058/PersonTest.java | 16 + .../src/test/resources/it0059/pom.xml | 25 + .../java/org/apache/maven/it0059/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../test-repo/test/test/3.8.1/test-3.8.1.jar | Bin 0 -> 121070 bytes .../test-repo/test/test/3.8.1/test-3.8.1.pom | 5 + .../src/test/resources/it0060/pom.xml | 39 + .../test/resources/it0060/subproject/pom.xml | 24 + .../java/org/apache/maven/it0060/Person.java | 16 + .../src/main/resources/it0060.properties | 1 + .../org/apache/maven/it0060/PersonTest.java | 16 + .../apache/maven/it0060/PersonThreeTest.java | 16 + .../apache/maven/it0060/PersonTwoTest.java | 16 + .../src/test/resources/it0061/pom.xml | 29 + .../java/org/apache/maven/it0061/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../src/test/resources/it0062/pom.xml | 15 + .../java/org/apache/maven/it0062/Person.java | 16 + .../src/test/resources/it0063/pom.xml | 38 + .../java/org/apache/maven/it0063/Person.java | 18 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0063/PersonTest.java | 16 + .../src/test/resources/it0064/pom.xml | 32 + .../src/test/resources/it0065/plugin/pom.xml | 34 + .../maven/plugin/coreit/TestBasedirMojo.java | 76 ++ .../src/test/resources/it0065/pom.xml | 23 + .../test/resources/it0065/subproject/pom.xml | 27 + .../java/org/apache/maven/it0065/Person.java | 16 + .../src/main/resources/it0001.properties | 1 + .../org/apache/maven/it0065/PersonTest.java | 16 + .../apache/maven/it0065/PersonThreeTest.java | 16 + .../apache/maven/it0065/PersonTwoTest.java | 16 + .../src/test/resources/it0066/other-pom.xml | 7 + .../src/test/resources/it0067/pom.xml | 23 + .../java/org/apache/maven/it0067/Person.java | 18 + .../src/test/resources/it0068/pom.xml | 30 + .../src/test/resources/it0068/test.mdo | 769 ++++++++++++++++++ .../src/test/resources/it0069/pom.xml | 16 + .../maven/it0069/ClassworldBasedThing.java | 7 + .../src/test/resources/it0070/pom.xml | 22 + .../resources/it0070/src/main/custom/ra.xml | 4 + .../it0070/src/main/rar/SomeResource.txt | 0 .../src/test/resources/it0071/pom.xml | 34 + .../src/test/resources/it0072/pom.xml | 24 + .../src/test/resources/it0073/pom.xml | 20 + .../src/test/resources/it0074/pom.xml | 41 + .../java/org/apache/maven/it0074/Person.java | 6 + .../src/test/resources/it0075/pom.xml | 29 + .../src/test/resources/it0075/sub1/pom.xml | 9 + .../java/org/apache/maven/it0075/Person.java | 6 + .../src/test/resources/it0075/sub2/pom.xml | 9 + .../java/org/apache/maven/it0075/Person2.java | 6 + .../src/test/resources/it0076/pom.xml | 33 + .../src/test/resources/it0077/pom.xml | 30 + .../src/test/resources/it0077/settings.xml | 4 + .../src/test/resources/it0077/sub1/pom.xml | 41 + .../java/org/apache/maven/it0077/Person.java | 16 + .../org/apache/maven/it0077/PersonTest.java | 16 + .../src/test/resources/it0077/sub2/pom.xml | 25 + .../apache/maven/it0077/PersonTwoTest.java | 8 + .../src/test/resources/it0078/pom.xml | 25 + .../resources/it0078/src/main/java/Test.java | 6 + .../src/test/resources/it0079/pom.xml | 36 + .../java/org/apache/maven/it0079/Person.java | 6 + .../src/test/resources/it0080/pom.xml | 15 + .../resources/it0080/test-component-a/pom.xml | 12 + .../test-component-a/src/main/java/A.java | 3 + .../resources/it0080/test-component-b/pom.xml | 19 + .../test-component-b/src/main/java/B.java | 5 + .../src/main/webapp/WEB-INF/web.xml | 5 + .../resources/it0080/test-component-c/pom.xml | 20 + .../test-component-c/src/main/java/C.java | 5 + .../src/test/resources/it0081/pom.xml | 13 + .../resources/it0081/test-component-c/pom.xml | 34 + .../test/resources/it0081/test-plugin/pom.xml | 19 + .../maven/plugin/coreit/CoreItMojo.java | 75 ++ .../src/test/resources/it0082/pom.xml | 14 + .../resources/it0082/test-component-c/pom.xml | 31 + .../test-component-c/src/main/java/C.java | 5 + .../src/main/webapp/WEB-INF/web.xml | 5 + .../test/resources/it0082/test-plugin/pom.xml | 19 + .../maven/plugin/coreit/CoreItMojo.java | 77 ++ .../src/test/resources/it0083/pom.xml | 15 + .../resources/it0083/test-component-a/pom.xml | 12 + .../test-component-a/src/main/java/A.java | 3 + .../resources/it0083/test-component-b/pom.xml | 20 + .../test-component-b/src/main/java/B.java | 5 + .../resources/it0083/test-component-c/pom.xml | 25 + .../test-component-c/src/main/java/C.java | 5 + .../src/main/webapp/WEB-INF/web.xml | 5 + .../src/test/resources/it0084/pom.xml | 14 + .../resources/it0084/test-component-a/pom.xml | 19 + .../test-component-a/src/main/java/A.java | 3 + .../resources/it0084/test-component-b/pom.xml | 19 + .../test-component-b/src/main/java/B.java | 4 + .../resources/it0084/test-component-c/pom.xml | 29 + .../test-component-c/src/main/java/C.java | 4 + .../src/main/webapp/WEB-INF/web.xml | 5 + .../src/test/resources/it0085/dep/pom.xml | 15 + .../src/test/resources/it0085/pom.xml | 29 + .../src/test/resources/it0085/war/pom.xml | 24 + .../war/src/main/webapp/WEB-INF/web.xml | 2 + .../src/test/resources/it0086/pom.xml | 30 + .../src/test/resources/it0087/pom.xml | 40 + .../src/test/resources/it0088/pom.xml | 45 + .../it0088/src/main/resources/test.properties | 1 + .../maven/it0088/PomInterpolationTest.java | 53 ++ .../src/test/resources/it0089/plugin/pom.xml | 24 + .../org/apache/maven/plugins/it0089/Mojo.java | 71 ++ .../src/test/resources/it0089/pom.xml | 17 + .../src/test/resources/it0089/project/pom.xml | 25 + .../src/test/resources/it0090/pom.xml | 44 + .../it0090/src/main/resources/test.properties | 2 + .../maven/it0090/PomInterpolationTest.java | 35 + .../src/test/resources/it0091/pom.xml | 41 + .../it0091/src/main/java/source.properties | 1 + .../it0091/src/main/resources/test.properties | 2 + .../maven/it0091/PomInterpolationTest.java | 51 ++ .../src/test/resources/it0092/pom.xml | 22 + .../maven-core-it-support-1.0-SNAPSHOT.jar | 1 + .../src/test/resources/it0094/mojo/pom.xml | 58 ++ .../java/org/codehaus/mojo/kodo/Enhance.java | 173 ++++ .../src/test/resources/it0094/pom.xml | 17 + .../src/test/resources/it0094/test/pom.xml | 31 + .../src/test/resources/it0095/parent/pom.xml | 19 + .../src/test/resources/it0095/pom.xml | 18 + .../src/test/resources/it0095/sub1/pom.xml | 41 + .../sub1/src/test/verifier/verifications.xml | 12 + .../src/test/resources/it0096/plugin/pom.xml | 17 + .../org/apache/maven/it0096/It0096Mojo.java | 56 ++ .../src/test/resources/it0096/pom.xml | 14 + .../src/test/resources/it0096/project/pom.xml | 32 + .../it0096/project/project-level2/pom.xml | 14 + .../project-level2/project-level3/pom.xml | 14 + .../project-level3/project-jar/pom.xml | 33 + .../main/java/com/stchome/mavenTest/App.java | 13 + .../java/com/stchome/mavenTest/AppTest.java | 38 + .../src/test/resources/it0097/plugin/pom.xml | 14 + .../org/apache/maven/it0096/It0096Mojo.java | 56 ++ .../src/test/resources/it0097/pom.xml | 16 + .../src/test/resources/it0097/project/pom.xml | 29 + .../it0097/project/project-level2/pom.xml | 15 + .../project-level2/project-level3/pom.xml | 33 + .../main/java/com/stchome/mavenTest/App.java | 13 + .../java/com/stchome/mavenTest/AppTest.java | 38 + .../project/project-sibling-level2/pom.xml | 34 + .../main/java/com/stchome/mavenTest/App.java | 13 + .../java/com/stchome/mavenTest/AppTest.java | 38 + .../project/relative-project-level2/pom.xml | 14 + .../relative-project-level3/pom.xml | 14 + .../src/test/resources/it0098/pom.xml | 15 + .../it/it0098/QuotedCLIPropertyTest.java | 14 + .../src/test/resources/it0099/child/pom.xml | 9 + .../src/test/resources/it0099/pom.xml | 15 + .../resources/it0100/parent/child/pom.xml | 46 ++ .../child/src/test/verifier/verifications.xml | 8 + .../src/test/resources/it0100/parent/pom.xml | 32 + .../src/test/resources/it0100/pom.xml | 13 + .../test/resources/it0101/lib/test-dep.txt | 1 + .../src/test/resources/it0101/pom.xml | 21 + .../src/test/resources/it0101/settings.xml | 13 + .../src/test/resources/it0102/pom.xml | 68 ++ .../src/test/resources/it0102/profiles.xml | 14 + .../src/test/verifier/verifications.xml | 12 + .../it0103/level1/level2/level3/pom.xml | 10 + .../resources/it0103/level1/level2/pom.xml | 14 + .../src/test/resources/it0103/level1/pom.xml | 13 + .../src/test/resources/it0103/pom.xml | 14 + .../src/test/resources/it0104/pom.xml | 40 + .../main/java/org/apache/maven/it/App.java | 13 + .../java/org/apache/maven/it/AppTest.java | 29 + .../test/resources/it0105/filter.properties | 0 .../src/test/resources/it0105/pom.xml | 36 + .../it0105/src/main/resources/test.properties | 3 + .../org/apache/maven/it0105/FilterTest.java | 49 ++ .../src/test/resources/it0106/A/pom.xml | 28 + .../src/test/resources/it0106/C/pom.xml | 31 + .../src/test/resources/it0106/pom.xml | 39 + .../src/test/resources/it0107/pom.xml | 32 + .../src/test/resources/pom.xml | 123 +++ its/maven-core-it-support/1.0/pom.xml | 33 + .../java/org/apache/maven/it/Support.java | 5 + .../1.1-old-location/pom.xml | 37 + its/maven-core-it-support/1.1/pom.xml | 33 + .../java/org/apache/maven/it/Support.java | 5 + its/maven-core-it-support/1.2/pom.xml | 43 + .../java/org/apache/maven/it/Support.java | 5 + its/maven-core-it-support/1.3/pom.xml | 56 ++ .../java/org/apache/maven/it/Support.java | 5 + its/maven-core-it-support/1.4/pom.xml | 50 ++ .../java/org/apache/maven/it/Support.java | 5 + .../maven-it-plugin-context-passing/pom.xml | 39 + .../apache/maven/plugin/coreit/CatchMojo.java | 78 ++ .../apache/maven/plugin/coreit/ThrowMojo.java | 39 + .../maven-it-plugin-fork/pom.xml | 44 + .../maven/plugin/coreit/CoreItForkerMojo.java | 54 ++ .../plugin/coreit/CoreItGoalForkerMojo.java | 54 ++ .../maven/plugin/coreit/CoreItMojo.java | 151 ++++ .../resources/META-INF/maven/lifecycle.xml | 28 + .../pom.xml | 39 + .../InterpolatedEnvarConfigurationMojo.java | 52 ++ .../pom.xml | 39 + .../InterpolatedPomConfigurationMojo.java | 65 ++ .../maven-it-plugin-loadable/pom.xml | 44 + .../maven/plugin/coreit/LoadableMojo.java | 59 ++ .../maven-it-plugin-no-project/pom.xml | 39 + .../maven/plugin/coreit/NoProjectMojo.java | 79 ++ .../maven-it-plugin-packaging/pom.xml | 54 ++ .../maven/plugin/coreit/PackagingMojo.java | 81 ++ .../resources/META-INF/plexus/components.xml | 27 + .../pom.xml | 39 + .../org/apache/maven/plugin/coreit/Bla.java | 7 + .../coreit/ParameterImplementationMojo.java | 42 + .../apache/maven/plugin/coreit/sub/MyBla.java | 26 + .../maven-it-plugin-setter/pom.xml | 39 + .../plugin/coreit/CoreItMojoWithSetters.java | 113 +++ .../maven-it-plugin-touch/pom.xml | 54 ++ .../maven/plugin/coreit/CoreItMojo.java | 151 ++++ its/maven-it-plugins/pom.xml | 24 + its/maven-it-plugins/used.txt | 8 + its/mavenexecute.pl | 331 ++++++++ its/pom.xml | 54 ++ its/pom.xml.release | 54 ++ its/run.sh | 10 + 517 files changed, 13933 insertions(+) create mode 100644 its/maven-core-integration-tests/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/IntegrationTestSuite.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0000Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0001Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0002Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0003Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0004Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0005Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0006Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0007Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0008Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0009Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0010Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0011Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0012Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0013Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0014Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0016Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0017Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0018Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0019Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0020Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0021Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0022Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0023Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0024Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0025Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0026Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0027Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0028Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0029Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0030Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0031Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0032Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0033Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0034Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0035Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0036Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0037Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0038Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0039Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0040Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0041Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0042Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0043Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0044Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0045Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0046Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0047Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0048Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0049Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0050Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0051Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0052Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0053Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0054Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0055Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0056Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0057Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0058Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0059Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0060Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0061Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0062Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0063Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0064Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0065Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0066Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0067Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0068Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0069Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0070Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0071Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0072Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0073Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0074Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0075Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0076Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0077Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0078Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0079Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0080Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0081Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0082Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0083Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0084Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0085Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0086Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0087Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0088Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0089Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0090Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0091Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0092Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0094Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0095Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0096Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0097Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0098Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0099Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0100Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0101Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0102Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0103Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0104Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0105Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0106Test.java create mode 100644 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0107Test.java create mode 100755 its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/fix.sh create mode 100644 its/maven-core-integration-tests/src/test/resources/it0000/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0000/src/main/java/org/apache/maven/it0000/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0000/src/test/java/org/apache/maven/it0000/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0001/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0001/src/main/java/org/apache/maven/it0001/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0001/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0001/src/test/java/org/apache/maven/it0001/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0002/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0002/src/main/java/org/apache/maven/it0002/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0002/src/main/resources/it0002.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0002/src/test/java/org/apache/maven/it0002/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0003/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0003/src/main/java/org/apache/maven/it0003/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0003/src/main/resources/it0003.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0003/src/test/java/org/apache/maven/it0003/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0004/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0005/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0006/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0006/src/test/verifier/verifications.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0007/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0007/src/main/java/org/apache/maven/it0007/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0007/src/main/resources/it0007.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0007/src/test/java/org/apache/maven/it0007/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0008/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0008/src/main/java/org/apache/maven/it0008/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0008/src/test/java/org/apache/maven/it0008/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0009/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0010/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0010/src/main/java/org/apache/maven/it0010/PersonFinder.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0010/src/test/java/org/apache/maven/it0010/PersonFinderTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0011/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0011/src/main/java/org/apache/maven/it0011/PersonFinder.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0012/child-project/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0012/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0013/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0013/src/main/java/org/apache/maven/plugin/coreit/CoreIt0013Mojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0014/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0014/src/main/java/org/apache/maven/it0014/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0014/src/test/java/org/apache/maven/it0014/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0016/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0016/src/main/java/org/apache/maven/it0016/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/WEB-INF/web.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/index.html create mode 100644 its/maven-core-integration-tests/src/test/resources/it0017/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0017/src/main/java/org/apache/maven/it0017/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0017/src/main/resources/META-INF/ejb-jar.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0018/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0019/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0019/src/main/java/org/apache/maven/it0019/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0020/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0020/src/main/scripts/org/apache/maven/it0020/it0020.bsh create mode 100644 its/maven-core-integration-tests/src/test/resources/it0021/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0021/src/main/java/org/apache/maven/it0021/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0022/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0022/profiles.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0022/src/main/java/org/apache/maven/it0022/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0023/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0023/settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0023/src/main/java/org/apache/maven/it0023/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0024/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0024/src/main/java/org/apache/maven/it0024/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0024/src/test/java/org/apache/maven/it0024/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0025/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0025/src/main/java/org/apache/maven/it0023/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0026/global-settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0026/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0026/src/main/java/org/apache/maven/it0026/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0026/user-settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0027/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0028/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0028/src/main/java/org/apache/maven/it0028/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0028/src/test/java/org/apache/maven/it0028/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0029/child-project/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0029/child-project/src/main/java/org/apache/maven/it0029/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0029/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project1/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/src/main/java/org/apache/maven/it0030/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0030/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0031/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0031/settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0031/src/main/mdo/test.mdo create mode 100644 its/maven-core-integration-tests/src/test/resources/it0032/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0032/src/main/java/org/apache/maven/it0032/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0032/src/main/resources/it0032.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0032/src/test/java/org/apache/maven/it0032/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0033/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0033/src/main/application/META-INF/appserver-application.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0034/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0035/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0036/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0036/release-pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0036/src/main/java/org/apache/maven/it0036/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0036/src/test/java/org/apache/maven/it0036/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0037/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0037/pom2.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0037/src/main/java/org/apache/maven/it0037/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0037/src/test/java/org/apache/maven/it0000/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0038/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0038/project/pom2.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0038/project/src/main/java/org/apache/maven/it0038/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0038/project/src/test/java/org/apache/maven/it0000/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project/release-pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project/src/main/java/org/apache/maven/it0039/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project/src/test/java/org/apache/maven/it0039/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project2/release-pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project2/src/main/java/org/apache/maven/it0039/Person2.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0039/project2/src/test/java/org/apache/maven/it0039/Person2Test.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0040/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0041/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/src/main/java/A.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/src/main/java/B.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/java/C.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/webapp/WEB-INF/web.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0043/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0043/src/test/java/org/apache/maven/project/inheritance/RepositoryOverrideTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0044/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0044/settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0044/src/main/java/org/apache/maven/it0044/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0045/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0045/subproject/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0046/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0046/subproject/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0046/subproject2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0047/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0047/src/main/java/org/apache/maven/it0047/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0048/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0048/src/main/java/org/apache/maven/it0048/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0048/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0048/src/test/java/org/apache/maven/it0048/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0049/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0050/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DefaultTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DontRunTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/NotIncludedByDefault.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0051/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0051/src/main/java/org/apache/maven/it0051/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0051/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0051/src/test/java/org/apache/maven/it0051/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0052/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0052/src/main/java/org/apache/maven/it0052/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0052/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0052/src/test/java/org/apache/maven/it0001/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0053/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0053/src/main/java/org/apache/maven/it0053/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0053/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0053/src/test/java/org/apache/maven/it0001/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0054/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0054/src/main/filters/filters.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0054/src/main/java/org/apache/maven/it0054/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0054/src/main/resources/it0054.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0054/src/test/java/org/apache/maven/it0054/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0055/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/PersonTwo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0055/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTwoTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonThree.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonTwo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonThreeTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTwoTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0057/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0057/src/main/java/org/apache/maven/it0057/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0057/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0057/src/test/java/org/apache/maven/it0057/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0058/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0058/settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0058/subproject/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/java/org/apache/maven/it0058/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/test/java/org/apache/maven/it0058/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0059/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0059/src/main/java/org/apache/maven/it0059/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0059/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0059/test-repo/test/test/3.8.1/test-3.8.1.jar create mode 100644 its/maven-core-integration-tests/src/test/resources/it0059/test-repo/test/test/3.8.1/test-3.8.1.pom create mode 100644 its/maven-core-integration-tests/src/test/resources/it0060/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0060/subproject/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/java/org/apache/maven/it0060/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/resources/it0060.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonThreeTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTwoTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0061/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0061/src/main/java/org/apache/maven/it0061/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0061/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0062/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0062/src/main/java/org/apache/maven/it0062/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0063/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0063/src/main/java/org/apache/maven/it0063/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0063/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0063/src/test/java/org/apache/maven/it0063/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0064/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/plugin/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/plugin/src/main/java/org/apache/maven/plugin/coreit/TestBasedirMojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/subproject/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/java/org/apache/maven/it0065/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/resources/it0001.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonThreeTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTwoTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0066/other-pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0067/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0067/src/main/java/org/apache/maven/it0067/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0068/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0068/test.mdo create mode 100644 its/maven-core-integration-tests/src/test/resources/it0069/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0069/src/main/java/org/apache/maven/it0069/ClassworldBasedThing.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0070/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0070/src/main/custom/ra.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0070/src/main/rar/SomeResource.txt create mode 100644 its/maven-core-integration-tests/src/test/resources/it0071/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0072/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0073/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0074/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0074/src/main/java/org/apache/maven/it0074/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0075/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0075/sub1/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0075/sub1/src/main/java/org/apache/maven/it0075/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0075/sub2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0075/sub2/src/main/java/org/apache/maven/it0075/Person2.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0076/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0077/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0077/settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0077/sub1/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/main/java/org/apache/maven/it0077/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/test/java/org/apache/maven/it0077/PersonTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0077/sub2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0077/sub2/src/test/java/org/apache/maven/it0077/PersonTwoTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0078/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0078/src/main/java/Test.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0079/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0079/src/main/java/org/apache/maven/it0079/Person.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/src/main/java/A.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/java/B.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/webapp/WEB-INF/web.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/src/main/java/C.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0081/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0081/test-component-c/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0082/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/java/C.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/webapp/WEB-INF/web.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/src/main/java/A.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/src/main/java/B.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/java/C.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/webapp/WEB-INF/web.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/src/main/java/A.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/src/main/java/B.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/java/C.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/webapp/WEB-INF/web.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0085/dep/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0085/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0085/war/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0085/war/src/main/webapp/WEB-INF/web.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0086/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0087/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0088/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0088/src/main/resources/test.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0088/src/test/java/org/apache/maven/it0088/PomInterpolationTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0089/plugin/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0089/plugin/src/main/java/org/apache/maven/plugins/it0089/Mojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0089/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0089/project/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0090/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0090/src/main/resources/test.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0090/src/test/java/org/apache/maven/it0090/PomInterpolationTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0091/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0091/src/main/java/source.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0091/src/main/resources/test.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0091/src/test/java/org/apache/maven/it0091/PomInterpolationTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0092/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0092/repository/org.apache.maven/jars/maven-core-it-support-1.0-SNAPSHOT.jar create mode 100644 its/maven-core-integration-tests/src/test/resources/it0094/mojo/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0094/mojo/src/main/java/org/codehaus/mojo/kodo/Enhance.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0094/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0094/test/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0095/parent/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0095/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0095/sub1/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0095/sub1/src/test/verifier/verifications.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/plugin/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/project/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/main/java/com/stchome/mavenTest/App.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/test/java/com/stchome/mavenTest/AppTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/plugin/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/main/java/com/stchome/mavenTest/App.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/test/java/com/stchome/mavenTest/AppTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/main/java/com/stchome/mavenTest/App.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/test/java/com/stchome/mavenTest/AppTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/relative-project-level3/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0098/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0098/src/test/java/org/apache/maven/it/it0098/QuotedCLIPropertyTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0099/child/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0099/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0100/parent/child/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0100/parent/child/src/test/verifier/verifications.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0100/parent/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0100/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0101/lib/test-dep.txt create mode 100644 its/maven-core-integration-tests/src/test/resources/it0101/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0101/settings.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0102/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0102/profiles.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0102/src/test/verifier/verifications.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/level3/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0103/level1/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0103/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0104/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0104/src/main/java/org/apache/maven/it/App.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0104/src/test/java/org/apache/maven/it/AppTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0105/filter.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0105/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0105/src/main/resources/test.properties create mode 100644 its/maven-core-integration-tests/src/test/resources/it0105/src/test/java/org/apache/maven/it0105/FilterTest.java create mode 100644 its/maven-core-integration-tests/src/test/resources/it0106/A/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0106/C/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0106/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/it0107/pom.xml create mode 100644 its/maven-core-integration-tests/src/test/resources/pom.xml create mode 100644 its/maven-core-it-support/1.0/pom.xml create mode 100644 its/maven-core-it-support/1.0/src/main/java/org/apache/maven/it/Support.java create mode 100644 its/maven-core-it-support/1.1-old-location/pom.xml create mode 100644 its/maven-core-it-support/1.1/pom.xml create mode 100644 its/maven-core-it-support/1.1/src/main/java/org/apache/maven/it/Support.java create mode 100644 its/maven-core-it-support/1.2/pom.xml create mode 100644 its/maven-core-it-support/1.2/src/main/java/org/apache/maven/it/Support.java create mode 100644 its/maven-core-it-support/1.3/pom.xml create mode 100644 its/maven-core-it-support/1.3/src/main/java/org/apache/maven/it/Support.java create mode 100644 its/maven-core-it-support/1.4/pom.xml create mode 100644 its/maven-core-it-support/1.4/src/main/java/org/apache/maven/it/Support.java create mode 100644 its/maven-it-plugins/maven-it-plugin-context-passing/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/CatchMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/ThrowMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-fork/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItForkerMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItGoalForkerMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-fork/src/main/resources/META-INF/maven/lifecycle.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-generate-envar-properties/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-generate-envar-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedEnvarConfigurationMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-generate-properties/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-generate-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedPomConfigurationMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-loadable/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-loadable/src/main/java/org/apache/maven/plugin/coreit/LoadableMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-no-project/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-no-project/src/main/java/org/apache/maven/plugin/coreit/NoProjectMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-packaging/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-packaging/src/main/java/org/apache/maven/plugin/coreit/PackagingMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-packaging/src/main/resources/META-INF/plexus/components.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-parameter-implementation/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/Bla.java create mode 100644 its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/ParameterImplementationMojo.java create mode 100644 its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/sub/MyBla.java create mode 100644 its/maven-it-plugins/maven-it-plugin-setter/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-setter/src/main/java/org/apache/maven/plugin/coreit/CoreItMojoWithSetters.java create mode 100644 its/maven-it-plugins/maven-it-plugin-touch/pom.xml create mode 100644 its/maven-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java create mode 100644 its/maven-it-plugins/pom.xml create mode 100644 its/maven-it-plugins/used.txt create mode 100644 its/mavenexecute.pl create mode 100644 its/pom.xml create mode 100644 its/pom.xml.release create mode 100755 its/run.sh diff --git a/its/maven-core-integration-tests/pom.xml b/its/maven-core-integration-tests/pom.xml new file mode 100644 index 0000000000..a4ae940c6c --- /dev/null +++ b/its/maven-core-integration-tests/pom.xml @@ -0,0 +1,34 @@ + + 4.0.0 + org.apache.maven.integrationtests + maven-core-integrationtests + 1.0-SNAPSHOT + Maven Integration Tests + + + + org.apache.maven.plugins + maven-surefire-plugin + + + **/IntegrationTestSuite.java + + never + + + + + + + org.apache.maven.shared + maven-verifier + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + test + + + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/IntegrationTestSuite.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/IntegrationTestSuite.java new file mode 100644 index 0000000000..24803d2414 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/IntegrationTestSuite.java @@ -0,0 +1,122 @@ +package org.apache.maven.integrationtests; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; +import junit.framework.TestResult; + +public class IntegrationTestSuite + extends TestCase +{ + public static Test suite() + { + TestSuite suite = new TestSuite(); + suite.addTestSuite( MavenIT0000Test.class ); + suite.addTestSuite( MavenIT0001Test.class ); + suite.addTestSuite( MavenIT0002Test.class ); + suite.addTestSuite( MavenIT0003Test.class ); + suite.addTestSuite( MavenIT0004Test.class ); + suite.addTestSuite( MavenIT0005Test.class ); + suite.addTestSuite( MavenIT0006Test.class ); + suite.addTestSuite( MavenIT0007Test.class ); + suite.addTestSuite( MavenIT0008Test.class ); + suite.addTestSuite( MavenIT0009Test.class ); + suite.addTestSuite( MavenIT0010Test.class ); + suite.addTestSuite( MavenIT0011Test.class ); + suite.addTestSuite( MavenIT0012Test.class ); + suite.addTestSuite( MavenIT0013Test.class ); + suite.addTestSuite( MavenIT0014Test.class ); + suite.addTestSuite( MavenIT0016Test.class ); + suite.addTestSuite( MavenIT0017Test.class ); + suite.addTestSuite( MavenIT0018Test.class ); + suite.addTestSuite( MavenIT0019Test.class ); + suite.addTestSuite( MavenIT0020Test.class ); + suite.addTestSuite( MavenIT0021Test.class ); + suite.addTestSuite( MavenIT0022Test.class ); + suite.addTestSuite( MavenIT0023Test.class ); + suite.addTestSuite( MavenIT0024Test.class ); + suite.addTestSuite( MavenIT0025Test.class ); + suite.addTestSuite( MavenIT0026Test.class ); + suite.addTestSuite( MavenIT0027Test.class ); + suite.addTestSuite( MavenIT0028Test.class ); + suite.addTestSuite( MavenIT0029Test.class ); + suite.addTestSuite( MavenIT0030Test.class ); + suite.addTestSuite( MavenIT0031Test.class ); + suite.addTestSuite( MavenIT0032Test.class ); + suite.addTestSuite( MavenIT0033Test.class ); + suite.addTestSuite( MavenIT0034Test.class ); + suite.addTestSuite( MavenIT0035Test.class ); + suite.addTestSuite( MavenIT0036Test.class ); + suite.addTestSuite( MavenIT0037Test.class ); + suite.addTestSuite( MavenIT0038Test.class ); + suite.addTestSuite( MavenIT0039Test.class ); + suite.addTestSuite( MavenIT0040Test.class ); + suite.addTestSuite( MavenIT0041Test.class ); + suite.addTestSuite( MavenIT0042Test.class ); + suite.addTestSuite(MavenIT0043Test.class); + suite.addTestSuite( MavenIT0044Test.class ); + suite.addTestSuite( MavenIT0045Test.class ); + suite.addTestSuite( MavenIT0046Test.class ); + suite.addTestSuite( MavenIT0047Test.class ); + suite.addTestSuite( MavenIT0048Test.class ); + suite.addTestSuite( MavenIT0049Test.class ); + suite.addTestSuite( MavenIT0050Test.class ); + suite.addTestSuite( MavenIT0051Test.class ); + suite.addTestSuite( MavenIT0052Test.class ); + suite.addTestSuite( MavenIT0053Test.class ); + suite.addTestSuite( MavenIT0054Test.class ); + suite.addTestSuite( MavenIT0055Test.class ); + suite.addTestSuite( MavenIT0056Test.class ); + suite.addTestSuite( MavenIT0057Test.class ); + suite.addTestSuite( MavenIT0058Test.class ); + suite.addTestSuite( MavenIT0059Test.class ); + suite.addTestSuite( MavenIT0060Test.class ); + suite.addTestSuite( MavenIT0061Test.class ); + suite.addTestSuite( MavenIT0062Test.class ); + suite.addTestSuite( MavenIT0063Test.class ); + suite.addTestSuite( MavenIT0064Test.class ); + suite.addTestSuite( MavenIT0065Test.class ); + suite.addTestSuite( MavenIT0066Test.class ); + suite.addTestSuite( MavenIT0067Test.class ); + suite.addTestSuite( MavenIT0068Test.class ); + suite.addTestSuite( MavenIT0069Test.class ); + suite.addTestSuite( MavenIT0070Test.class ); + suite.addTestSuite( MavenIT0071Test.class ); + suite.addTestSuite( MavenIT0072Test.class ); + suite.addTestSuite( MavenIT0073Test.class ); + suite.addTestSuite( MavenIT0074Test.class ); + suite.addTestSuite( MavenIT0075Test.class ); + suite.addTestSuite( MavenIT0076Test.class ); + suite.addTestSuite( MavenIT0077Test.class ); + suite.addTestSuite( MavenIT0078Test.class ); + suite.addTestSuite( MavenIT0079Test.class ); + suite.addTestSuite( MavenIT0080Test.class ); + suite.addTestSuite( MavenIT0081Test.class ); + suite.addTestSuite( MavenIT0082Test.class ); + suite.addTestSuite( MavenIT0083Test.class ); + suite.addTestSuite( MavenIT0084Test.class ); + suite.addTestSuite( MavenIT0085Test.class ); + suite.addTestSuite( MavenIT0086Test.class ); + suite.addTestSuite( MavenIT0087Test.class ); + suite.addTestSuite( MavenIT0088Test.class ); + suite.addTestSuite( MavenIT0089Test.class ); + // suite.addTestSuite(MavenIT0090Test.class); + // suite.addTestSuite(MavenIT0091Test.class); + suite.addTestSuite( MavenIT0092Test.class ); + suite.addTestSuite( MavenIT0094Test.class ); + suite.addTestSuite( MavenIT0095Test.class ); + suite.addTestSuite(MavenIT0096Test.class); + suite.addTestSuite(MavenIT0097Test.class); + // suite.addTestSuite(MavenIT0098Test.class); + suite.addTestSuite( MavenIT0099Test.class ); + suite.addTestSuite( MavenIT0100Test.class ); + suite.addTestSuite( MavenIT0101Test.class ); + suite.addTestSuite( MavenIT0102Test.class ); + suite.addTestSuite( MavenIT0103Test.class ); + // suite.addTestSuite(MavenIT0104Test.class); + suite.addTestSuite( MavenIT0105Test.class ); + // suite.addTestSuite(MavenIT0106Test.class); + // suite.addTestSuite(MavenIT0107Test.class); + return suite; + } +} diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0000Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0000Test.java new file mode 100644 index 0000000000..1432f3cc9d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0000Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0000Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * The simplest of builds. We have one application class and one test + * class. There are no resources, no source generation, no resource + * generation and a the super model is employed to provide the build + * information. + */ + public void testit0000() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0000" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0000/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0000/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0000-1.0.jar" ); + verifier.assertFilePresent( "target/surefire-reports/org.apache.maven.it0000.PersonTest.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0000 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0001Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0001Test.java new file mode 100644 index 0000000000..5430a1d3a2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0001Test.java @@ -0,0 +1,32 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0001Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Builds upon it0000: we add an application resource that is packaged + * up in the resultant JAR. + */ + public void testit0001() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0001" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0001/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0001-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0001-1.0.jar!/it0001.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0001 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0002Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0002Test.java new file mode 100644 index 0000000000..1ea6c4f0de --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0002Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0002Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Builds upon it0001: we add the download of a dependency. We delete + * the JAR from the local repository and make sure it is there post build. + */ + public void testit0002() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0002" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.0", "jar" ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0002/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0002/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0002-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0002-1.0.jar!/it0002.properties" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.0", "jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0002 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0003Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0003Test.java new file mode 100644 index 0000000000..063fcd6bf5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0003Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0003Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Builds upon it0001: we add a jar installation step. We delete the JAR + * from the local repository to make sure it is there post build. + */ + public void testit0003() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0003" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-it-it0003", "1.0", "jar" ); + verifier.executeGoal( "install" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0003/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0003/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0003-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0003-1.0.jar!/it0003.properties" ); + verifier.assertArtifactPresent( "org.apache.maven.its.it0003", "maven-it-it0003", "1.0", "jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0003 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0004Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0004Test.java new file mode 100644 index 0000000000..12032ed18e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0004Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0004Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * The simplest of pom installation. We have a pom and we install it in + * local repository. + */ + public void testit0004() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0004" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-it-it0004", "1.0", "pom" ); + verifier.executeGoal( "install:install" ); + verifier.assertArtifactPresent( "org.apache.maven.its.it0004", "maven-it-it0004", "1.0", "pom" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0004 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0005Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0005Test.java new file mode 100644 index 0000000000..8452591474 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0005Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0005Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * The simplest of pom installation. We have a snapshot pom and we install + * it in local repository. + */ + public void testit0005() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0005" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-it-it0005", "1.0-SNAPSHOT", "pom" ); + verifier.executeGoal( "install:install" ); + verifier.assertArtifactPresent( "org.apache.maven.its.it0005", "maven-it-it0005", "1.0-SNAPSHOT", "pom" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0005 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0006Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0006Test.java new file mode 100644 index 0000000000..e5e4c53ce6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0006Test.java @@ -0,0 +1,27 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0006Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Integration test for the verifier plugin. + */ + public void testit0006() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0006" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "integration-test" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0006 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0007Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0007Test.java new file mode 100644 index 0000000000..2642ab98fb --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0007Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0007Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * We specify a parent in the POM and make sure that it is downloaded as + * part of the process. + */ + public void testit0007() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0007" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.plugins", "maven-plugin-parent", "2.0", "pom" ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0007/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0007/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0007-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0007-1.0.jar!/it0007.properties" ); + verifier.assertArtifactPresent( "org.apache.maven.plugins", "maven-plugin-parent", "2.0", "pom" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0007 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0008Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0008Test.java new file mode 100644 index 0000000000..4fb6c09b27 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0008Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0008Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Simple goal decoration where a plugin binds to a phase and the plugin must + * be downloaded from a remote repository before it can be executed. This + * test also checks to make sure that mojo parameters are aligned to the + * project basedir when their type is "java.io.File". + */ + public void testit0008() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0008" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-plugin-touch", "1.0", "maven-plugin" ); + verifier.executeGoal( "compile" ); + verifier.assertFilePresent( "target/touch.txt" ); + verifier.assertFilePresent( "target/test-basedir-alignment/touch.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0008 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0009Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0009Test.java new file mode 100644 index 0000000000..54a9eabca4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0009Test.java @@ -0,0 +1,32 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0009Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test plugin configuration and goal configuration that overrides what the + * mojo has specified. + */ + public void testit0009() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0009" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-plugin-touch", "1.0", "maven-plugin" ); + verifier.executeGoal( "generate-resources" ); + verifier.assertFilePresent( "target/pluginItem" ); + verifier.assertFilePresent( "target/goalItem" ); + verifier.assertFileNotPresent( "target/bad-item" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0009 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0010Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0010Test.java new file mode 100644 index 0000000000..ca4f0ed2a8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0010Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0010Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Since the artifact resolution does not use the project builder, we must + * ensure that the full hierarchy of all dependencies is resolved. This + * includes the dependencies of the parent-pom's of dependencies. This test + * will check this, by depending on classworlds, which is a dependency of + * maven-component, which is the parent of maven-plugin, which is an + * explicit dependency of this test. + * # TODO: must correct the assumptions of this test + */ + public void testit0010() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0010" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0010/PersonFinder.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0010 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0011Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0011Test.java new file mode 100644 index 0000000000..c369abb260 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0011Test.java @@ -0,0 +1,28 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0011Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test specification of dependency versions via <dependencyManagement/>. + */ + public void testit0011() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0011" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0011/PersonFinder.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0011 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0012Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0012Test.java new file mode 100644 index 0000000000..43870de070 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0012Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0012Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test simple POM interpolation + */ + public void testit0012() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0012" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/touch-3.8.1.txt" ); + verifier.assertFilePresent( "child-project/target/child-touch-3.0.3.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0012 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0013Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0013Test.java new file mode 100644 index 0000000000..dea204e6b8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0013Test.java @@ -0,0 +1,35 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + +public class MavenIT0013Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test plugin-plugin, which tests maven-plugin-tools-api and + * maven-plugin-tools-java. This will generate a plugin descriptor from + * java-based mojo sources, install the plugin, and then use it. + */ + public void testit0013() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0013" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-it0013", "1.0-SNAPSHOT", "maven-plugin" ); + List goals = Arrays.asList( new String[]{"install", "org.apache.maven.its.it0013:maven-it-it0013:it0013"} ); + verifier.executeGoals( goals ); + verifier.assertFilePresent( "target/maven-it-it0013-1.0-SNAPSHOT.jar" ); + verifier.assertFilePresent( "target/it0013-verify" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0013 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0014Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0014Test.java new file mode 100644 index 0000000000..d7f3be9826 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0014Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0014Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test POM configuration by settings the -source and -target for the + * compiler to 1.4 + */ + public void testit0014() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0014" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0014 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0016Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0016Test.java new file mode 100644 index 0000000000..64a76aaee1 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0016Test.java @@ -0,0 +1,38 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0016Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test a WAR generation + */ + public void testit0016() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0016" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0016/Person.class" ); + verifier.assertFilePresent( "target/maven-it-it0016-1.0/index.html" ); + verifier.assertFilePresent( + "target/maven-it-it0016-1.0/WEB-INF/classes/org/apache/maven/it0016/Person.class" ); + verifier.assertFilePresent( "target/maven-it-it0016-1.0/WEB-INF/lib/commons-logging-1.0.3.jar" ); + verifier.assertFileNotPresent( "target/maven-it-it0016-1.0/WEB-INF/lib/servletapi-2.4-20040521.jar" ); + verifier.assertFilePresent( "target/maven-it-it0016-1.0.war" ); + verifier.assertFilePresent( "target/maven-it-it0016-1.0.war!/index.html" ); + verifier.assertFilePresent( + "target/maven-it-it0016-1.0.war!/WEB-INF/classes/org/apache/maven/it0016/Person.class" ); + verifier.assertFilePresent( "target/maven-it-it0016-1.0.war!/WEB-INF/lib/commons-logging-1.0.3.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0016 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0017Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0017Test.java new file mode 100644 index 0000000000..433c290724 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0017Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0017Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test an EJB generation + */ + public void testit0017() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0017" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0017/Person.class" ); + verifier.assertFilePresent( "target/maven-it-it0017-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0017-1.0.jar!/META-INF/ejb-jar.xml" ); + verifier.assertFilePresent( "target/maven-it-it0017-1.0.jar!/org/apache/maven/it0017/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0017 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0018Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0018Test.java new file mode 100644 index 0000000000..cefd5d1275 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0018Test.java @@ -0,0 +1,32 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0018Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Ensure that managed dependencies for dependency POMs are calculated + * correctly when resolved. Removes commons-logging-1.0.3 and checks it is + * redownloaded. + */ + public void testit0018() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0018" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "commons-logging", "commons-logging", "1.0.3", "jar" ); + verifier.executeGoal( "package" ); +// TODO: I would like to build some small core-it artifacts for this purpose instead + verifier.assertArtifactPresent( "commons-logging", "commons-logging", "1.0.3", "jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0018 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0019Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0019Test.java new file mode 100644 index 0000000000..d4751e868f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0019Test.java @@ -0,0 +1,28 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0019Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that a version is managed by pluginManagement in the super POM + */ + public void testit0019() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0019" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0019/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0019 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0020Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0020Test.java new file mode 100644 index 0000000000..4707544f5b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0020Test.java @@ -0,0 +1,32 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + +public class MavenIT0020Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test beanshell mojo support. + */ + public void testit0020() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0020" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-it0020", "1.0-SNAPSHOT", "maven-plugin" ); + List goals = Arrays.asList( new String[]{"install", "org.apache.maven.its.it0020:maven-it-it0020:it0020"} ); + verifier.executeGoals( goals ); + verifier.assertFilePresent( "target/out.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0020 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0021Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0021Test.java new file mode 100644 index 0000000000..244b2151b9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0021Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Properties; + +public class MavenIT0021Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test pom-level profile inclusion (this one is activated by system + * property). + */ + public void testit0021() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0021" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.0", "jar" ); + Properties systemProperties = new Properties(); + systemProperties.put( "includeProfile", "true" ); + verifier.setSystemProperties( systemProperties ); + verifier.executeGoal( "compile" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.0", "jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0021 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0022Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0022Test.java new file mode 100644 index 0000000000..1589680e6d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0022Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Properties; + +public class MavenIT0022Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test profile inclusion from profiles.xml (this one is activated by system + * property). + */ + public void testit0022() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0022" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + Properties systemProperties = new Properties(); + systemProperties.put( "includeProfile", "true" ); + verifier.setSystemProperties( systemProperties ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/test.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0022 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0023Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0023Test.java new file mode 100644 index 0000000000..49c7543df7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0023Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Properties; + +public class MavenIT0023Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test profile inclusion from settings.xml (this one is activated by an id + * in the activeProfiles section). + */ + public void testit0023() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0023" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + Properties systemProperties = new Properties(); + systemProperties.put( "org.apache.maven.user-settings", "settings.xml" ); + verifier.setSystemProperties( systemProperties ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/test.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0023 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0024Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0024Test.java new file mode 100644 index 0000000000..860730d465 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0024Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0024Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test usage of <executions/> inside a plugin rather than <goals/> + * that are directly inside th plugin. + */ + public void testit0024() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0024" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "generate-sources" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0024/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0024 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0025Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0025Test.java new file mode 100644 index 0000000000..f78e88ef88 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0025Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0025Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test multiple goal executions with different execution-level configs. + */ + public void testit0025() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0025" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "process-sources" ); + verifier.assertFilePresent( "target/test.txt" ); + verifier.assertFilePresent( "target/test2.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0025 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0026Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0026Test.java new file mode 100644 index 0000000000..a6e9424098 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0026Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Properties; + +public class MavenIT0026Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test merging of global- and user-level settings.xml files. + */ + public void testit0026() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0026" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + Properties systemProperties = new Properties(); + systemProperties.put( "org.apache.maven.user-settings", "user-settings.xml" ); + systemProperties.put( "org.apache.maven.global-settings", "global-settings.xml" ); + verifier.setSystemProperties( systemProperties ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/test.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0026 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0027Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0027Test.java new file mode 100644 index 0000000000..fa81cd1609 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0027Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + +public class MavenIT0027Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test @execute with a custom lifecycle, including configuration + */ + public void testit0027() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0027" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List goals = Arrays.asList( new String[]{ + "org.apache.maven.its.plugins:maven-it-plugin-fork:fork", + "org.apache.maven.its.plugins:maven-it-plugin-fork:fork-goal"} ); + verifier.executeGoals( goals ); + verifier.assertFilePresent( "target/forked/touch.txt" ); + verifier.assertFilePresent( "target/forked2/touch.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0027 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0028Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0028Test.java new file mode 100644 index 0000000000..57d22f364a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0028Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0028Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that unused configuration parameters from the POM don't cause the + * mojo to fail...they will show up as warnings in the -X output instead. + */ + public void testit0028() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0028" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0028 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0029Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0029Test.java new file mode 100644 index 0000000000..0d19e1eed8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0029Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0029Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test for pluginManagement injection of plugin configuration. + */ + public void testit0029() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0029" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.it", "maven-it-it0029", "1.0-SNAPSHOT", "jar" ); + verifier.deleteArtifact( "org.apache.maven.it", "maven-it-it0029-child", "1.0-SNAPSHOT", "jar" ); + verifier.executeGoal( "install" ); + verifier.assertFilePresent( "child-project/target/classes/org/apache/maven/it0001/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0029 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0030Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0030Test.java new file mode 100644 index 0000000000..bed2022b99 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0030Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0030Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test for injection of dependencyManagement through parents of + * dependency poms. + */ + public void testit0030() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0030" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.it", "maven-it-it0030", "1.0-SNAPSHOT", "jar" ); + verifier.deleteArtifact( "org.apache.maven.it", "maven-it-it0030-child-hierarchy", "1.0-SNAPSHOT", "jar" ); + verifier.deleteArtifact( "org.apache.maven.it", "maven-it-it0030-child-project1", "1.0-SNAPSHOT", "jar" ); + verifier.deleteArtifact( "org.apache.maven.it", "maven-it-it0030-child-project2", "1.0-SNAPSHOT", "jar" ); + verifier.executeGoal( "install" ); + verifier.assertFilePresent( "child-hierarchy/project2/target/classes/org/apache/maven/it0001/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0030 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0031Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0031Test.java new file mode 100644 index 0000000000..720328ae60 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0031Test.java @@ -0,0 +1,39 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Properties; + +public class MavenIT0031Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test usage of plugins.xml mapping file on the repository to resolve + * plugin artifactId from it's prefix using the pluginGroups in + * the provided settings.xml. + */ + public void testit0031() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0031" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + Properties systemProperties = new Properties(); + systemProperties.put( "org.apache.maven.user-settings", "settings.xml" ); + systemProperties.put( "model", "src/main/mdo/test.mdo" ); + systemProperties.put( "version", "1.0.0" ); + verifier.setSystemProperties( systemProperties ); + Properties verifierProperties = new Properties(); + verifierProperties.put( "failOnErrorOutput", "false" ); + verifier.setVerifierProperties( verifierProperties ); + verifier.executeGoal( "modello:java" ); + verifier.assertFilePresent( "target/generated-sources/modello/org/apache/maven/it/it0031/Root.java" ); +// don't verify error free log + verifier.resetStreams(); + System.out.println( "it0031 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0032Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0032Test.java new file mode 100644 index 0000000000..e16848127d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0032Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0032Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Tests that a specified Maven version requirement that is lower doesn't cause any problems + */ + public void testit0032() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0032" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0032/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0032/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0032-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0032-1.0.jar!/it0032.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0032 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0033Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0033Test.java new file mode 100644 index 0000000000..88d1b8653e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0033Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0033Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test an EAR generation + */ + public void testit0033() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0033" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0033-1.0.ear" ); + verifier.assertFilePresent( "target/maven-it-it0033-1.0.ear!/META-INF/application.xml" ); + verifier.assertFilePresent( "target/maven-it-it0033-1.0.ear!/META-INF/appserver-application.xml" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0033 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0034Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0034Test.java new file mode 100644 index 0000000000..14aecde950 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0034Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0034Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test version range junit [3.7,) resolves to 3.8.1 + */ + public void testit0034() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0034" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.4", "jar" ); + verifier.deleteArtifact( "junit", "junit", "3.8", "jar" ); + verifier.executeGoal( "package" ); + verifier.assertArtifactPresent( "junit", "junit", "3.8", "jar" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.4", "jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0034 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0035Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0035Test.java new file mode 100644 index 0000000000..d9b2facf79 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0035Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0035Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test artifact relocation. + */ + public void testit0035() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0035" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.1", "jar" ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.1", "pom" ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support-old-location", "1.1", "pom" ); + verifier.executeGoal( "package" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.1", "jar" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.1", "pom" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support-old-location", "1.1", "pom" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0035 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0036Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0036Test.java new file mode 100644 index 0000000000..e8cdb6a064 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0036Test.java @@ -0,0 +1,28 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0036Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test building from release-pom.xml when it's available + */ + public void testit0036() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0036" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0036-1.0.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0036 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0037Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0037Test.java new file mode 100644 index 0000000000..b81ac2c296 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0037Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0037Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test building with alternate pom file using '-f' + */ + public void testit0037() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0037" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-f pom2.xml" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0037-1.0-build2.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0037 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0038Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0038Test.java new file mode 100644 index 0000000000..d21e89f687 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0038Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0038Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test building project from outside the project directory using '-f' + * option + */ + public void testit0038() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0038" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-f project/pom2.xml" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "project/target/maven-it-it0038-1.0-build2.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0038 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0039Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0039Test.java new file mode 100644 index 0000000000..c4c4cb6c58 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0039Test.java @@ -0,0 +1,36 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0039Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test reactor for projects that have release-pom.xml in addition to + * pom.xml. The release-pom.xml file should be chosen above pom.xml for + * these projects in the build. + */ + public void testit0039() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0039" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-r" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "project/target/maven-it-it0039-p1-1.0.jar" ); + verifier.assertFilePresent( "project2/target/maven-it-it0039-p2-1.0.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0039 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0040Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0040Test.java new file mode 100644 index 0000000000..0611b7c7e8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0040Test.java @@ -0,0 +1,28 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0040Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test the use of a packaging from a plugin + */ + public void testit0040() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0040" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0040-1.0-it.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0040 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0041Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0041Test.java new file mode 100644 index 0000000000..53a7cd512d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0041Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0041Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test the use of a new type from a plugin + */ + public void testit0041() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0041" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.2", "coreit-artifact" ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0041-1.0-SNAPSHOT.jar" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.2", "coreit-artifact" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.2", "pom" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0041 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0042Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0042Test.java new file mode 100644 index 0000000000..e5ad7b0378 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0042Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0042Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that the reactor can establish the artifact location of known projects for dependencies + */ + public void testit0042() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0042" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "test-component-a/target/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-b/target/test-component-b-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war!/WEB-INF/lib/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war!/WEB-INF/lib/test-component-b-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/my-test" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0042 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0043Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0043Test.java new file mode 100644 index 0000000000..6416c1ccf0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0043Test.java @@ -0,0 +1,28 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0043Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test for repository inheritence - ensure using the same id overrides the defaults + */ + public void testit0043() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0043" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0043-1.0-SNAPSHOT.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0043 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0044Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0044Test.java new file mode 100644 index 0000000000..3c2312e565 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0044Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0044Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test --settings CLI option + */ + public void testit0044() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0044" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "--settings settings.xml" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/test.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0044 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0045Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0045Test.java new file mode 100644 index 0000000000..653801b821 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0045Test.java @@ -0,0 +1,35 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0045Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test non-reactor behavior when plugin declares "@requiresProject false" + */ + public void testit0045() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0045" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-plugin-no-project", "1.0", "maven-plugin" ); + List cliOptions = new ArrayList(); + cliOptions.add( "--no-plugin-registry" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-no-project:light-touch" ); + verifier.assertFilePresent( "target/touch.txt" ); + verifier.assertFileNotPresent( "subproject/target/touch.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0045 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0046Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0046Test.java new file mode 100644 index 0000000000..6753fe4278 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0046Test.java @@ -0,0 +1,37 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0046Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test fail-never reactor behavior. Forces an exception to be thrown in + * the first module, but checks that the second modules is built. + */ + public void testit0046() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0046" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.plugins", "maven-it-it-plugin", "1.0", "maven-plugin" ); + List cliOptions = new ArrayList(); + cliOptions.add( "--no-plugin-registry --fail-never" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/touch.txt" ); + verifier.assertFileNotPresent( "subproject/target/touch.txt" ); + verifier.assertFilePresent( "subproject2/target/touch.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0046 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0047Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0047Test.java new file mode 100644 index 0000000000..7756451a7f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0047Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0047Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test the use case for having a compile time dependency be transitive: + * when you extend a class you need its dependencies at compile time. + */ + public void testit0047() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0047" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0047/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0047 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0048Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0048Test.java new file mode 100644 index 0000000000..31ab279a79 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0048Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0048Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that default values for mojo parameters are working (indirectly, + * by verifying that the Surefire mojo is functioning correctly). + */ + public void testit0048() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0048" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test" ); + verifier.assertFilePresent( "target/testFileOutput.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0048 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0049Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0049Test.java new file mode 100644 index 0000000000..0f5b133a6b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0049Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0049Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test parameter alias usage. + */ + public void testit0049() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0049" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + //todo: i don't think we need to delete this plugin + //verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-plugin-touch", "1.0", "maven-plugin" ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/touchFile.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0049 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0050Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0050Test.java new file mode 100644 index 0000000000..2067eb9305 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0050Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0050Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test surefire inclusion/exclusions + */ + public void testit0050() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0050" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/testTouchFile.txt" ); + verifier.assertFilePresent( "target/defaultTestTouchFile.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0050 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0051Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0051Test.java new file mode 100644 index 0000000000..752f2c9e90 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0051Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0051Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test source attachment when -DperformRelease=true is specified. + */ + public void testit0051() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0051" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "--no-plugin-registry -DperformRelease=true" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0051-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0051-1.0-sources.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0051 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0052Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0052Test.java new file mode 100644 index 0000000000..bedc75c37b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0052Test.java @@ -0,0 +1,35 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0052Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that source attachment doesn't take place when + * -DperformRelease=true is missing. + */ + public void testit0052() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0052" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "--no-plugin-registry" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0052-1.0.jar" ); + verifier.assertFileNotPresent( "target/maven-it-it0052-1.0-sources.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0052 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0053Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0053Test.java new file mode 100644 index 0000000000..94081b9e3f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0053Test.java @@ -0,0 +1,36 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0053Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that attached artifacts have the same buildnumber and timestamp + * as the main artifact. This will not correctly verify until we have + * some way to pattern-match the buildnumber/timestamp... + */ + public void testit0053() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0053" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "--no-plugin-registry" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0053-1.0-SNAPSHOT.jar" ); + verifier.assertFileNotPresent( "target/maven-it-it0053-1.0-SNAPSHOT-sources.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0053 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0054Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0054Test.java new file mode 100644 index 0000000000..1b39621faf --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0054Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0054Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test resource filtering. + */ + public void testit0054() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0054" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0054/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0054/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0054-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0054-1.0.jar!/it0054.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0054 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0055Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0055Test.java new file mode 100644 index 0000000000..20bc4d6968 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0055Test.java @@ -0,0 +1,32 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0055Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that source includes/excludes with in the compiler plugin config. + * This will test excludes and testExcludes... + */ + public void testit0055() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0055" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test-compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0001/PersonTest.class" ); + verifier.assertFileNotPresent( "target/classes/org/apache/maven/it0001/PersonTwo.class" ); + verifier.assertFileNotPresent( "target/test-classes/org/apache/maven/it0001/PersonTwoTest.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0055 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0056Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0056Test.java new file mode 100644 index 0000000000..3c06018033 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0056Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0056Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that multiple executions of the compile goal with different + * includes/excludes will succeed. + */ + public void testit0056() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0056" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test-compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/Person.class" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/PersonTwo.class" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/PersonThree.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0001/PersonTest.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0001/PersonTwoTest.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0001/PersonThreeTest.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0056 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0057Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0057Test.java new file mode 100644 index 0000000000..d83207cf1a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0057Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0057Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that scope == 'provided' dependencies are available to tests. + */ + public void testit0057() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0057" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0001/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0057-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0057-1.0.jar!/it0001.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0057 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0058Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0058Test.java new file mode 100644 index 0000000000..160647ead6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0058Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0058Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that profiles from settings.xml do not pollute module lists + * across projects in a reactorized build. + */ + public void testit0058() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0058" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "--settings ./settings.xml" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "subproject/target/subproject-1.0.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0058 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0059Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0059Test.java new file mode 100644 index 0000000000..79d779fffe --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0059Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Properties; + +public class MavenIT0059Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that maven-1 POMs will be ignored but not stop the resolution + * process. + */ + public void testit0059() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0059" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + Properties verifierProperties = new Properties(); + verifierProperties.put( "failOnErrorOutput", "false" ); + verifier.setVerifierProperties( verifierProperties ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0059-1.0.jar" ); +// don't verify error free log + verifier.resetStreams(); + System.out.println( "it0059 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0060Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0060Test.java new file mode 100644 index 0000000000..93f4e25aab --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0060Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0060Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test aggregation of list configuration items when using + * 'combine.children=append' attribute. Specifically, merge the list of + * excludes for the testCompile mojo. + */ + public void testit0060() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0060" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test" ); + verifier.assertFilePresent( "subproject/target/classes/org/apache/maven/it0060/Person.class" ); + verifier.assertFilePresent( "subproject/target/test-classes/org/apache/maven/it0060/PersonTest.class" ); + verifier.assertFileNotPresent( "subproject/target/test-classes/org/apache/maven/it0060/PersonTwoTest.class" ); + verifier.assertFileNotPresent( "subproject/target/test-classes/org/apache/maven/it0060/PersonThreeTest.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0060 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0061Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0061Test.java new file mode 100644 index 0000000000..1a3643af1e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0061Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0061Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that deployment of artifacts to a legacy-layout repository + * results in a groupId directory of 'the.full.group.id' instead of + * 'the/full/group/id'. + */ + public void testit0061() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0061" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "deploy" ); + verifier.assertFilePresent( "target/test-repo/org.apache.maven.its.it0061/jars/maven-it-it0061-1.0.jar" ); + verifier.assertFilePresent( "target/test-repo/org.apache.maven.its.it0061/poms/maven-it-it0061-1.0.pom" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0061 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0062Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0062Test.java new file mode 100644 index 0000000000..a4500828e4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0062Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0062Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that a deployment of a snapshot falls back to a non-snapshot repository if no snapshot repository is + * specified. + */ + public void testit0062() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0062" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-it-it0062-SNAPSHOT", "1.0", "jar" ); + verifier.executeGoal( "deploy" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0062/Person.class" ); + verifier.assertFilePresent( "target/maven-it-it0062-1.0-SNAPSHOT.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0062 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0063Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0063Test.java new file mode 100644 index 0000000000..6329dccc69 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0063Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0063Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test the use of a system scoped dependency to tools.jar. + */ + public void testit0063() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0063" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0001/Person.class" ); + verifier.assertFilePresent( "target/test-classes/org/apache/maven/it0001/PersonTest.class" ); + verifier.assertFilePresent( "target/maven-it-it0063-1.0.jar" ); + verifier.assertFilePresent( "target/maven-it-it0063-1.0.jar!/it0001.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0063 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0064Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0064Test.java new file mode 100644 index 0000000000..e710ab4257 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0064Test.java @@ -0,0 +1,31 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0064Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test the use of a mojo that uses setters instead of private fields + * for the population of configuration values. + */ + public void testit0064() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0064" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-plugin-setter", "1.0", "maven-plugin" ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-setter:setter-touch" ); + verifier.assertFilePresent( "target/fooValue" ); + verifier.assertFilePresent( "target/barValue.baz" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0064 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0065Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0065Test.java new file mode 100644 index 0000000000..8704365232 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0065Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0065Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that the basedir of the parent is set correctly. + */ + public void testit0065() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0065" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "install" ); + verifier.assertFilePresent( "subproject/target/child-basedir" ); + verifier.assertFilePresent( "parent-basedir" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0065 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0066Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0066Test.java new file mode 100644 index 0000000000..77b899379c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0066Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0066Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that nonstandard POM files will be installed correctly. + */ + public void testit0066() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0066" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-f other-pom.xml" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "install" ); + verifier.assertFilePresent( "" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0066 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0067Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0067Test.java new file mode 100644 index 0000000000..c6e9fb6824 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0067Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0067Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test activation of a profile from the command line. + */ + public void testit0067() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0067" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.0", "jar" ); + List cliOptions = new ArrayList(); + cliOptions.add( "-P test-profile" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0021/Person.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0067 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0068Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0068Test.java new file mode 100644 index 0000000000..bc2a198472 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0068Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Properties; + +public class MavenIT0068Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test repository accumulation. + */ + public void testit0068() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0068" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.codehaus.modello", "modello-core", "1.0-alpha-3", "jar" ); + Properties verifierProperties = new Properties(); + verifierProperties.put( "failOnErrorOutput", "false" ); + verifier.setVerifierProperties( verifierProperties ); + verifier.executeGoal( "generate-sources" ); + verifier.assertFilePresent( "target/generated-sources/modello/org/apache/maven/settings/Settings.java" ); +// don't verify error free log + verifier.resetStreams(); + System.out.println( "it0068 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0069Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0069Test.java new file mode 100644 index 0000000000..f029ccb888 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0069Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0069Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test offline mode. + */ + public void testit0069() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0069" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-o" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "compile" ); + verifier.assertFilePresent( "target/classes/org/apache/maven/it0069/ClassworldBasedThing.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0069 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0070Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0070Test.java new file mode 100644 index 0000000000..92a5e3167b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0070Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0070Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test a RAR generation. + */ + public void testit0070() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0070" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0070-1.0.rar" ); + verifier.assertFilePresent( "target/maven-it-it0070-1.0.rar!/META-INF/ra.xml" ); + verifier.assertFilePresent( "target/maven-it-it0070-1.0.rar!/SomeResource.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0070 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0071Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0071Test.java new file mode 100644 index 0000000000..6e36057392 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0071Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0071Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verifies that dotted property references work within plugin + * configurations. + */ + public void testit0071() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0071" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.plugins", "maven-it-it-plugin", "1.0", "maven-plugin" ); + verifier.executeGoal( "org.apache.maven.its.plugins:maven-it-plugin-touch:touch" ); + verifier.assertFilePresent( "target/foo2" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0071 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0072Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0072Test.java new file mode 100644 index 0000000000..dbdc45fc8f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0072Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0072Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verifies that property references with dotted notation work within + * POM interpolation. + */ + public void testit0072() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0072" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "target/maven-it-it0072-1.0-SNAPSHOT.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0072 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0073Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0073Test.java new file mode 100644 index 0000000000..5619581308 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0073Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + +public class MavenIT0073Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Tests context passing between mojos in the same plugin. + */ + public void testit0073() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0073" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.plugins", "maven-it-plugin-context-passing", "1.0", "maven-plugin" ); + List goals = Arrays.asList( new String[]{ + "org.apache.maven.its.plugins:maven-it-plugin-context-passing:throw", + "org.apache.maven.its.plugins:maven-it-plugin-context-passing:catch"} ); + verifier.executeGoals( goals ); + verifier.assertFilePresent( "target/thrown-value" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0073 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0074Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0074Test.java new file mode 100644 index 0000000000..574cc33133 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0074Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0074Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that plugin-level configuration instances are not nullified by + * execution-level configuration instances. + */ + public void testit0074() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0074" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "eclipse:eclipse" ); + verifier.assertFilePresent( ".classpath" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0074 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0075Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0075Test.java new file mode 100644 index 0000000000..32fce5b695 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0075Test.java @@ -0,0 +1,37 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class MavenIT0075Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that direct invocation of a mojo from the command line still + * results in the processing of modules included via profiles. + */ + public void testit0075() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0075" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-Dactivate=anything" ); + verifier.setCliOptions( cliOptions ); + List goals = Arrays.asList( new String[]{"help:active-profiles", "package", "eclipse:eclipse", "clean:clean"} ); + verifier.executeGoals( goals ); + verifier.assertFileNotPresent( "sub1/target/maven-it-it0075-sub1-1.0.jar" ); + verifier.assertFileNotPresent( "sub2/target/maven-it-it0075-sub2-1.0.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0075 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0076Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0076Test.java new file mode 100644 index 0000000000..3f3a823e37 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0076Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0076Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that plugins in pluginManagement aren't included in the build + * unless they are referenced by groupId/artifactId within the plugins + * section of a pom. + */ + public void testit0076() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0076" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "install" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0076 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0077Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0077Test.java new file mode 100644 index 0000000000..82d3e8d6b6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0077Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0077Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test test jar attachment. + */ + public void testit0077() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0077" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.its.it0077", "sub1", "1.0", "test-jar" ); + List cliOptions = new ArrayList(); + cliOptions.add( "--settings settings.xml" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "install" ); + verifier.assertArtifactPresent( "org.apache.maven.its.it0077", "sub1", "1.0", "test-jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0077 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0078Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0078Test.java new file mode 100644 index 0000000000..ed6dec5913 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0078Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0078Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that configuration for maven-compiler-plugin is injected from + * PluginManagement section even when it's not explicitly defined in the + * plugins section. + */ + public void testit0078() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0078" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "compile" ); + verifier.assertFileNotPresent( "target/classes/Test.class" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0078 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0079Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0079Test.java new file mode 100644 index 0000000000..2fd8bf82bc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0079Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0079Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that source attachments have the same build number as the main + * artifact when deployed. + */ + public void testit0079() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0079" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "deploy" ); + verifier.assertFilePresent( "target/test-repo/org/apache/maven/its/it0079/maven-it-it0079/SNAPSHOT/maven-it-it0079-*-1.jar" ); + verifier.assertFilePresent( "target/test-repo/org/apache/maven/its/it0079/maven-it-it0079/SNAPSHOT/maven-it-it0079-*-1-sources.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0079 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0080Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0080Test.java new file mode 100644 index 0000000000..1d47094c81 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0080Test.java @@ -0,0 +1,36 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0080Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that depending on a WAR doesn't also get its dependencies + * transitively. + */ + public void testit0080() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0080" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "test-component-a/target/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-b/target/test-component-b-0.1.war" ); + verifier.assertFilePresent( + "test-component-b/target/test-component-b-0.1.war!/WEB-INF/lib/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.ear" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.ear!/test-component-b-0.1.war" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1/test-component-b-0.1.war" ); + verifier.assertFileNotPresent( "test-component-c/target/test-component-c-0.1/test-component-a-0.1.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0080 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0081Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0081Test.java new file mode 100644 index 0000000000..f8a0c77f9f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0081Test.java @@ -0,0 +1,28 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0081Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test per-plugin dependencies. + */ + public void testit0081() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0081" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "install" ); + verifier.assertFilePresent( "test-component-c/target/org.apache.maven.wagon.providers.ftp.FtpWagon" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0081 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0082Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0082Test.java new file mode 100644 index 0000000000..81c0578dcc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0082Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0082Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that the reactor can establish the artifact location of known projects for dependencies + * using process-sources to see that it works even when they aren't compiled + */ + public void testit0082() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0082" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "process-sources" ); + verifier.assertFilePresent( "test-component-c/target/my-test" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0082 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0083Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0083Test.java new file mode 100644 index 0000000000..cda9a67443 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0083Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0083Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that overriding a compile time dependency as provided in a WAR ensures it is not included. + */ + public void testit0083() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0083" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "test-component-a/target/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-b/target/test-component-b-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war!/WEB-INF/lib/test-component-b-0.1.jar" ); + verifier.assertFileNotPresent( "test-component-c/target/test-component-c-0.1/WEB-INF/lib/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1/WEB-INF/lib/test-component-b-0.1.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0083 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0084Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0084Test.java new file mode 100644 index 0000000000..6072f8eeb4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0084Test.java @@ -0,0 +1,39 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0084Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that the collector selecting a particular version gets the correct subtree + */ + public void testit0084() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0084" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "test-component-a/target/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-b/target/test-component-b-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war!/WEB-INF/lib/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war!/WEB-INF/lib/test-component-b-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war!/WEB-INF/lib/maven-core-it-support-1.4.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1.war!/WEB-INF/lib/commons-io-1.0.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1/WEB-INF/lib/test-component-a-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1/WEB-INF/lib/test-component-b-0.1.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1/WEB-INF/lib/maven-core-it-support-1.4.jar" ); + verifier.assertFilePresent( "test-component-c/target/test-component-c-0.1/WEB-INF/lib/commons-io-1.0.jar" ); + verifier.assertFileNotPresent( "test-component-c/target/test-component-c-0.1/WEB-INF/lib/commons-lang-1.0.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0084 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0085Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0085Test.java new file mode 100644 index 0000000000..e75594882e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0085Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0085Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that system-scoped dependencies get resolved with system scope + * when they are resolved transitively via another (non-system) + * dependency. Inherited scope should not apply in the case of + * system-scoped dependencies, no matter where they are. + */ + public void testit0085() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0085" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFileNotPresent( "war/target/war-1.0/WEB-INF/lib/pom.xml" ); + verifier.assertFileNotPresent( "war/target/war-1.0/WEB-INF/lib/it0085-dep-1.0.jar" ); + verifier.assertFilePresent( "war/target/war-1.0/WEB-INF/lib/junit-3.8.1.jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0085 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0086Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0086Test.java new file mode 100644 index 0000000000..f47032c451 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0086Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0086Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that a plugin dependency class can be loaded from both the plugin classloader and the + * context classloader available to the plugin. + */ + public void testit0086() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0086" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.plugins", "maven-it-it-plugin", "1.0", "maven-plugin" ); + verifier.executeGoal( "validate" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0086 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0087Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0087Test.java new file mode 100644 index 0000000000..086afc3d51 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0087Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0087Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that a project-level plugin dependency class can be loaded from both the plugin classloader + * and the context classloader available to the plugin. + */ + public void testit0087() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0087" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.plugins", "maven-it-it-plugin", "1.0", "maven-plugin" ); + verifier.executeGoal( "validate" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0087 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0088Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0088Test.java new file mode 100644 index 0000000000..d3d1b48178 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0088Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0088Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test path translation. + */ + public void testit0088() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0088" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test" ); + verifier.assertFilePresent( "target/classes/test.properties" ); + verifier.assertFilePresent( "target/mojo-generated.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0088 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0089Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0089Test.java new file mode 100644 index 0000000000..4ed93628f2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0089Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0089Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that Checkstyle PackageNamesLoader.loadModuleFactory(..) method will complete as-is with + * the context classloader available to the plugin. + */ + public void testit0089() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0089" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.plugins", "maven-it-it-plugin", "1.0", "maven-plugin" ); + verifier.executeGoal( "install" ); + verifier.assertFilePresent( "project/target/output.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0089 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0090Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0090Test.java new file mode 100644 index 0000000000..c94ad1053e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0090Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.Map; +import java.util.HashMap; + +public class MavenIT0090Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that ensures that envars are interpolated correctly into plugin + * configurations. + */ + public void testit0090() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0090" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath(), true ); + Map envVars = new HashMap(); + envVars.put( "MAVEN_TEST_ENVAR", "MAVEN_TEST_ENVAR_VALUE" ); + verifier.executeGoal( "test", envVars ); + verifier.assertFilePresent( "target/mojo-generated.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0090 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0091Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0091Test.java new file mode 100644 index 0000000000..28f067bf63 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0091Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +/** + * # it0091 currrently fails. Not sure if there is an associated JIRA. + */ +public class MavenIT0091Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that currently demonstrates that properties are not correctly + * interpolated into other areas in the POM. This may strictly be a boolean + * problem: I captured the problem as it was reported. + */ + public void testit0091() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0091" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test" ); + verifier.assertFilePresent( "target/classes/test.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0091 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0092Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0092Test.java new file mode 100644 index 0000000000..b629cf5bfd --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0092Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0092Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that legacy repositories with legacy snapshots download correctly. + */ + public void testit0092() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0092" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven", "maven-core-it-support", "1.0-SNAPSHOT", "jar" ); + verifier.executeGoal( "compile" ); + verifier.assertArtifactPresent( "org.apache.maven", "maven-core-it-support", "1.0-SNAPSHOT", "jar" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0092 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0094Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0094Test.java new file mode 100644 index 0000000000..acd3d88df7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0094Test.java @@ -0,0 +1,27 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0094Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test classloading issues with mojos after 2.0 (MNG-1898). + */ + public void testit0094() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0094" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "install" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0094 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0095Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0095Test.java new file mode 100644 index 0000000000..1d9b992806 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0095Test.java @@ -0,0 +1,27 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0095Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test URL calculation when modules are in sibling dirs of parent. (MNG-2006) + */ + public void testit0095() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0095" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "integration-test" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0095 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0096Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0096Test.java new file mode 100644 index 0000000000..f72180a178 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0096Test.java @@ -0,0 +1,27 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0096Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that plugin executions from >1 step of inheritance don't run multiple times. + */ + public void testit0096() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0096" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0096 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0097Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0097Test.java new file mode 100644 index 0000000000..68a5f5c415 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0097Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0097Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that the implied relative path for the parent POM works, even two + * levels deep. + */ + public void testit0097() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0097" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.assertFilePresent( "project/project-level2/project-level3/target/it0097.txt" ); + verifier.assertFilePresent( "project/project-sibling-level2/target/it0097.txt" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0097 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0098Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0098Test.java new file mode 100644 index 0000000000..e594c7f846 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0098Test.java @@ -0,0 +1,35 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +/** + * # it0098 - something started failing here, not yet identified. MNG-2322 + */ +public class MavenIT0098Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that quoted system properties are processed correctly. [MNG-1415] + */ + public void testit0098() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0098" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-Dtest.property=\"Test Property\"" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "test" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0098 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0099Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0099Test.java new file mode 100644 index 0000000000..afd0a9b920 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0099Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0099Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that parent-POMs cached during a build are available as parents + * to other POMs in the multimodule build. [MNG-2130] + */ + public void testit0099() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0099" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.deleteArtifact( "org.apache.maven.it0099", "maven-it-it0099-parent", "1", "pom" ); + verifier.executeGoal( "package" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0099 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0100Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0100Test.java new file mode 100644 index 0000000000..c7016d8a1f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0100Test.java @@ -0,0 +1,27 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0100Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that ${parent.artifactId} resolves correctly. [MNG-2124] + */ + public void testit0100() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0100" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "verify" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0100 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0101Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0101Test.java new file mode 100644 index 0000000000..a3e46f5b35 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0101Test.java @@ -0,0 +1,34 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0101Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that properties defined in an active profile in the user's + * settings are available for interpolation of systemPath in a dependency. + * [MNG-2052] + */ + public void testit0101() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0101" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "--settings settings.xml" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "compile" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0101 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0102Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0102Test.java new file mode 100644 index 0000000000..6f9c9fcd78 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0102Test.java @@ -0,0 +1,28 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0102Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Test that <activeByDefault/> calculations for profile activation only + * use profiles defined in the POM. [MNG-2136] + */ + public void testit0102() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0102" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "verify" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0102 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0103Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0103Test.java new file mode 100644 index 0000000000..d1b3b4e8eb --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0103Test.java @@ -0,0 +1,29 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +public class MavenIT0103Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that multimodule builds where one project references another as + * a parent can build, even if that parent is not correctly referenced by + * <relativePath/> and is not in the local repository. [MNG-2196] + */ + public void testit0103() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0103" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "package" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0103 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0104Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0104Test.java new file mode 100644 index 0000000000..bbf22f695e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0104Test.java @@ -0,0 +1,32 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +/** + * #it0104 Commenting out, not fixed until post-2.0.4, due to dependency on new plexus-container-default version. + */ +public class MavenIT0104Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * Verify that plugin configurations are resolved correctly, particularly + * when they contain ${project.build.directory} in the string value of a + * Map.Entry. + */ + public void testit0104() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0104" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "test" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0104 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0105Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0105Test.java new file mode 100644 index 0000000000..0f8d49dc17 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0105Test.java @@ -0,0 +1,33 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +public class MavenIT0105Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * MRESOURCES-18 + */ + public void testit0105() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0105" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-Dparam=PARAM" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "test" ); + verifier.assertFilePresent( "target/classes/test.properties" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0105 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0106Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0106Test.java new file mode 100644 index 0000000000..92726cde68 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0106Test.java @@ -0,0 +1,30 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; + +/** + * #it0106 MNG-2318 not yet fixed + */ +public class MavenIT0106Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + + /** + * When a project has modules and its parent is not preinstalled [MNG-2318] + */ + public void testit0106() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0106" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + verifier.executeGoal( "clean" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0106 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0107Test.java b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0107Test.java new file mode 100644 index 0000000000..def119ee43 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenIT0107Test.java @@ -0,0 +1,35 @@ +package org.apache.maven.integrationtests; + +import junit.framework.TestCase; +import org.apache.maven.it.Verifier; +import org.apache.maven.it.util.ResourceExtractor; + +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +/** + * #it0107 requires a snapshot version of maven-plugin-plugin, which indicates it doesn't belong here + */ +public class MavenIT0107Test + extends TestCase /*extends AbstractMavenIntegrationTest*/ +{ + /** + * Verify that default implementation of an implementation for a complex object works as + * expected [MNG-2293] + */ + public void testit0107() + throws Exception + { + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/it0107" ); + Verifier verifier = new Verifier( testDir.getAbsolutePath() ); + List cliOptions = new ArrayList(); + cliOptions.add( "-X" ); + verifier.setCliOptions( cliOptions ); + verifier.executeGoal( "core-it:param-implementation" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + System.out.println( "it0107 PASS" ); + } +} + diff --git a/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/fix.sh b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/fix.sh new file mode 100755 index 0000000000..d33b10fb96 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/java/org/apache/maven/integrationtests/fix.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +for i in `ls Maven*.java` +do +name=`echo $i | sed 's/Maven//' | sed 's/Test.java//' | tr A-Z a-z` +sed "s/core-it:touch/org.apache.maven.its.plugins:maven-it-plugin-touch:touch/" $i > $i.new +#sed "s/verifier.assertArtifactPresent( \"org.apache.maven\", \"maven-it-it/verifier.assertArtifactPresent( \"org.apache.maven.its.$name\", \"maven-it-it/" $i > $i.new +mv $i.new $i +done diff --git a/its/maven-core-integration-tests/src/test/resources/it0000/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0000/pom.xml new file mode 100644 index 0000000000..207aee0c50 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0000/pom.xml @@ -0,0 +1,21 @@ + + 4.0.0 + Maven Integration Test :: it0000 + org.apache.maven.its.it0000 + maven-it-it0000 + The simplest of builds. We have one application class and one test + class. There are no resources, no source generation, no resource + generation and a the super model is employed to provide the build + information. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0000/src/main/java/org/apache/maven/it0000/Person.java b/its/maven-core-integration-tests/src/test/resources/it0000/src/main/java/org/apache/maven/it0000/Person.java new file mode 100644 index 0000000000..a9fb4bc9d2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0000/src/main/java/org/apache/maven/it0000/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0000; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0000/src/test/java/org/apache/maven/it0000/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0000/src/test/java/org/apache/maven/it0000/PersonTest.java new file mode 100644 index 0000000000..354f917f46 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0000/src/test/java/org/apache/maven/it0000/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0000; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0001/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0001/pom.xml new file mode 100644 index 0000000000..8a2c2be4aa --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0001/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + Maven Integration Test :: it0001 + org.apache.maven.its.it0001 + maven-it-it0001 + Builds upon it0000: we add an application resource that is packaged + up in the resultant JAR. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0001/src/main/java/org/apache/maven/it0001/Person.java b/its/maven-core-integration-tests/src/test/resources/it0001/src/main/java/org/apache/maven/it0001/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0001/src/main/java/org/apache/maven/it0001/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0001/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0001/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0001/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0001/src/test/java/org/apache/maven/it0001/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0001/src/test/java/org/apache/maven/it0001/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0001/src/test/java/org/apache/maven/it0001/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0002/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0002/pom.xml new file mode 100644 index 0000000000..3d19b16765 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0002/pom.xml @@ -0,0 +1,27 @@ + + 4.0.0 + Maven Integration Test :: it0002 + org.apache.maven.its.it0002 + maven-it-it0002 + Builds upon it0001: we add the download of a dependency. We delete + the JAR from the local repository and make sure it is there post build. + + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + org.apache.maven + maven-core-it-support + 1.0 + jar + compile + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0002/src/main/java/org/apache/maven/it0002/Person.java b/its/maven-core-integration-tests/src/test/resources/it0002/src/main/java/org/apache/maven/it0002/Person.java new file mode 100644 index 0000000000..6d89b1a6d1 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0002/src/main/java/org/apache/maven/it0002/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0002; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0002/src/main/resources/it0002.properties b/its/maven-core-integration-tests/src/test/resources/it0002/src/main/resources/it0002.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0002/src/main/resources/it0002.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0002/src/test/java/org/apache/maven/it0002/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0002/src/test/java/org/apache/maven/it0002/PersonTest.java new file mode 100644 index 0000000000..e095c90a12 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0002/src/test/java/org/apache/maven/it0002/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0002; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0003/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0003/pom.xml new file mode 100644 index 0000000000..13117f4c51 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0003/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + Maven Integration Test :: it0003 + org.apache.maven.its.it0003 + maven-it-it0003 + Builds upon it0001: we add a jar installation step. We delete the JAR + from the local repository to make sure it is there post build. + + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0003/src/main/java/org/apache/maven/it0003/Person.java b/its/maven-core-integration-tests/src/test/resources/it0003/src/main/java/org/apache/maven/it0003/Person.java new file mode 100644 index 0000000000..976117e5f7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0003/src/main/java/org/apache/maven/it0003/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0003; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0003/src/main/resources/it0003.properties b/its/maven-core-integration-tests/src/test/resources/it0003/src/main/resources/it0003.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0003/src/main/resources/it0003.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0003/src/test/java/org/apache/maven/it0003/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0003/src/test/java/org/apache/maven/it0003/PersonTest.java new file mode 100644 index 0000000000..82af36a9a0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0003/src/test/java/org/apache/maven/it0003/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0003; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0004/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0004/pom.xml new file mode 100644 index 0000000000..eba316eea3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0004/pom.xml @@ -0,0 +1,11 @@ + + 4.0.0 + Maven Integration Test :: it0004 + org.apache.maven.its.it0004 + maven-it-it0004 + The simplest of pom installation. We have a pom and we install it in + local repository. + + pom + 1.0 + diff --git a/its/maven-core-integration-tests/src/test/resources/it0005/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0005/pom.xml new file mode 100644 index 0000000000..d14b543ae3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0005/pom.xml @@ -0,0 +1,10 @@ + + 4.0.0 + Maven Integration Test :: it0005 + org.apache.maven.its.it0005 + maven-it-it0005 + The simplest of pom installation. We have a snapshot pom and we install + it in local repository. + pom + 1.0-SNAPSHOT + diff --git a/its/maven-core-integration-tests/src/test/resources/it0006/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0006/pom.xml new file mode 100644 index 0000000000..8fcb300d8a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0006/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + Maven Integration Test :: it0006 + org.apache.maven.its.it0006 + maven-it-it0006 + Integration test for the verifier plugin. + 1.0-alpha-2-SNAPSHOT + + + + maven-verifier-plugin + + + + verify + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0006/src/test/verifier/verifications.xml b/its/maven-core-integration-tests/src/test/resources/it0006/src/test/verifier/verifications.xml new file mode 100644 index 0000000000..b740ea5ed2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0006/src/test/verifier/verifications.xml @@ -0,0 +1,15 @@ + + + + src/test/verifier/verifications.xml + + + src/test/verifier/invalidfile + false + + + pom.xml + Maven.*Integration Test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0007/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0007/pom.xml new file mode 100644 index 0000000000..10d9f425a4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0007/pom.xml @@ -0,0 +1,22 @@ + + + maven-plugin-parent + org.apache.maven.plugins + 2.0 + + 4.0.0 + maven-it-it0007 + We specify a parent in the POM and make sure that it is downloaded as + part of the process. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0007/src/main/java/org/apache/maven/it0007/Person.java b/its/maven-core-integration-tests/src/test/resources/it0007/src/main/java/org/apache/maven/it0007/Person.java new file mode 100644 index 0000000000..fd86c7e709 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0007/src/main/java/org/apache/maven/it0007/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0007; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0007/src/main/resources/it0007.properties b/its/maven-core-integration-tests/src/test/resources/it0007/src/main/resources/it0007.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0007/src/main/resources/it0007.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0007/src/test/java/org/apache/maven/it0007/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0007/src/test/java/org/apache/maven/it0007/PersonTest.java new file mode 100644 index 0000000000..228f5f0e96 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0007/src/test/java/org/apache/maven/it0007/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0007; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0008/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0008/pom.xml new file mode 100644 index 0000000000..4b8638b6f1 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0008/pom.xml @@ -0,0 +1,38 @@ + + 4.0.0 + Maven Integration Test :: it0008 + org.apache.maven.its.it0008 + maven-it-it0008 + Simple goal decoration where a plugin binds to a phase and the plugin must + be downloaded from a remote repository before it can be executed. This + test also checks to make sure that mojo parameters are aligned to the + project basedir when their type is "java.io.File". + + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + + + touch + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0008/src/main/java/org/apache/maven/it0008/Person.java b/its/maven-core-integration-tests/src/test/resources/it0008/src/main/java/org/apache/maven/it0008/Person.java new file mode 100644 index 0000000000..a1505362a2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0008/src/main/java/org/apache/maven/it0008/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0008; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0008/src/test/java/org/apache/maven/it0008/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0008/src/test/java/org/apache/maven/it0008/PersonTest.java new file mode 100644 index 0000000000..0a3c27cc3a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0008/src/test/java/org/apache/maven/it0008/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0008; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0009/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0009/pom.xml new file mode 100644 index 0000000000..a3cd101104 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0009/pom.xml @@ -0,0 +1,44 @@ + + 4.0.0 + Maven Integration Test :: it0009 + org.apache.maven.its.it0009 + maven-it-it0009 + Test plugin configuration and goal configuration that overrides what the + mojo has specified. + + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + pluginItem + bad-item + + + + generate-resources + + touch + + + goalItem + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0010/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0010/pom.xml new file mode 100644 index 0000000000..b6071e3a77 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0010/pom.xml @@ -0,0 +1,32 @@ + + 4.0.0 + Maven Integration Test :: it0010 + org.apache.maven.its.it0010 + maven-it-it0010 + Since the artifact resolution does not use the project builder, we must + ensure that the full hierarchy of all dependencies is resolved. This + includes the dependencies of the parent-pom's of dependencies. This test + will check this, by depending on classworlds, which is a dependency of + maven-component, which is the parent of maven-plugin, which is an + explicit dependency of this test. + # TODO: must correct the assumptions of this test + + jar + 1.0 + + + org.apache.maven + maven-plugin-api + 2.0-beta-1 + jar + compile + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0010/src/main/java/org/apache/maven/it0010/PersonFinder.java b/its/maven-core-integration-tests/src/test/resources/it0010/src/main/java/org/apache/maven/it0010/PersonFinder.java new file mode 100644 index 0000000000..f7097b08d1 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0010/src/main/java/org/apache/maven/it0010/PersonFinder.java @@ -0,0 +1,11 @@ +package org.apache.maven.it0010; + +public class PersonFinder +{ + public void findPerson() + throws Exception + { + // look it up at runtime, but do not require it at compile time + Class.forName( "org.codehaus.classworlds.ClassRealm" ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0010/src/test/java/org/apache/maven/it0010/PersonFinderTest.java b/its/maven-core-integration-tests/src/test/resources/it0010/src/test/java/org/apache/maven/it0010/PersonFinderTest.java new file mode 100644 index 0000000000..ce2ff39dbd --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0010/src/test/java/org/apache/maven/it0010/PersonFinderTest.java @@ -0,0 +1,14 @@ +package org.apache.maven.it0010; + +import junit.framework.TestCase; + +public class PersonFinderTest + extends TestCase +{ + public void testFindPerson() + throws Exception + { + // should be no exceptions + new PersonFinder().findPerson(); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0011/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0011/pom.xml new file mode 100644 index 0000000000..201ee1e94e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0011/pom.xml @@ -0,0 +1,41 @@ + + 4.0.0 + Maven Integration Test :: it0011 + org.apache.maven.its.it0011 + maven-it-it0011 + Test specification of dependency versions via <dependencyManagement/>. + jar + 1.0 + + + org.apache.maven + maven-plugin-api + jar + compile + + + junit + junit + jar + compile + + + + + + org.apache.maven + maven-plugin-api + 2.0-beta-1 + jar + compile + + + junit + junit + 3.8.1 + jar + test + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0011/src/main/java/org/apache/maven/it0011/PersonFinder.java b/its/maven-core-integration-tests/src/test/resources/it0011/src/main/java/org/apache/maven/it0011/PersonFinder.java new file mode 100644 index 0000000000..e932e55733 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0011/src/main/java/org/apache/maven/it0011/PersonFinder.java @@ -0,0 +1,6 @@ +package org.apache.maven.it0011; + +public class PersonFinder +{ + org.apache.maven.plugin.Mojo mojo; +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0012/child-project/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0012/child-project/pom.xml new file mode 100644 index 0000000000..68ae6f4634 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0012/child-project/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + org.apache.maven + child-project + jar + 3.0.3 + + + + maven-it-plugin-touch + org.apache.maven.its.plugins + 1.0-SNAPSHOT + + ${basedir}/target/ + child-touch-${version}.txt + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0012/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0012/pom.xml new file mode 100644 index 0000000000..165628412b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0012/pom.xml @@ -0,0 +1,24 @@ + + 4.0.0 + Maven Integration Test :: it0012 + org.apache.maven.its.it0012 + maven-it-it0012 + Test simple POM interpolation + pom + 3.8.1 + + + + maven-it-plugin-touch + org.apache.maven.its.plugins + 1.0-SNAPSHOT + + touch-${version}.txt + + + + + + child-project + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0013/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0013/pom.xml new file mode 100644 index 0000000000..d28e47a3e9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0013/pom.xml @@ -0,0 +1,34 @@ + + 4.0.0 + Maven Integration Test :: it0013 + org.apache.maven.its.it0013 + maven-it-it0013 + Test plugin-plugin, which tests maven-plugin-tools-api and + maven-plugin-tools-java. This will generate a plugin descriptor from + java-based mojo sources, install the plugin, and then use it. + maven-plugin + 1.0-SNAPSHOT + + + org.apache.maven + maven-plugin-api + 2.0-beta-1 + jar + compile + + + junit + junit + 3.8.1 + jar + test + + + + + central + Test Repository + file:/tmp/testRepo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0013/src/main/java/org/apache/maven/plugin/coreit/CoreIt0013Mojo.java b/its/maven-core-integration-tests/src/test/resources/it0013/src/main/java/org/apache/maven/plugin/coreit/CoreIt0013Mojo.java new file mode 100644 index 0000000000..ef566a63a8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0013/src/main/java/org/apache/maven/plugin/coreit/CoreIt0013Mojo.java @@ -0,0 +1,70 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +/** + * @goal it0013 + * + * @description touches a test file + * + */ +public class CoreIt0013Mojo + extends AbstractMojo +{ + private static final int DELETE_RETRY_SLEEP_MILLIS = 10; + + /** + * @parameter expression="${project.build.directory}" + * @required + */ + private String outputDirectory; + + public void execute() + throws MojoExecutionException + { + getLog().info( "outputDirectory = " + outputDirectory ); + + File f = new File( outputDirectory ); + + if ( !f.exists() ) + { + f.mkdirs(); + } + + File touch = new File( f, "it0013-verify" ); + + try + { + FileWriter w = new FileWriter( touch ); + + w.write( "it0013-verify" ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error writing verification file.", e ); + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0014/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0014/pom.xml new file mode 100644 index 0000000000..0fa7e8a5ea --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0014/pom.xml @@ -0,0 +1,31 @@ + + 4.0.0 + Maven Integration Test :: it0014 + org.apache.maven.its.it0014 + maven-it-it0014 + Test POM configuration by settings the -source and -target for the + compiler to 1.4 + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.4 + 1.4 + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0014/src/main/java/org/apache/maven/it0014/Person.java b/its/maven-core-integration-tests/src/test/resources/it0014/src/main/java/org/apache/maven/it0014/Person.java new file mode 100644 index 0000000000..5add9e7d20 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0014/src/main/java/org/apache/maven/it0014/Person.java @@ -0,0 +1,18 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + + assert true; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0014/src/test/java/org/apache/maven/it0014/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0014/src/test/java/org/apache/maven/it0014/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0014/src/test/java/org/apache/maven/it0014/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0016/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0016/pom.xml new file mode 100644 index 0000000000..071ba01ddb --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0016/pom.xml @@ -0,0 +1,38 @@ + + 4.0.0 + Maven Integration Test :: it0016 + org.apache.maven.its.it0016 + maven-it-it0016 + Test a WAR generation + war + 1.0 + + + + javax.servlet + servlet-api + 2.4 + provided + + + commons-logging + commons-logging + 1.0.3 + + + junit + junit + 3.8.1 + test + + + + + + + org.apache.maven.plugins + maven-war-plugin + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0016/src/main/java/org/apache/maven/it0016/Person.java b/its/maven-core-integration-tests/src/test/resources/it0016/src/main/java/org/apache/maven/it0016/Person.java new file mode 100644 index 0000000000..349355ad05 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0016/src/main/java/org/apache/maven/it0016/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0016; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/WEB-INF/web.xml b/its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..92bb2e9825 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/index.html b/its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/index.html new file mode 100644 index 0000000000..7d8ae2e8d9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0016/src/main/webapp/index.html @@ -0,0 +1,5 @@ + + + Hello World + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0017/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0017/pom.xml new file mode 100644 index 0000000000..350e184e8c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0017/pom.xml @@ -0,0 +1,21 @@ + + 4.0.0 + Maven Integration Test :: it0017 + org.apache.maven.its.it0017 + maven-it-it0017 + Test an EJB generation + ejb + 1.0 + + + + + org.apache.maven.plugins + maven-ejb-plugin + + true + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0017/src/main/java/org/apache/maven/it0017/Person.java b/its/maven-core-integration-tests/src/test/resources/it0017/src/main/java/org/apache/maven/it0017/Person.java new file mode 100644 index 0000000000..b3610c9cc9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0017/src/main/java/org/apache/maven/it0017/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0017; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0017/src/main/resources/META-INF/ejb-jar.xml b/its/maven-core-integration-tests/src/test/resources/it0017/src/main/resources/META-INF/ejb-jar.xml new file mode 100644 index 0000000000..ef027e8779 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0017/src/main/resources/META-INF/ejb-jar.xml @@ -0,0 +1,22 @@ + + + + + Hello + org.apache.maven.it0017.HelloHome + org.apache.maven.it0017.Hello + org.apache.maven.it0017.HelloBean + Stateless + Container + + + + + + Hello + * + + Required + + + \ No newline at end of file diff --git a/its/maven-core-integration-tests/src/test/resources/it0018/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0018/pom.xml new file mode 100644 index 0000000000..8928a53e8a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0018/pom.xml @@ -0,0 +1,31 @@ + + 4.0.0 + Maven Integration Test :: it0018 + org.apache.maven.its.it0018 + maven-it-it0018 + Ensure that managed dependencies for dependency POMs are calculated + correctly when resolved. Removes commons-logging-1.0.3 and checks it is + redownloaded. + 1.0 + + + + marmalade + marmalade-el-commons + 1.0-alpha-2 + + + servletapi + servletapi + + + + + junit + junit + 3.8.1 + test + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0019/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0019/pom.xml new file mode 100644 index 0000000000..37030fac78 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0019/pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + Maven Integration Test :: it0019 + org.apache.maven.its.it0019 + maven-it-it0019 + Test that a version is managed by pluginManagement in the super POM + 1.0 + + + + maven-compiler-plugin + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0019/src/main/java/org/apache/maven/it0019/Person.java b/its/maven-core-integration-tests/src/test/resources/it0019/src/main/java/org/apache/maven/it0019/Person.java new file mode 100644 index 0000000000..30dd2d4dd0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0019/src/main/java/org/apache/maven/it0019/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0019; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0020/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0020/pom.xml new file mode 100644 index 0000000000..036e9e0f81 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0020/pom.xml @@ -0,0 +1,45 @@ + + 4.0.0 + Maven Integration Test :: it0020 + org.apache.maven.its.it0020 + maven-it-it0020 + Test beanshell mojo support. + maven-plugin + 1.0-SNAPSHOT + + + org.apache.maven + maven-script-beanshell + 2.0 + + + + + + maven-plugin-plugin + + + org.apache.maven + maven-plugin-tools-beanshell + 2.0 + + + + + + + src/main/scripts + + **/*.bsh + + + + + + + central + Test Repository + file:/tmp/testRepo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0020/src/main/scripts/org/apache/maven/it0020/it0020.bsh b/its/maven-core-integration-tests/src/test/resources/it0020/src/main/scripts/org/apache/maven/it0020/it0020.bsh new file mode 100644 index 0000000000..d01119fdce --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0020/src/main/scripts/org/apache/maven/it0020/it0020.bsh @@ -0,0 +1,28 @@ +/** + * Beanshell mojo integration test. + * @goal it0020 + */ + +import org.apache.maven.plugin.Mojo; +import org.apache.maven.script.beanshell.BeanshellMojoAdapter; + +execute() +{ + logger.info( "Executing it0020..." ); + print( "info level?" ); + org.codehaus.plexus.util.FileUtils.fileWrite( outDir.getAbsolutePath() + "/out.txt", "This is a Beanshell test" ); +} + +/** + * Output directory for files. + * + * @parameter expression="${project.build.directory}" type="java.io.File" + * @required + */ +setOutDir( file ) +{ + outDir = file; +} + +return new BeanshellMojoAdapter( (Mojo) this, this.interpreter ); + diff --git a/its/maven-core-integration-tests/src/test/resources/it0021/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0021/pom.xml new file mode 100644 index 0000000000..05cc48be36 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0021/pom.xml @@ -0,0 +1,38 @@ + + 4.0.0 + Maven Integration Test :: it0021 + org.apache.maven.its.it0021 + maven-it-it0021 + Test pom-level profile inclusion (this one is activated by system + property). + maven-plugin + 1.0-SNAPSHOT + + + + test-profile + + + + includeProfile + + + + + + org.apache.maven + maven-core-it-support + 1.0 + + + + + + + + central + Test Repository + file:/tmp/testRepo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0021/src/main/java/org/apache/maven/it0021/Person.java b/its/maven-core-integration-tests/src/test/resources/it0021/src/main/java/org/apache/maven/it0021/Person.java new file mode 100644 index 0000000000..c16eaf1526 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0021/src/main/java/org/apache/maven/it0021/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0021; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0022/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0022/pom.xml new file mode 100644 index 0000000000..08825c9b09 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0022/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + Maven Integration Test :: it0022 + org.apache.maven.its.it0022 + maven-it-it0022 + Test profile inclusion from profiles.xml (this one is activated by system property). + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + ${test} + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0022/profiles.xml b/its/maven-core-integration-tests/src/test/resources/it0022/profiles.xml new file mode 100644 index 0000000000..af450d105c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0022/profiles.xml @@ -0,0 +1,17 @@ + + + + test-profile + + + + includeProfile + + + + + test.txt + + + + \ No newline at end of file diff --git a/its/maven-core-integration-tests/src/test/resources/it0022/src/main/java/org/apache/maven/it0022/Person.java b/its/maven-core-integration-tests/src/test/resources/it0022/src/main/java/org/apache/maven/it0022/Person.java new file mode 100644 index 0000000000..e39696a3c7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0022/src/main/java/org/apache/maven/it0022/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0022; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0023/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0023/pom.xml new file mode 100644 index 0000000000..1b7f30f904 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0023/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + Maven Integration Test :: it0023 + org.apache.maven.its.it0023 + maven-it-it0023 + Test profile inclusion from settings.xml (this one is activated by an id in the activeProfiles section). + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + ${test} + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0023/settings.xml b/its/maven-core-integration-tests/src/test/resources/it0023/settings.xml new file mode 100644 index 0000000000..7ba36a4d49 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0023/settings.xml @@ -0,0 +1,21 @@ + + + test-profile + + + + + test-profile + + + + includeProfile + + + + + test.txt + + + + \ No newline at end of file diff --git a/its/maven-core-integration-tests/src/test/resources/it0023/src/main/java/org/apache/maven/it0023/Person.java b/its/maven-core-integration-tests/src/test/resources/it0023/src/main/java/org/apache/maven/it0023/Person.java new file mode 100644 index 0000000000..b57f4308e2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0023/src/main/java/org/apache/maven/it0023/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0023; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0024/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0024/pom.xml new file mode 100644 index 0000000000..c0f2102c05 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0024/pom.xml @@ -0,0 +1,40 @@ + + 4.0.0 + Maven Integration Test :: it0024 + org.apache.maven.its.it0024 + maven-it-it0024 + Test usage of <executions/> inside a plugin rather than <goals/> + that are directly inside th plugin. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + test + generate-sources + + 1.4 + 1.4 + + + compile + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0024/src/main/java/org/apache/maven/it0024/Person.java b/its/maven-core-integration-tests/src/test/resources/it0024/src/main/java/org/apache/maven/it0024/Person.java new file mode 100644 index 0000000000..8b27d410f2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0024/src/main/java/org/apache/maven/it0024/Person.java @@ -0,0 +1,18 @@ +package org.apache.maven.it0024; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + + assert true; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0024/src/test/java/org/apache/maven/it0024/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0024/src/test/java/org/apache/maven/it0024/PersonTest.java new file mode 100644 index 0000000000..9d4a4b4080 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0024/src/test/java/org/apache/maven/it0024/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0024; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0025/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0025/pom.xml new file mode 100644 index 0000000000..7080ff304d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0025/pom.xml @@ -0,0 +1,40 @@ + + 4.0.0 + Maven Integration Test :: it0025 + org.apache.maven.its.it0025 + maven-it-it0025 + Test multiple goal executions with different execution-level configs. + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + + test1 + + + test.txt + + + + touch + + + + test2 + + + test2.txt + + + touch + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0025/src/main/java/org/apache/maven/it0023/Person.java b/its/maven-core-integration-tests/src/test/resources/it0025/src/main/java/org/apache/maven/it0023/Person.java new file mode 100644 index 0000000000..b57f4308e2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0025/src/main/java/org/apache/maven/it0023/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0023; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0026/global-settings.xml b/its/maven-core-integration-tests/src/test/resources/it0026/global-settings.xml new file mode 100644 index 0000000000..ca69453c4e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0026/global-settings.xml @@ -0,0 +1,17 @@ + + + + test-profile + + + + includeProfile + + + + + test.txt + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0026/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0026/pom.xml new file mode 100644 index 0000000000..685bc7e275 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0026/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + Maven Integration Test :: it0026 + org.apache.maven.its.it0026 + maven-it-it0026 + Test merging of global- and user-level settings.xml files. + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + ${test} + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0026/src/main/java/org/apache/maven/it0026/Person.java b/its/maven-core-integration-tests/src/test/resources/it0026/src/main/java/org/apache/maven/it0026/Person.java new file mode 100644 index 0000000000..b57f4308e2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0026/src/main/java/org/apache/maven/it0026/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0023; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0026/user-settings.xml b/its/maven-core-integration-tests/src/test/resources/it0026/user-settings.xml new file mode 100644 index 0000000000..f09eb04a23 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0026/user-settings.xml @@ -0,0 +1,5 @@ + + + test-profile + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0027/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0027/pom.xml new file mode 100644 index 0000000000..eb4eb56b46 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0027/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + Maven Integration Test :: it0027 + org.apache.maven.its.it0027 + maven-it-it0027 + Test @execute with a custom lifecycle, including configuration + jar + 1.0 + + + + org.apache.maven.its.plugins + maven-it-plugin-fork + 1.0-SNAPSHOT + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0028/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0028/pom.xml new file mode 100644 index 0000000000..bc4b9560fc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0028/pom.xml @@ -0,0 +1,32 @@ + + 4.0.0 + Maven Integration Test :: it0028 + org.apache.maven.its.it0028 + maven-it-it0028 + Test that unused configuration parameters from the POM don't cause the + mojo to fail...they will show up as warnings in the -X output instead. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.4 + 1.4 + something + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0028/src/main/java/org/apache/maven/it0028/Person.java b/its/maven-core-integration-tests/src/test/resources/it0028/src/main/java/org/apache/maven/it0028/Person.java new file mode 100644 index 0000000000..5add9e7d20 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0028/src/main/java/org/apache/maven/it0028/Person.java @@ -0,0 +1,18 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + + assert true; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0028/src/test/java/org/apache/maven/it0028/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0028/src/test/java/org/apache/maven/it0028/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0028/src/test/java/org/apache/maven/it0028/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0029/child-project/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0029/child-project/pom.xml new file mode 100644 index 0000000000..7637bfb10d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0029/child-project/pom.xml @@ -0,0 +1,28 @@ + + 4.0.0 + + org.apache.maven.its.it0029 + maven-it-it0029 + 1.0-SNAPSHOT + + child-project + jar + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0029/child-project/src/main/java/org/apache/maven/it0029/Person.java b/its/maven-core-integration-tests/src/test/resources/it0029/child-project/src/main/java/org/apache/maven/it0029/Person.java new file mode 100644 index 0000000000..8688a620db --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0029/child-project/src/main/java/org/apache/maven/it0029/Person.java @@ -0,0 +1,18 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String newName ) + { + assert true; + + this.name = newName; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0029/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0029/pom.xml new file mode 100644 index 0000000000..fbc2bce533 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0029/pom.xml @@ -0,0 +1,29 @@ + + 4.0.0 + Maven Integration Test :: it0029 + org.apache.maven.its.it0029 + maven-it-it0029 + Test for pluginManagement injection of plugin configuration. + 1.0-SNAPSHOT + pom + + + child-project + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + 1.4 + 1.4 + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/pom.xml new file mode 100644 index 0000000000..b4aef6f9fc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + + org.apache.maven.its.it0030 + maven-it-it0030 + 1.0-SNAPSHOT + + child-hierarchy + pom + 1.0-SNAPSHOT + + + junit + junit + test + + + + project1 + project2 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project1/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project1/pom.xml new file mode 100644 index 0000000000..7ca052866f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project1/pom.xml @@ -0,0 +1,10 @@ + + 4.0.0 + + org.apache.maven.its.it0030 + child-hierarchy + 1.0-SNAPSHOT + + project1 + 1.0-SNAPSHOT + diff --git a/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/pom.xml new file mode 100644 index 0000000000..65406092e0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + + org.apache.maven.its.it0030 + child-hierarchy + 1.0-SNAPSHOT + + project2 + 1.0-SNAPSHOT + + + org.apache.maven.its.it0030 + project1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/src/main/java/org/apache/maven/it0030/Person.java b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/src/main/java/org/apache/maven/it0030/Person.java new file mode 100644 index 0000000000..0e0c09da60 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0030/child-hierarchy/project2/src/main/java/org/apache/maven/it0030/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String newName ) + { + this.name = newName; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0030/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0030/pom.xml new file mode 100644 index 0000000000..ccbf5896d6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0030/pom.xml @@ -0,0 +1,27 @@ + + 4.0.0 + Maven Integration Test :: it0030 + org.apache.maven.its.it0030 + maven-it-it0030 + Test for injection of dependencyManagement through parents of + dependency poms. + 1.0-SNAPSHOT + pom + + child-hierarchy + + + + + junit + junit + 3.8.1 + + + org.apache.maven.its.it0030 + project1 + 1.0-SNAPSHOT + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0031/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0031/pom.xml new file mode 100644 index 0000000000..ae7667058b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0031/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + Maven Integration Test :: it0031 + org.apache.maven.its.it0031 + maven-it-it0031 + Test usage of plugins.xml mapping file on the repository to resolve + plugin artifactId from it's prefix using the pluginGroups in + the provided settings.xml. + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + ${test} + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0031/settings.xml b/its/maven-core-integration-tests/src/test/resources/it0031/settings.xml new file mode 100644 index 0000000000..002e21129c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0031/settings.xml @@ -0,0 +1,19 @@ + + + org.codehaus.modello + + + + test + Test Mirror of ibiblio.org + http://test.maven.codehaus.org/maven2 + central + + + test-plugins + Test Mirror of ibiblio.org Plugin Repository + http://test.maven.codehaus.org/maven2/plugins + central-plugins + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0031/src/main/mdo/test.mdo b/its/maven-core-integration-tests/src/test/resources/it0031/src/main/mdo/test.mdo new file mode 100644 index 0000000000..b257051457 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0031/src/main/mdo/test.mdo @@ -0,0 +1,20 @@ + + lifecycle-mappings + LifecycleMappings + + + + package + org.apache.maven.it.it0031 + + + + + Root + 1.0.0 + Root element of the test model. + + + \ No newline at end of file diff --git a/its/maven-core-integration-tests/src/test/resources/it0032/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0032/pom.xml new file mode 100644 index 0000000000..85885d9c81 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0032/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + Maven Integration Test :: it0032 + org.apache.maven.its.it0032 + maven-it-it0032 + Tests that a specified Maven version requirement that is lower doesn't cause any problems + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + 2.0-alpha-3 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0032/src/main/java/org/apache/maven/it0032/Person.java b/its/maven-core-integration-tests/src/test/resources/it0032/src/main/java/org/apache/maven/it0032/Person.java new file mode 100644 index 0000000000..4d5d008b82 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0032/src/main/java/org/apache/maven/it0032/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0032; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0032/src/main/resources/it0032.properties b/its/maven-core-integration-tests/src/test/resources/it0032/src/main/resources/it0032.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0032/src/main/resources/it0032.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0032/src/test/java/org/apache/maven/it0032/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0032/src/test/java/org/apache/maven/it0032/PersonTest.java new file mode 100644 index 0000000000..6676512c54 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0032/src/test/java/org/apache/maven/it0032/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0032; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0033/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0033/pom.xml new file mode 100644 index 0000000000..a307a785b1 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0033/pom.xml @@ -0,0 +1,21 @@ + + 4.0.0 + Maven Integration Test :: it0033 + org.apache.maven.its.it0033 + maven-it-it0033 + Test an EAR generation + ear + 1.0 + + + + + org.apache.maven.plugins + maven-ear-plugin + + true + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0033/src/main/application/META-INF/appserver-application.xml b/its/maven-core-integration-tests/src/test/resources/it0033/src/main/application/META-INF/appserver-application.xml new file mode 100644 index 0000000000..29c20a5402 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0033/src/main/application/META-INF/appserver-application.xml @@ -0,0 +1,4 @@ + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0034/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0034/pom.xml new file mode 100644 index 0000000000..caacf55e0b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0034/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + Maven Integration Test :: it0034 + org.apache.maven.its.it0034 + maven-it-it0034 + Test version range junit [3.7,) resolves to 3.8.1 + 1.0 + + + junit + junit + + (,3.8.1) + test + + + org.apache.maven + maven-core-it-support + [1.0,) + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0035/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0035/pom.xml new file mode 100644 index 0000000000..8bec551db4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0035/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + Maven Integration Test :: it0035 + org.apache.maven.its.it0035 + maven-it-it0035 + Test artifact relocation. + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + org.apache.maven + maven-core-it-support-old-location + 1.1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0036/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0036/pom.xml new file mode 100644 index 0000000000..f294ce2c9a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0036/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + Maven Integration Test :: it0036 + org.apache.maven.its.it0036 + maven-it-it0036 + Test building from release-pom.xml when it's available + jar + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0036/release-pom.xml b/its/maven-core-integration-tests/src/test/resources/it0036/release-pom.xml new file mode 100644 index 0000000000..eeaa83a6a6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0036/release-pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + org.apache.maven + maven-it-it0036 + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0036/src/main/java/org/apache/maven/it0036/Person.java b/its/maven-core-integration-tests/src/test/resources/it0036/src/main/java/org/apache/maven/it0036/Person.java new file mode 100644 index 0000000000..fff07573b9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0036/src/main/java/org/apache/maven/it0036/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0036; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0036/src/test/java/org/apache/maven/it0036/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0036/src/test/java/org/apache/maven/it0036/PersonTest.java new file mode 100644 index 0000000000..de09d3bcf9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0036/src/test/java/org/apache/maven/it0036/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0036; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0037/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0037/pom.xml new file mode 100644 index 0000000000..c70e93a7e4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0037/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + Maven Integration Test :: it0037 + org.apache.maven.its.it0037 + maven-it-it0037 + Test building with alternate pom file using '-f' + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0037/pom2.xml b/its/maven-core-integration-tests/src/test/resources/it0037/pom2.xml new file mode 100644 index 0000000000..3b98a30f0e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0037/pom2.xml @@ -0,0 +1,16 @@ + + 4.0.0 + org.apache.maven.its.it0037 + maven-it-it0037 + jar + 1.0-build2 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0037/src/main/java/org/apache/maven/it0037/Person.java b/its/maven-core-integration-tests/src/test/resources/it0037/src/main/java/org/apache/maven/it0037/Person.java new file mode 100644 index 0000000000..a9fb4bc9d2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0037/src/main/java/org/apache/maven/it0037/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0000; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0037/src/test/java/org/apache/maven/it0000/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0037/src/test/java/org/apache/maven/it0000/PersonTest.java new file mode 100644 index 0000000000..354f917f46 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0037/src/test/java/org/apache/maven/it0000/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0000; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0038/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0038/pom.xml new file mode 100644 index 0000000000..d35a2c7fe7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0038/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + Maven Integration Test :: it0038 + org.apache.maven.its.it0038 + maven-it-it0038 + Test building project from outside the project directory using '-f' + option + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0038/project/pom2.xml b/its/maven-core-integration-tests/src/test/resources/it0038/project/pom2.xml new file mode 100644 index 0000000000..b650ca03cd --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0038/project/pom2.xml @@ -0,0 +1,16 @@ + + 4.0.0 + org.apache.maven.its.it0038 + maven-it-it0038 + jar + 1.0-build2 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0038/project/src/main/java/org/apache/maven/it0038/Person.java b/its/maven-core-integration-tests/src/test/resources/it0038/project/src/main/java/org/apache/maven/it0038/Person.java new file mode 100644 index 0000000000..a9fb4bc9d2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0038/project/src/main/java/org/apache/maven/it0038/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0000; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0038/project/src/test/java/org/apache/maven/it0000/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0038/project/src/test/java/org/apache/maven/it0000/PersonTest.java new file mode 100644 index 0000000000..354f917f46 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0038/project/src/test/java/org/apache/maven/it0000/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0000; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0039/project/pom.xml new file mode 100644 index 0000000000..f3c57e5c3b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project/pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + org.apache.maven.its.it0039 + maven-it-it0039-p1 + jar + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project/release-pom.xml b/its/maven-core-integration-tests/src/test/resources/it0039/project/release-pom.xml new file mode 100644 index 0000000000..93ed141837 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project/release-pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + org.apache.maven.its.it0039 + maven-it-it0039-p1 + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project/src/main/java/org/apache/maven/it0039/Person.java b/its/maven-core-integration-tests/src/test/resources/it0039/project/src/main/java/org/apache/maven/it0039/Person.java new file mode 100644 index 0000000000..6d58f083b4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project/src/main/java/org/apache/maven/it0039/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0039; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project/src/test/java/org/apache/maven/it0039/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0039/project/src/test/java/org/apache/maven/it0039/PersonTest.java new file mode 100644 index 0000000000..cd28579751 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project/src/test/java/org/apache/maven/it0039/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0039; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0039/project2/pom.xml new file mode 100644 index 0000000000..02a1cf21d5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project2/pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + org.apache.maven.its.it0039 + maven-it-it0039-p2 + jar + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project2/release-pom.xml b/its/maven-core-integration-tests/src/test/resources/it0039/project2/release-pom.xml new file mode 100644 index 0000000000..c3c0b0e587 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project2/release-pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + org.apache.maven.its.it0039 + maven-it-it0039-p2 + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project2/src/main/java/org/apache/maven/it0039/Person2.java b/its/maven-core-integration-tests/src/test/resources/it0039/project2/src/main/java/org/apache/maven/it0039/Person2.java new file mode 100644 index 0000000000..eff2bcaa0f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project2/src/main/java/org/apache/maven/it0039/Person2.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0039; + +public class Person2 +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0039/project2/src/test/java/org/apache/maven/it0039/Person2Test.java b/its/maven-core-integration-tests/src/test/resources/it0039/project2/src/test/java/org/apache/maven/it0039/Person2Test.java new file mode 100644 index 0000000000..2fd5181e02 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0039/project2/src/test/java/org/apache/maven/it0039/Person2Test.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0039; + +import junit.framework.TestCase; + +public class Person2Test + extends TestCase +{ + public void testPerson() + { + Person2 person = new Person2(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0040/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0040/pom.xml new file mode 100644 index 0000000000..5a6879c0d3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0040/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + Maven Integration Test :: it0040 + org.apache.maven.its.it0040 + maven-it-it0040 + Test the use of a packaging from a plugin + it-packaging + 1.0 + + + + org.apache.maven.its.plugins + maven-it-plugin-packaging + 1.0-SNAPSHOT + true + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0041/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0041/pom.xml new file mode 100644 index 0000000000..e9a67bf33d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0041/pom.xml @@ -0,0 +1,26 @@ + + 4.0.0 + Maven Integration Test :: it0041 + org.apache.maven.its.it0041 + maven-it-it0041 + Test the use of a new type from a plugin + 1.0-SNAPSHOT + + + org.apache.maven + maven-core-it-support + 1.2 + it-artifact + + + + + + org.apache.maven.its.plugins + maven-it-plugin-packaging + 1.0-SNAPSHOT + true + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0042/pom.xml new file mode 100644 index 0000000000..4a1db263fe --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + Maven Integration Test :: it0042 + org.apache.maven.its.it0042 + maven-it-it0042 + Test that the reactor can establish the artifact location of known projects for dependencies + 0.1 + pom + + test-component-c + test-component-b + test-component-a + test-plugin + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/pom.xml new file mode 100644 index 0000000000..379c5cad60 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + + maven-it-it0042 + org.apache.maven.its.it0042 + 0.1 + + test-component-a + 0.1 + Test Component A + jar + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/src/main/java/A.java b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/src/main/java/A.java new file mode 100644 index 0000000000..73e270dbea --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-a/src/main/java/A.java @@ -0,0 +1,3 @@ +public class A { +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/pom.xml new file mode 100644 index 0000000000..1ced58c70f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + maven-it-it0042 + org.apache.maven.its.it0042 + 0.1 + + test-component-b + 0.1 + Test Component B + jar + + + org.apache.maven.its.it0042 + test-component-a + 0.1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/src/main/java/B.java b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/src/main/java/B.java new file mode 100644 index 0000000000..c288d4d8b7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-b/src/main/java/B.java @@ -0,0 +1,5 @@ +public class B + extends A +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/pom.xml new file mode 100644 index 0000000000..a80af53bdc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/pom.xml @@ -0,0 +1,40 @@ + + 4.0.0 + + maven-it-it0042 + org.apache.maven.its.it0042 + 0.1 + + + test-component-c + 0.1 + Test Component C + war + + + org.apache.maven.its.it0042 + test-component-b + 0.1 + + + + + + + org.apache.maven.its.it0042 + test-plugin + 0.1 + + my-test + + + + + test + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/java/C.java b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/java/C.java new file mode 100644 index 0000000000..f7546a58a7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/java/C.java @@ -0,0 +1,5 @@ +public class C + extends A +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/webapp/WEB-INF/web.xml b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..92bb2e9825 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-component-c/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/pom.xml new file mode 100644 index 0000000000..76ac302991 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + maven-it-it0042 + org.apache.maven.its.it0042 + 0.1 + + test-plugin + maven-plugin + 0.1 + Test Plugin + + + org.apache.maven + maven-plugin-api + 2.0-beta-1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java b/its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java new file mode 100644 index 0000000000..ad958a7e66 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0042/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java @@ -0,0 +1,77 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +/** + * @goal test + * + * @phase process-sources + * + * @description Goal which cleans the build + */ +public class CoreItMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project.build.directory}" + * @required + */ + private String outputDirectory; + + /** + * @parameter + * @required + */ + private String value; + + public void execute() + throws MojoExecutionException + { + touch( new File( outputDirectory ), value ); + } + + private static void touch( File dir, String file ) + throws MojoExecutionException + { + try + { + if ( !dir.exists() ) + { + dir.mkdirs(); + } + + File touch = new File( dir, file ); + + FileWriter w = new FileWriter( touch ); + + w.write( file ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error touching file", e ); + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0043/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0043/pom.xml new file mode 100644 index 0000000000..deca43ef9b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0043/pom.xml @@ -0,0 +1,52 @@ + + 4.0.0 + Maven Integration Test :: it0043 + org.apache.maven.its.it0043 + maven-it-it0043 + Test for repository inheritence - ensure using the same id overrides the defaults + 1.0-SNAPSHOT + + + + central + Empty Repository + file:/tmp/emptyRepo + + + + + + central + Empty Repository + file:/tmp/emptyRepo + + + + + + + junit + junit + 3.8.1 + + + + + + + maven-help-plugin + + + generate-test-resources + + effective-pom + + + ${project.build.directory}/effective-pom.xml + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0043/src/test/java/org/apache/maven/project/inheritance/RepositoryOverrideTest.java b/its/maven-core-integration-tests/src/test/resources/it0043/src/test/java/org/apache/maven/project/inheritance/RepositoryOverrideTest.java new file mode 100644 index 0000000000..1dcbd765d5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0043/src/test/java/org/apache/maven/project/inheritance/RepositoryOverrideTest.java @@ -0,0 +1,26 @@ +import java.io.BufferedInputStream; +import java.io.ByteArrayOutputStream; +import java.io.FileInputStream; + +import junit.framework.TestCase; + +public class RepositoryOverrideTest extends TestCase +{ + public void testPOM() throws Exception + { + + BufferedInputStream in = new BufferedInputStream( new FileInputStream("target/effective-pom.xml") ); + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + + int rd = 0; + byte [] buffer = new byte[512]; + + while ( ( rd = in.read( buffer ) ) > 0 ) + { + out.write( buffer, 0, rd ); + } + + assertEquals( -1, out.toString().indexOf("repo1.maven.org") ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0044/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0044/pom.xml new file mode 100644 index 0000000000..13f1cc166d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0044/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + Maven Integration Test :: it0044 + org.apache.maven.its.it0044 + maven-it-it0044 + Test --settings CLI option + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + ${test} + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0044/settings.xml b/its/maven-core-integration-tests/src/test/resources/it0044/settings.xml new file mode 100644 index 0000000000..6d6edbf30f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0044/settings.xml @@ -0,0 +1,15 @@ + + + test-profile + + + + + test-profile + + + test.txt + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0044/src/main/java/org/apache/maven/it0044/Person.java b/its/maven-core-integration-tests/src/test/resources/it0044/src/main/java/org/apache/maven/it0044/Person.java new file mode 100644 index 0000000000..b57f4308e2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0044/src/main/java/org/apache/maven/it0044/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0023; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0045/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0045/pom.xml new file mode 100644 index 0000000000..3d0ecbcc47 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0045/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + Maven Integration Test :: it0045 + org.apache.maven.its.it0045 + maven-it-it0045 + Test non-reactor behavior when plugin declares "@requiresProject false" + pom + 1.0 + + subproject + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0045/subproject/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0045/subproject/pom.xml new file mode 100644 index 0000000000..2b180d7e6d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0045/subproject/pom.xml @@ -0,0 +1,10 @@ + + 4.0.0 + + org.apache.maven.its.it0045 + maven-it-it0045 + 1.0 + + subproject + jar + diff --git a/its/maven-core-integration-tests/src/test/resources/it0046/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0046/pom.xml new file mode 100644 index 0000000000..ec71d0208f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0046/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + Maven Integration Test :: it0046 + org.apache.maven.its.it0046 + maven-it-it0046 + Test fail-never reactor behavior. Forces an exception to be thrown in + the first module, but checks that the second modules is built. + pom + 1.0 + + subproject + subproject2 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0046/subproject/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0046/subproject/pom.xml new file mode 100644 index 0000000000..f53f266029 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0046/subproject/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + + org.apache.maven.its.it0046 + maven-it-it0046 + 1.0 + + subproject + jar + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + true + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0046/subproject2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0046/subproject2/pom.xml new file mode 100644 index 0000000000..31bb2e6018 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0046/subproject2/pom.xml @@ -0,0 +1,10 @@ + + 4.0.0 + + org.apache.maven.its.it0046 + maven-it-it0046 + 1.0 + + subproject2 + jar + diff --git a/its/maven-core-integration-tests/src/test/resources/it0047/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0047/pom.xml new file mode 100644 index 0000000000..9152ac60fc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0047/pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + Maven Integration Test :: it0047 + org.apache.maven.its.it0047 + maven-it-it0047 + Test the use case for having a compile time dependency be transitive: + when you extend a class you need its dependencies at compile time. + 1.0 + + + org.codehaus.plexus + plexus-container-default + 1.0-alpha-7 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0047/src/main/java/org/apache/maven/it0047/Person.java b/its/maven-core-integration-tests/src/test/resources/it0047/src/main/java/org/apache/maven/it0047/Person.java new file mode 100644 index 0000000000..ce8320bf4d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0047/src/main/java/org/apache/maven/it0047/Person.java @@ -0,0 +1,19 @@ +package org.apache.maven.it0047; + +import org.codehaus.plexus.PlexusTestCase; + +public class Person + extends PlexusTestCase +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0048/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0048/pom.xml new file mode 100644 index 0000000000..0456dde5ff --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0048/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + Maven Integration Test :: it0048 + org.apache.maven.its.it0048 + maven-it-it0048 + Verify that default values for mojo parameters are working (indirectly, + by verifying that the Surefire mojo is functioning correctly). + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0048/src/main/java/org/apache/maven/it0048/Person.java b/its/maven-core-integration-tests/src/test/resources/it0048/src/main/java/org/apache/maven/it0048/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0048/src/main/java/org/apache/maven/it0048/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0048/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0048/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0048/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0048/src/test/java/org/apache/maven/it0048/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0048/src/test/java/org/apache/maven/it0048/PersonTest.java new file mode 100644 index 0000000000..e046cd5c95 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0048/src/test/java/org/apache/maven/it0048/PersonTest.java @@ -0,0 +1,40 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; +import java.net.URL; +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +public class PersonTest + extends TestCase +{ + public void testPerson() throws IOException + { + ClassLoader cloader = getClass().getClassLoader(); + + String path = getClass().getName().replace( '.', '/' ) + ".class"; + + URL resource = cloader.getResource( path ); + + File resourceFile = new File( resource.getPath() ); + + String dirPath = resourceFile.getAbsolutePath(); + + dirPath = dirPath.substring( 0, dirPath.length() - path.length() ); + + File dir = new File( dirPath ); + + dir = dir.getParentFile(); + + File testFile = new File( dir, "testFileOutput.txt" ); + + FileWriter writer = new FileWriter( testFile ); + + writer.write( "Test" ); + + writer.flush(); + + writer.close(); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0049/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0049/pom.xml new file mode 100644 index 0000000000..b1f287e925 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0049/pom.xml @@ -0,0 +1,21 @@ + + 4.0.0 + Maven Integration Test :: it0049 + org.apache.maven.its.it0049 + maven-it-it0049 + Test parameter alias usage. + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + touchFile.txt + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0050/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0050/pom.xml new file mode 100644 index 0000000000..7f9ab5b63e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0050/pom.xml @@ -0,0 +1,34 @@ + + 4.0.0 + Maven Integration Test :: it0050 + org.apache.maven.its.it0050 + maven-it-it0050 + Test surefire inclusion/exclusions + 1.0-SNAPSHOT + + + + junit + junit + 3.8.1 + test + + + + + + + maven-surefire-plugin + + + DontRunTest.* + + + NotIncludedByDefault.java + *Test.java + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DefaultTest.java b/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DefaultTest.java new file mode 100644 index 0000000000..68cbba49ee --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DefaultTest.java @@ -0,0 +1,13 @@ +import java.io.FileOutputStream; + +public class DefaultTest +{ + public void testRun() + throws Exception + { + FileOutputStream fout = new FileOutputStream("target/defaultTestTouchFile.txt"); + fout.write('!'); + fout.flush(); + fout.close(); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DontRunTest.java b/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DontRunTest.java new file mode 100644 index 0000000000..90065964c2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/DontRunTest.java @@ -0,0 +1,9 @@ +import junit.framework.TestCase; + +public class DontRunTest extends TestCase +{ + public void testRun() + { + assertEquals(true, false); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/NotIncludedByDefault.java b/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/NotIncludedByDefault.java new file mode 100644 index 0000000000..11c15ba6a8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0050/src/test/java/NotIncludedByDefault.java @@ -0,0 +1,13 @@ +import java.io.FileOutputStream; + +public class NotIncludedByDefault +{ + public void testRun() + throws Exception + { + FileOutputStream fout = new FileOutputStream("target/testTouchFile.txt"); + fout.write('!'); + fout.flush(); + fout.close(); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0051/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0051/pom.xml new file mode 100644 index 0000000000..8c3344d49f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0051/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + Maven Integration Test :: it0051 + org.apache.maven.its.it0051 + maven-it-it0051 + Test source attachment when -DperformRelease=true is specified. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0051/src/main/java/org/apache/maven/it0051/Person.java b/its/maven-core-integration-tests/src/test/resources/it0051/src/main/java/org/apache/maven/it0051/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0051/src/main/java/org/apache/maven/it0051/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0051/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0051/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0051/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0051/src/test/java/org/apache/maven/it0051/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0051/src/test/java/org/apache/maven/it0051/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0051/src/test/java/org/apache/maven/it0051/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0052/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0052/pom.xml new file mode 100644 index 0000000000..467bf88886 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0052/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + Maven Integration Test :: it0052 + org.apache.maven.its.it0052 + maven-it-it0052 + Test that source attachment doesn't take place when + -DperformRelease=true is missing. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0052/src/main/java/org/apache/maven/it0052/Person.java b/its/maven-core-integration-tests/src/test/resources/it0052/src/main/java/org/apache/maven/it0052/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0052/src/main/java/org/apache/maven/it0052/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0052/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0052/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0052/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0052/src/test/java/org/apache/maven/it0001/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0052/src/test/java/org/apache/maven/it0001/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0052/src/test/java/org/apache/maven/it0001/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0053/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0053/pom.xml new file mode 100644 index 0000000000..eba0d4b0b3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0053/pom.xml @@ -0,0 +1,27 @@ + + 4.0.0 + Maven Integration Test :: it0053 + org.apache.maven.its.it0053 + maven-it-it0053 + Test that attached artifacts have the same buildnumber and timestamp + as the main artifact. This will not correctly verify until we have + some way to pattern-match the buildnumber/timestamp... + jar + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + jar + test + + + + + + test + file:target/test-repo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0053/src/main/java/org/apache/maven/it0053/Person.java b/its/maven-core-integration-tests/src/test/resources/it0053/src/main/java/org/apache/maven/it0053/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0053/src/main/java/org/apache/maven/it0053/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0053/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0053/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0053/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0053/src/test/java/org/apache/maven/it0001/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0053/src/test/java/org/apache/maven/it0001/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0053/src/test/java/org/apache/maven/it0001/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0054/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0054/pom.xml new file mode 100644 index 0000000000..efeac0da63 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0054/pom.xml @@ -0,0 +1,29 @@ + + 4.0.0 + Maven Integration Test :: it0054 + org.apache.maven.its.it0054 + maven-it-it0054 + Test resource filtering. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + src/main/filters/filters.properties + + + + src/main/resources + true + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0054/src/main/filters/filters.properties b/its/maven-core-integration-tests/src/test/resources/it0054/src/main/filters/filters.properties new file mode 100644 index 0000000000..b1493898ed --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0054/src/main/filters/filters.properties @@ -0,0 +1,2 @@ +surname = van zyl +country = Canada diff --git a/its/maven-core-integration-tests/src/test/resources/it0054/src/main/java/org/apache/maven/it0054/Person.java b/its/maven-core-integration-tests/src/test/resources/it0054/src/main/java/org/apache/maven/it0054/Person.java new file mode 100644 index 0000000000..aeea64e75e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0054/src/main/java/org/apache/maven/it0054/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0054; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0054/src/main/resources/it0054.properties b/its/maven-core-integration-tests/src/test/resources/it0054/src/main/resources/it0054.properties new file mode 100644 index 0000000000..98cf1d43c7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0054/src/main/resources/it0054.properties @@ -0,0 +1,3 @@ +name = jason +surname = ${surname} +country = @country@ diff --git a/its/maven-core-integration-tests/src/test/resources/it0054/src/test/java/org/apache/maven/it0054/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0054/src/test/java/org/apache/maven/it0054/PersonTest.java new file mode 100644 index 0000000000..af394f3652 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0054/src/test/java/org/apache/maven/it0054/PersonTest.java @@ -0,0 +1,24 @@ +package org.apache.maven.it0054; + +import java.util.Properties; +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + throws Exception + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + + Properties p = new Properties(); + p.load( getClass().getResourceAsStream( "/it0054.properties" ) ); + assertEquals( "check name", "jason", p.getProperty( "name" ) ); + assertEquals( "check surname", "van zyl", p.getProperty( "surname" ) ); + assertEquals( "check country", "Canada", p.getProperty( "country" ) ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0055/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0055/pom.xml new file mode 100644 index 0000000000..b0da61f3d6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0055/pom.xml @@ -0,0 +1,36 @@ + + 4.0.0 + Maven Integration Test :: it0055 + org.apache.maven.its.it0055 + maven-it-it0055 + Test that source includes/excludes with in the compiler plugin config. + This will test excludes and testExcludes... + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + **/PersonTwo.java + + + **/PersonTwoTest.java + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/Person.java b/its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/PersonTwo.java b/its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/PersonTwo.java new file mode 100644 index 0000000000..981e8f653e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0055/src/main/java/org/apache/maven/it0055/PersonTwo.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class PersonTwo +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0055/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0055/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0055/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTwoTest.java b/its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTwoTest.java new file mode 100644 index 0000000000..ccec93c557 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0055/src/test/java/org/apache/maven/it0055/PersonTwoTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTwoTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0056/pom.xml new file mode 100644 index 0000000000..ee1eae7d64 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/pom.xml @@ -0,0 +1,45 @@ + + 4.0.0 + Maven Integration Test :: it0056 + org.apache.maven.its.it0056 + maven-it-it0056 + Test that multiple executions of the compile goal with different + includes/excludes will succeed. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + validation-phase-execution + validate + + compile + + + + **/PersonTwo.java + + + **/PersonTwoTest.java + + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/Person.java b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonThree.java b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonThree.java new file mode 100644 index 0000000000..86cc418a94 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonThree.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class PersonThree +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonTwo.java b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonTwo.java new file mode 100644 index 0000000000..981e8f653e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/java/org/apache/maven/it0056/PersonTwo.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class PersonTwo +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonThreeTest.java b/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonThreeTest.java new file mode 100644 index 0000000000..f1b23a1f41 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonThreeTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonThreeTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTwoTest.java b/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTwoTest.java new file mode 100644 index 0000000000..ccec93c557 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0056/src/test/java/org/apache/maven/it0056/PersonTwoTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTwoTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0057/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0057/pom.xml new file mode 100644 index 0000000000..98df5c8683 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0057/pom.xml @@ -0,0 +1,17 @@ + + 4.0.0 + Maven Integration Test :: it0057 + org.apache.maven.its.it0057 + maven-it-it0057 + Verify that scope == 'provided' dependencies are available to tests. + jar + 1.0 + + + junit + junit + 3.8.1 + provided + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0057/src/main/java/org/apache/maven/it0057/Person.java b/its/maven-core-integration-tests/src/test/resources/it0057/src/main/java/org/apache/maven/it0057/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0057/src/main/java/org/apache/maven/it0057/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0057/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0057/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0057/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0057/src/test/java/org/apache/maven/it0057/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0057/src/test/java/org/apache/maven/it0057/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0057/src/test/java/org/apache/maven/it0057/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0058/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0058/pom.xml new file mode 100644 index 0000000000..83dada010c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0058/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + Maven Integration Test :: it0058 + org.apache.maven.its.it0058 + maven-it-it0058 + Verify that profiles from settings.xml do not pollute module lists + across projects in a reactorized build. + pom + 1.0 + + + subproject + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0058/settings.xml b/its/maven-core-integration-tests/src/test/resources/it0058/settings.xml new file mode 100644 index 0000000000..e7d77bbda8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0058/settings.xml @@ -0,0 +1,19 @@ + + + + + test-repo + + + test-repo + file:../../test-repo + + + + + + + test-repo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0058/subproject/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/pom.xml new file mode 100644 index 0000000000..620dcfaac6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + + org.apache.maven.its.it0058 + maven-it-it0058 + 1.0 + + subproject + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/java/org/apache/maven/it0058/Person.java b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/java/org/apache/maven/it0058/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/java/org/apache/maven/it0058/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/test/java/org/apache/maven/it0058/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/test/java/org/apache/maven/it0058/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0058/subproject/src/test/java/org/apache/maven/it0058/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0059/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0059/pom.xml new file mode 100644 index 0000000000..fc795e4e17 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0059/pom.xml @@ -0,0 +1,25 @@ + + 4.0.0 + Maven Integration Test :: it0059 + org.apache.maven.its.it0059 + maven-it-it0059 + Verify that maven-1 POMs will be ignored but not stop the resolution + process. + 1.0 + + + + test + file:test-repo + + + + + + test + test + 3.8.1 + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0059/src/main/java/org/apache/maven/it0059/Person.java b/its/maven-core-integration-tests/src/test/resources/it0059/src/main/java/org/apache/maven/it0059/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0059/src/main/java/org/apache/maven/it0059/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0059/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0059/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0059/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0059/test-repo/test/test/3.8.1/test-3.8.1.jar b/its/maven-core-integration-tests/src/test/resources/it0059/test-repo/test/test/3.8.1/test-3.8.1.jar new file mode 100644 index 0000000000000000000000000000000000000000..674d71e89ea154dbe2e3cd032821c22b39e8fd68 GIT binary patch literal 121070 zcmbrk1CV6hwk_Oc+qP}nwr$(4E_d0sZC7>Kwr$&d{hf2}dG~%1??n9fPwdQyHFD?7 zHTIlyry!qDw;?Jv$h_V2Ugsdo?{2v(d5AZ+tzr&FKJ4{AE zRzg%nNtsqg^j>CSTw02Tb{0m8hH`3Rx`vK%D>l%>QxnzcUK;Unggx zWv6BMN5uc6{_k^)_g_G|f6lRhp`DAfu!VuOof$C$t&z2Xlar6Ujue&vG7p*nXI~-i5u%&4#^6t_YK&C*e^HIJaGnC=x3uT zj^~L_FF&tP>Ze+fQn@*K3pwpmWsgmT#4{q2fRoCmYk%;fU#XCE@VjZxHq3EduCXM{ zHYpt0nPc)^I(il47Zt+e@gSB!&Lr;Q3 zQ?aqSIKKhUlZb)*0VkVCd5 ztmc=Psm2>G`k+`OZz;v8>jL=O87@2*1jL$kR$~ftP#yqu9)R8yX44c13ANCto}IQD z@N(>~!FS=`p-&a`rMf4`eDTMls*zrfxq1)Rhp=;f-h6-iZS& z`&i%&)$c;*#?`_W(gQgS!W!|c{m8vn3x1{-HgncNIgy3qgxJrYLWRiZtuWL@CXx5i z%TOCq1b|dB4rtAxF8AuFwX$_uDcIE?KC~|GRx969W2gdRFy1F0RuI#(&W5tk3@1GK z6Ns&SwSNe{YU+M;@D8GjGobsNM&Zb%uBZmI#G2|C61?L@5v;iawvf>l&1JmgU5ZCB zq^dR3Y!naj$hnu!yc+y)u6e^UhAFlCxy49`EH=tjtZtHDq&6T4HXX)ymK`*9Dj7u% zZFP`ltit-sWpcCUDAG|>)k#V&tXuz>tw6Rzj)jP2ozH}vF0e9tYmv!odzMg6%p$X1@Iy&<6 zeeU@7`~G^`u5p`<#PuetbQyZ={Ha zpxyv~pguYVgZY}sAcPL737oz^#~Q{8Q)P}8M!N#b(QKvOtf5$|h(CedmC@4z>IHHHG~OMQS0hZIZ83iYIC#zf;@!TWD9Re&&x>Yvt;l)gltCO*Kllj6d>i~ zltwl8+*w*k-)R@o#N8!vyaABT+&ys_OF<$Y%N#`B{n#%H~m|IY+8?;D^u+ zF|(S0OThCqOOHT+oHAUP%@u+f+XKhYhU&u=ii(SLVo7}^Af_XhY__(QKBzjR--u(h zKa)W*nM@UWaSeHWvsYCv=4;jZbR4rGVH6N$_YhpopS&?vm&F-;f5e^F&z%tOktzG=4$|!KrfnB zJRFyny(EJ6qlgGAnUr*H#qJy`rbX`0-1#&Jrt|G07%|puWh0@;l}^8WGat%}me(_T zmP7>u-SPQ`TqP-O@h9eLDQcz|^9&tG-C293=7G;lG-|G6X)5>0Yozb=0~Y$nO%4_-3pR*;C}8N9U~?u$ePMia6|8Xt|a zad*05Lc)(>VakYlAuluzPnnKfBR;Uyfw-MyRP?B|hG!}Y7PJbY$1q2&sZfr57)HD- z;6?KhZ)A%C*`h?27|r;!W>8eukxXn%qI$c~aM3pFWCS6kZH3qV^5lZx3P9$~y>bP0 zY3mw-O!I0(k^JZ-XP8+^T)D=G{mWLJ!4P3)RS`2Bt@&AZm|qE-F3u%LEW{NnI>TGe z&VDdHC7x#|a$<1IEiOwp&L~2PO2hV?o|PeHe!XRsQ=-!jWqW{=??9gVTX`m11d|JB z?}0Abdq;y`vAB?veKSIn4I`&{J=AwwoOz*ZjT+LVo)7XUbkiAB?TCp-lKko8K3nT@ zC*gM0V9rIox{E5)y44(Zljr4THJ(rHnqnNA#jN)&Ayy5oaVJZQAwLXwELA=|G5B(k_+|@+;+)VNHiXc8#Q^;bxW0~v-@&+U=;HG+ zxJ0Nt2Qgub*_e$;@O*^PwJDja^r~%? z3D<(@IiZl#o%1Ma~64me)K%3wrv8g-5gTeyIIsrX-suAd=m~^O5N??^>Iy6lo zAA(%UL^yzGR-v!t5L2|i+Epm+sPwsFvObN`l~x?sPwIfJAdeI!LtZMw zi6PX_V-B8&Dg${&ZFoMJ&g25_RC0KdhL~P$o^;Nz&2ni?*o>GLVrmUxfTPJ=IUM52 zYok(IWXNJ|EbX(gIFAOSHuxJ-vp|YAerluB2&*|KOa{DI9NeZgCiOuYL)gjLWPqS< zGa9z;QW;)zLB?;!Ax1Mf#vpA z5OPC;3sLRBa83zpxYxW0Lm1`<)a7^P1+-;6d3fEdjBuaI6tfqjBNWm`UQT3V`yXIJ zD=}aw*1CqTFGYB4?vsmXqnk!exiS4#Rb{>B8QL?S{p}kr+I7uSFIVqAH(K4a)q8!-D8N4lo4P z$b_=w=1@Hk?H=o_8(RRIOhYi!crd!>^vb*tQuQjgt>7CDVhQV~S5wbCzvvRhNwZaSfRUWOQp`y9&}$bc%53L+D(D>t3-M}`%FR_qbK;D;C_ zJZeB_Mpr_%-CUVPp5=BeMh`GRG#|sm%_45%qc4?Y zsdlrnvsva8gDnb$X5tj!HKf+ew8;|W#tAYBIvcG{x)eB#yq0;P4{@w;-ms-9UMmBl zQCKh>J_t{x6q`#GxJoVES>W<#>%00Y76-eM+)i^1ICQwh?%OG>8pRuZHsNFJ1=p{at?J8Ng=j<@)(zPkF zedM!0k{C>;CX>9U$|{Q^k?ZYa{k)@T;zrF37f|w4`~6U+`zu5?xfpfFE^C9>Tazq` z4gEZ@PWBDTo!7rdHqI*YJIeb#^w}0>*!csMb#Q-o5~Oi!pqa}&V^7+voXZzz-4b$T zR;OpGq7*0jnQs<1g+Z79S>_=z=Xp!`TZMTjBi%&t>)oU*wEGJX_H!Z@$NHn=mOhUJ z{Q>`{zq}jW?w=#Q!f;e zmnS6s7k{&V#Ik6jRb(E*yz0d4G=T5;h?Y1@ZD4~=m;srZD?^64KecY8h9IdND>h+y zk?7GaHqXGxVz8Jqr1yc8xl6K)<5?uqSP|iLmB^RX7<2q#3aKBgB^7<2Kq(LKJW!iD zm-s3oM-~crmODlb@By`QU)DZtUAVK}uog(?@+3Kkw=+-=d~dvq_g%ifv@-d@k1T~hMS0~v7UjQdWqC(CGe;9ACqV2|?_yD}EzFHI+4S}e_I zISx^V%auuG$RLYm9OkvzOz4-XEfr8!5 z^$yGSSpz$Z;U(bcD9x1)JBtcnJh3s?TpA6pcoam^PUXGc~lC zakP$l^N&!i`?gr_`Mjmc8*Avpt=bpIl-tOGol8Q^FyS3!WIw$~!at?g>+T@4CPQ61 z{n3ovaV-GN@GA=YZ`4Fv>rK~4)Ckh5x4Di}tw6Zc(%>< z${2!K?WV;l_EG#k@y8qUW8K5~g0t-%c5MfnRDmA$joH*_+ho&3WT&_<;qTeQjTky1 z+fUzOuE}M|FN}i$mk>`)aSQdy94Mog?b9g%q(-M7ZtOf8Dc8FrAT#C@h& zEeSVb_OMUaYwv9Z#8elYaM4Qp0!(UZTTt=qs9@pnwgw3O1c#f)Z6@Bb`1)ak$gS_0|*K_(ud!GXK1y3ImUANCJhJhe z01}pi0z=%wZ8*iQ(ahkre8~8EUOV5Izu>)vi0N*b-kK6~KrE<66mQik`J{QQ=MEH5 zpU}s-W^+gL=nDv}-7zRm=>#%a_7J@#h*;=XDr|PM4QBl8VDRW`Oeb>=ytspPyI61i zM!GTHMlHd0AAkSWW@iVWvYqr0E{wm=I*<9A{ ze@ZybAEWpGt*deWrmK}roSYT^VY&V{E0PZAj}@sl-fTtj_^D9{r>wq3EF2aqjtPAF z?hKPvycxBrv1cX$e!BzqqOdn*P8i2Hdf+?3VK(*qFS}|)A4V!@)D)BQGQum1@>`Mg zjT=S?BZUnI-k_A?Drg&VH_A`bZj7I61pdf6g`%r7A@AuKs4Bm<9FZpNEH`DQ1dEcw zuGY8d9c(@5V^F9ROR>WLmMdJLBPi{#8=Q(o@Cm;?K4{`jaxyRi08Inh(>`{*08A)I zP$l?|*k;+po8pXS2(>~1Uy}uaO35u84@uvOr{(m`A?LViHS!_)ic(*mo9r4R5EY9NEKG1P}4 z)`X@tT*MlH9s};tyrFr|&<1fgzkp_}60zq*yGh37n65zO$+VR6^Iv395%326IZ8;tc+Pg@2-W!gZ z);Mpm1pUV6mKsGdsVYyHap9+xMm)~E5e$_ow~ZGjOE9N*`We|c2Y2ajPt7FX6#Met z8cpkL#UB0+5jD7u({X*d6u1TIdQODRvqJj|3_~^5bn6aiR0HviQN_UxdI+TmZr1?j z(>-XEQul7dMDFb?(nvD|Ts!2XGq4CJF!P4J3IMviF&b&DB3QyO)qccYh)jMj@umom z#ZgoYwIB+;7k&2z;6;L4vh*Hkmw~S-4I}A%pS^6CA(PO&93i=Zn~^cT4=E^-9{TCr ztY_B?di81r4KU_65#SI*o~Pqew3Wh&aky%Nd;E-LP&Qc`sFjLtt@V0%MCzggE(c6P zD&d1NS^FG6${~2RDu|rZneQl!O#^(Z6~c@O&a|QEqkeL%@)?UoaqKqLSx|I@L;Q3_ z+=iMkEj8+*cvsKNy!Y%!JoEHJu{{1pN||nb2pY@8PdhcW%w{x%#7Tz;+nl=;2%9-n zt1f1h$Ky|QA%JPv4VbEZM%~%kFtyhyDB6Ao2%$yCRw)#;UhtZIn54A~ZJ!!Cm}Q1f z;uW^T zaeTVu!YU(~xWhdfTUiED(aWSyti(DWU`Q_F1!^o#)`jZyf%Q)20t!`VL~)k1U%!fo zk??XF1F$?pGMg7dEVr!s!XSlb%o6EMpmOLCL_M|_0WHtVM8H7<-lQr_TB#Oq3i9Gi zvgFJ(WN$h=Zbe|$7U}>~R-Pnb<3o?B9lYIv)-XM@3nDl<@)rxlu&e_$TxMhd(-7tLqk~^jI7WLbQ zdIMWN*$yk}Ek#(SqL$Iex!%z^8r{2m!OcOme=+TzF5!&+5J3K>8BdBOoY5t>-pjnc zY3$Z49<+V%%l!uEgWSPvEeKrqX@kpan$7I$efS(paYZmKZ$=KVOxw2r@w8dEk~SV6 zes-uDWQczISm^4FyVY@;(`Qx%RT0|6NfK2JS|oR)pgP`QXH*@cUUP(A`bw$~m$8s? zkyWT2_bCVnN{Mx@7Nb5JdccD5B&>9ht4n{x!yx6|23KM;25$aLa|l}Gx+alD(81}m zEsVC`9N!cA9OZgBXt=%llzV$?v9n+W2#TX!Wk`UJ>j#1)tbchwZR=`XQgKk>lkfIsRaP+?f2n%*>!C<^C#0G?>$vl0z&30Bv%A zHT@D82QlqGU4rdDc8UMc^qKzEBouY5kp49NmS3Bu9g|CqOPU3XtjWwGYBwVCz!0cV zy`P2c;m}fP5>o>FUE;u*(IT# z+R}!^*RF6}-=>iTNj^)j6IrO_(7!9+cA5nh9c}kq;^u8kfl4b{+CCFb81M>XCa%QQ5aceRnpC6k0eEujMnoghSV;-rf}<88C)zj&QFm0h^u!u z&YHB*WnQ;LOrIx6`lATa%O4RlG4_?OKXcmNAaK*8ywRU#V^D)KF})%GSh_<2q!>_ux{(uZzw6Dy|z+SB5YVuaP>!}M_^ zzsqiX%`i-h)ZAr|*K`kZOBSQy%%SHoOdV8lA!4o596~bP5ox8AoMMf`YUv~Tfnrs3 z-RjhNz1+jYXVnL_@bwRkpjV)2UjK*vn*S~P z%>QElU#ri{1Gb1QQKC`XO-bD51Gcz#_~iLv0r1M0qwmI9OArpIu4Y7ErTGDPJAr&X zcqCgGKmh~)Tzq!A^6~ZX76i3YCzN(mtdhp3l`aoJN=w}?TVkwU;DI-2B=RIYf&64+ zw{$Z$=Qak1svb||e=20{l{Hr`#G+(~FT)Li(3?n;q-0sLgZ|PFjJ4CXbRvy{#ON+V zZxTt>`iiWbBQ$m^P?8v-u4(i}zG?EO?s~n69XA3m2r?A1@JP*WG4Uo`(-}&}R3LAs zL7>ul&d{)mp?@FMOX6Iof@E8&i~JV8ZQ~}Pu5S@YxL)0OrGi_!r< zdWAj$A22=oE|DZ>E?|Z|?5ZD%xX$mUj@ZFlF>IlV7bY#e#jM})xuaSAZ9mbUP0$4r zX@BX|Jk@lrj3-}Ny=8DQWFQG^qW8s-FQMn}${G_uvZ85uc@Y zU7%Hof^YvLi*>XAb@cBOcD|eWx~&KQIjX->x=wa}@7Etv3;(yIvi!@7QPPt8lhR+s zRkS*)o(S*)15%4NP}I8R<_L-55E2EyNPKQ=v_f1nOqQI@6uu*Ccrz9Z|LiJwDTp*H zPFnhrA#FO9cJ000Hu3d!e~-4O-b)qICQHnH+KOj#z~RN6cuh#)&ZfrLgFc7zJmTW5 z)|lB61#2e>ciT+8@IV%=t3a0X_iDo_^hDeN00wj# zLcc4q3H})BQC;kSindWIcd1DBK@HDU!o~x5g>z%d&T?Jh4qM{Ziw_C=2R!)LU=Iyw z!C=uHVpLX5bg_DZj$C6HX($(|?f#V?6Yd6PtpzbJ8qMm`=2nwD|Ew_X_`)pGBEz5x zDAR$XSShH|6~z1R^jXZS4Er1Y6jB|GU`u{fTo_Ao27N%eAr3i8mYc+K@NX3cqa0d6 zio`mDJ&bH7`f4)IEr0S}O?a1#1)WD=#e&z$a&%BDH4Kz(7$IE6BL+|H1yD_m$3Am8 zK_3Q9Qqs}plSbL*C*$dl{p8%pzOQ^kc>>>a`>{Os2;94||i5Iox_`G|!QT zTJ{y&Cx@DtBszLTy|}RFTl*cqOr2{Zr$Q!?Z^oHn#At;9xGEN|9W2YTc~sq4O=voo z4OU7{v|eSoPE(m)-(T-M zLZEhaQY+XcnrZyrY-NyB#)e(Rn&YjrxBNkK>e3?g2ya?99_-0^x3L7)9kfb-97$`y z*Fpt^n@Ydpq#tjBYAtD%=gb>??Owq`gS@{bGoUP#M_z~qON|6=t_cL4_(xm|;)so( z(t+?mxT)|Xj(NEc?$iZ-$zM>=$jy)EMNSXc_pLb6K@J+@8=9PpFj-w9l*4^2p49%% zw>R>MyY)cU8$-yO+DexB>OGp$Gil2Xl@X+sb>UMHeJj;Gu8}8#&sg=8PLe+nv%nsU z8N;O8is)*f4)`8L-TWnvn3g+fH4^YV+G73O#{lQ0`ht3sXqD3dRIO9;2sOC$1+(PK zF1?y}F+Oox>2&1OxQXUI8W%b+BzPE9FnFZ7tp5J1>YL@OHc+cXA#EQOlXZQ_YPgzf z3U-TqNgIxQ`yW~l*x{um;{Q*(^`ea5ghw|sP}*Yl_|b+fN7R&uvpHOk*^mqcgefp ztz^aI?~LK(eXKQv5L*=6ovSdz%o7+p8NKv>HZOJjF%M25R_BI*hOVed?f#etlV_1m zM~=*!5YmnZ5)7M490%sLWpg}3xOF#L`&l^N>QQBO+H(EI5$g39CgU2tX9!>Z&9V12WID>hRL6<>qrRuer$ZZ~$RAIk<>O(e)`hOOdHQ zX~By|0MyGLGl(pI8-Hsc0DqCcRceZZs70fGdCYc6rxTxAZ=wNmG5?wp@ zKqqn@Vw7!)fw1zzP5?F}Q~H)bydzV<40V*#SPsS;R2e6Hd2e2^2q%t%SaJu`xM6%n zy;NjB(w76<=JsrT;;68{4Z*@w|7g|kWD`6T*o1S$IrJsl+8!(qLi6|I! zO}S>c2`k&iyuR4!w}|xK*TiJa7>YES=A6Pl!a3K1Bmd_{CPfikiGV+B{^zY||3Tz) z{EJP6@qe-@i-RLp@mNJ;tKAq7y(8)EA0}uZuW-tnB`RZKrcb)R-=IxF`|*QM^0x$3 zcxgtaQ-YVQtnJp8o~}X3Pp#LZ&yq%yFK=q?2e1Bwr-Ls%^cug^5;n)pVt^`Iop7pp#^emCiC zyX$uMofRH5lP;Mps!4gPg$!O(`f~$JC*VEeq;G17Es^+=IBr!^ms6_U5Cw#f5DM51 z!g1pe8R%PNckv%gsde@&W7ZLI=n+et-=0#Gf4Uyq0kCXm)WPf$XhUmI6%|9$L{l}cc{(t(f z|Kupi6T(}0@$s9(&6F`=ln6pXy$_SdFcr8jKMW$Az+bch-++PqEVeUfc2qhu4W3_1 zYk|_G%nGGZxhh$87BU^f8d-#jwrXv%Xi4$X(8{K1sY)|t`+4KpREqTJ`xt2B`HJUx zqk-;uk}2ogn2*D}_$|QVg2N||zjA0B?;L8OlDVJ`#V0Qo!vTp&rg4eTv)Htb&(ai- zJ@u|VS>%I7f{ZRonK|06iV3={)1o49X<#R6!0KmA{Lp906)~!lv=qeSEu<2oz$t%EKkoh z>_jy?l0^x3#hIl}WWF9v;rR=c_@5MhU?rskQ7P=cE8p1E5eQe&=j|L&1tH!KzvavP zjHNhH6`3rq?Ph{MlRYC9N`=9ih;~{IW&72c!nVlPoY_>_WMYD9Hr_|DJK z>@adsUS6mbDKUDCb5@3hern2}5B=(C2Ai9%ku9oXf<2c86~M?PDvC)Ji#aCxZqAx> zEw^T-(Oc0uk{*yjeNO9C506=dWf#`ZzKIVp){Tck%gl3B!jQHO1|ZDcTgkQt5$An5 z^gZ{}Ar1bKu|+uHych}EQ6XEt7JaT7`%DA1N~%*?PD;SQlBMla7@Wd#D7`=H3m?2( zn+gl_)R-5=O^!tYwAhUmdJ=7aXd>0?8g3~jVrsiE(K7L6EkwF8bA z@M(zi%pIUUjv8jIKd>jsqs`pN4yvWC=o`Eh(98~rlydH07^|wLw-^}hw9_Y^!NYR(>L0W7rh<* zRi?7qy|P^u=sJK0KA3OYzAn{4veMRG*E*W(W#P$d>T5mSv-PCTlu(e&6Z=MFI`OiQ?R(DZsf$(YkrHB*a zWPuPKw0lq!*D$?SYBX?jZ;kH*J9=Nmo33HA$q5gXVwWAv!j2^T=KfW(!!6#>B@_;= z5L`wz*3a}Yx&h9yY%By0S-sQG4~{pbtg*@*dD4!-ag=M44a)lpP7ZY3oc8-GEb$Z+ z52DU657AJkUE*LDE3LQ9w)*K#T4(FgTmuazq45mDSY?O;QyxU4JU-2Q%|D)h4g=gv zM4Q@^m(wB`TC-TuDUYNPyoKAz@Wq2B9CLEh+vYC<@nV zpHlf|UetAP;;V+}hmZF6bCEi7w%X%*8ZK!%n>@@iW zf1~NC(Q6a79VyvD4YJtGQNGC;2HsmyjGCFMo_qQo5n&Ad(!ihQEWV9Ml56F@KE+D zga&~;XIShP;Zz;xkM($HSVK&}>z@)33MlPAE5HTHns8yIT$*T^qKY*w*#cqj>?g(* zG|l80qLS@bb1s15drpsp5%s%J7|s+K(_-%OFs3~2cLqS(-;+mOD9NT-^}UA%RYG+27@9L(m+=-G;m02a^~1!3c|0E0`kNZz{a3BNPy=5`obfgNLm34UxIo zZd7&?%1IT^MnQiO3jAAk>0K=OoWa(2VH_-eErt2UWNlh|dCf1=kCKerU`AQ0NiN!Z z36PEN^3d#{vd`Lep2_7)Tsd=G% zfh^C22Nb)(?!5MqUhLESirM|KOZCy$(OW^%Fnw1)I?8E z&#H#>_c{SFw4?)27>pw}jK`FZW>2+hj{T@+Qcfy=qRdIRn1R0Q4N;c4tM^HES>>gA zuiq>3c45(;vNk;X_Cv(#T!}6ErnF@?0#(ZI-IM5zsvJiDl5Z62BOld`eqDYGl)6`V$ zA~x4q$a2n^u}io)IEcw0JVJAjQF3Iw9@|DaNk#vpI)B+|G>J`~aVrUa?4!ueAEi(q zZ-vB^+-X0J8v4mGfKP`Kc9==317WShxOduSt9}S7No$qwh+tLfa^}q7pqwo0SBM3x zm~NB;tp0kTpvp1ff8aR+b2e}Sz4$8`hjVaV6N=7LNo`;u<6fr1syYUyqfYAd0o#T4 z%@if^j#CV7Pc=YnU#sl8cZ|wOFGzy@ROJ`~BsP@_A2$Q?dbJkjhPov_8Uui4MFRnH zn37QSbWh<^=Gl}gbj;nTxfd=U7ER$fo!GQTS%Ky*TDfb7wi zw&bJz4RlIgYp}T+xJ*kY653FKs}P}~DFNu2ZLtXC4ACV`%|=;2pF2hV0mIgXgPUQK zfN>FqkD#RBSn*e0wX&MWBFfpiw31WBq%DJp$N3@)2xVopNNUB&vlvx=8JA^DJ1#=0 z;h$Y`a4IKWhB0r^#N5Dk=SE3+wsXsOmR#DS0hP5%nPQujSRiq!k9lzxg0hAKv0MFBuCx1=XTy8K7DGF}49;1%c!pa{g|SHyg#f0PWZ#yTEKb*V zu7+pYK2itZ2bE+iO|R=&SdWIMgbNU)e?kf#a4psl4Dg#15igXL=*`d+d(J|FjDI3z z)eNbcs*F7aGq`(ee5&^70h}>MtAPwVojunk;&I2I zc@_AWY8Nxo;K^*Bh&#J-QkN=vj_}!nJMJ$sRL3kEa{~Lo{*&~~A)ZIJd6?pRHbnfX1bo4+&zT`|$IKs6Gv0w4-?{w2WAJnaAK)AaS_gK@GlnEDP zEQoYJKAM$+XWWSIB2;{Ra=@l0&*WM+UC4g!$jI44shPgK^>Tp?>EDyJ{wM65y8YCW z1oWeM25?w~Z?4-w3$eK-GAdK-EGkh)mLE~`kRCcoqP(g~JXqq#{D4jbSst;23U9e} zsEqIUK#01+6)aI!C(Q37rm-aQM&5yq&A$&KfwMGFN**1~B<1zV;fDQhK`=^(S4t00 zu{qTWV2kDLfZ6V#Kyu(JgKlcrWU-JM2bZ@#(6?x7O}lVQq{{LB%-3QJUp*L?R9@|= z&`L$%2%6y`JADH@qdMm>86VsbH%yKFOMr_A9?5@jW|tC(_%iQ1nM zOW)Khz^rKbTFQZ059}QN1ybno_f6tGytx;G<~xEg8&R^205v;a-439=C+~$HmGu|l zq(-nv(xe6e%^qepO#1Mg0(a=KH|Q+dm8&MILq40>D6>3pZ59ARvO>>&wOg zdPaUgC+laBW%C}N&8;3 z^`J^TuZ6&6E85$MtnZXIoB%pIW}p?N>=v>ei_4YhYa6I^Q@rTe=nr`b+GW3P=4M#< z+4m1zpPrmKzr+k))q+zb71?hUy}aoK>^E&38NJeAbhJ9HtO?zwWEhkk!KUDdg+uL1 z+uhkSTv~O0 zWl2GzLB@Xel$5S8$Z;e=<#{w0C?6V3NsKR;ar(EPNI#;@a3VB>CYEti=4^Dv<*4W$ z*uvQz0+s)$c>N%JCI@oLP2W;3xKZ}sX^X*Ygi8J-pCuN?8)JPX)k}J^QUUIEWzU=v zOpOp4Lje2AeG@NL)JqBiBtson#z@xjY+KnUua*W>XCDFxrGf(UXNd z!-&ty-W9)ijAU*@`xWbsiE@jeJTY&kE68PGtEpzWq8oy1g*~8)t z7;gYHop+dOx9`!2SZ0rcCu4T&&G?GG)&oTz^6Fb%B%>{s;X&YoqS+o4Q!*ZVWZUy0 zqb;`{SMSH2VNjDyOV+PisAMIBniG5&-2Ot{7(Ojn@j@-!Rz{kHra5S~`{GT(0yT^* zE~3dk#808AtIj({Ne9(1Hr{5~=#4p1jsvJIW%TNt4*i@lbY2=h9ker*Z}e&n4xNNt zQ-XRmGoV*#m9V6YGE+{vPGVY-ZkUoE!iXnj*=Hc6fnW zDlKx8mTMKJEqoFQ%ZcS}?+XD>?~4~Y%FLyf%h|zu?0ILn6e`1mDn3k-0xo+6H0I43@!`Knjb-rAd}a z_9dznEUalPWyP-mi@b%}`!pPwN8WAJEo{qc`HY|vO=JrgU9Fr};{S)ScZ#yKOSV8O z?MmCW?MmCWZQHhOJ1cG5wkvI$H~;QFr|-F=`ycn=+xv0v^{rU3W<<=G0Whi)utGc0 zV^CV3q_d~?n-FPqM+kopd$z!sgtbw!Vs+s3kvubbx; zJAZE&HEI`~1}_Y0DbmuZHv0Sw<+>F1l6+QFn)s}Vj3;Y8B z(oakMkn-MXX}qlTt}dCWfH1t`$~+BM%meQsYX+u`w58JVL*fs6bNTx9g49vjIy_(I zf(Z8Mo9Hx+{TOny6|sx1P^3fSMv|q&2z6Lt-oAh+Z|-441#aQER&5C`A6-rpst4j} zHNY#;UQm*v?J@Q4>1Bh}OCjG;JDk&1F~U}qqZ6#51MSQ6Fca9PH`i63f-9~391uE9 zJ;%woxyz}uNz!I()Qu7!lzeSIUQ7k9oI-|Au}df-YNX=+ z{p@+3-5-HOvfdCdU}ch*`akE$yod`fw}ncc;f(j}9&&lKV8%|0PW4ogBVBoMaFawf zrOSr*PDe=`HTOINPEVZkUXF4V;D#4zgN=(q{y4muaq&W~v;SD-0$t^j7P&)gh|MWX zcqTXBEh)nW*G?` zTaeP@wW_nrG80LvD;HZ@MC!O9et*-_#Kxd_?OUWCA+>? zJ7pd~2%Gs`!lY$m!J$JG#`wv`)YlaO^qGYp{EoEi`9NBwMBEKiGiy~Rmczq@H%H2W zHksDQwa-?!s{Q-Bdq!!7`^jlOvlWPj8anAm!C%~9~gFtq;O_g zOk(2V>XCGLew{d3N<2y{`x+jZN|HAq&B(<*cx|{InRQx))PI-Yg1~cfPpoeg25Z!c zN&Ir{0YSWd@CnxXPQ0HV{ghuvDe%Ap;p8E05AS-PROY$T6w}sMjd}R$dzWRL0~`0g z31A-kc07BJ^f_b})G;FD_`t^iyuSyw$Ui)-qGuWL_l%$Lws~-B@6P{63cssd@5xYya-Z7`0(<9wj&JS4Ps1`fuF6H7FGFX z^0M17E|6n}-=-k~c2A0&+R za#!9=xxg%D+VqJ=xeRw1CQDR$_Xhw@$$C3Qk6lhXBu>?A9Q1?(diL&3JI2K=K7UXy z?;HEF#8QQ-2M15gk2cQ!=w|HFp< z$p*+uT$TUka0Y)(_5DJV3Jnc~1dtPeD)39OSfndSBC=(5%_Ji?MA)5_@Oc=^%V_;rD+YinH*g{wSbw807vZCWI-cP0=)YY z2jVv%=_R&SGn35^Nbcvj`mkRxbS88%%^AT=9!tGUDQ(qzqxHebAz50E`Hgg*#$4oc zId!z{wm1gU_d2Pj7BcZtvD9YL(W_R8XR6ERGNBx;?2Onm_Kp&-+-V7W_+XCpSa2}& z7&muGZS5;wrCWHSIQy2KVPtgibhfG|WejIZ$r0lOHNf=IYV4ptIGkfaIvg|~78I+m8;}ZEm6kuX=3@LSb!2QR~tJdEwF3dZ8q=9}SJ3GpGJ>K!F6DzV(Q?_Fe@}k1uYjxK14<3@;2l|eR61%Zqfs=tku2$_lTN`PQzugUgqpAp!4Wm zq0N#SDB8X=@elBgISH|ftR|yu?04p=<{eHoRgoi#C^So+2YJ9Z^zJW(Q29+TYU7 zeiYdc{Inip@5E0S63b*@KcYwI)u9s?G3nB~ZykM`D5zzQWIcJ4s_Q=%j0>y})&w_T z89~?V2_(leVA8*r-X)-+XDR7si&JN&D0)J)T(Z4Dj6YcHGf{2~&cOBg(k#-+WG-ys z$aBw8%eBjvzP=}DO>yO!D%0FlG_Xk&Bi%Ex&6wuf=(Q|-^_|rN%2A-W*^QW`Y)p2| z0#smVooV%&3YMi?=G-r^(Z~<#i%#z1p_J^d@+*RPZH`Skpl!&9*Ft+;xO&e z`6+7uVUTjP>OY`!w8$=RL3#E71bQ*--cDPhEo@kvIOcjk2O{&QFqjEh;>cKvsu|r&j|+UPpwmcj<3@(uWRtQB6}zfzWAp<;=lw?hUUnHSQmxsKg=4797j z3%Yxc4qfLikQL5Z!W ztft;F-xpxx>W+4_^g@MGfN_M56cBATm#Wvub*6?U48h`q32D@%b%th?{>Df}pU`uc zx*5^^7g&k(OW892CYl-jEft&aKV3BPMz%(Jjz)%mneV@Nfr?sxbqa9LFEv$4_$AAS zS5=m-pcLjlkA~dli6sal;1NAHS(O;swXdIp-2%NMl5{-}M8Kw#F~=Xbe+}^FZLM1S z%I+8$UruB>T(Ud3_Cz6UUobgKcKhg?5| zK8L!$-)ty|CkFn9qJO2jtpvqs(G*FdZ3?rz%aD14gf$cOO=-)%v<2K9ogx3H2x6@~ zvsS-cdi4bvay1pjyxcuKQP>rlMSm?*!5;@0(NKJvJ;*+8aNXFv-<9a^N$Zui77A6z zidG$#%1T}mjZE-w8Tck5_2|OmDI6T62xi7;96I#qCNDHY9czP^;pPr~KM!w-(bY6j zy(8rD)ZfLYOrJchsProjeHT=B~c)&`n=)EjYjKnDIaSI8vQ zvE3=~b7vONa>M5B;m#`8yrMGd?Vo{%XM^+2!q?Ra11{ zulUOp?H%Ir?I(s@1B4K;*Q$NcyF~0JFTdks_*1K!)Hh1$C9{{&wKTHSA)Ems0B_RJ zN;S>;9jhpO%EF@2*gmcm0R1PRV`+S6C9#Do;Hn5i=T-#d0=mZWCQteVG3^h5++*O@ zqo11No|Q&C1#Y3RLFokd-~fJfG7TM@<02dn(}Bk3YZU?U+hJTQ6SfE==_lc@{irI7 z@|;tn1uf*q6#qjR&zTdg*0&|rCy>Oc#zTRa^@mV3ks2*&rwQ-9T-OEJu*ZaoGnwbudUS#Hg&>8-e0 zCYPWJq>~7hT_c?t6D=YJu7-Q~kJMa4h@cK*dyYiw2sPehOJ=FyF}QE1L|>d4Ch;-c zbqYTkMP2x&0A$Y?sN9vwIEuruI;%cq6yE}HOMME+LSWpLPr8B33o8@!fijSo=gc>T zP;!-BLdTBtFPR-m(~>@27QmKUGWr3{%c?*-GbDP%K`VD~)*wZ}D*R{_siY9DF|dPa z(WhlOsR!%kDJJ#phth2esnI`rk#Q>9%nC$xG+O8xScMORg$vZC8#Ce^9fB^Gk!iDt zX^SQ#V7;nb8oJ0HDt14J?dTC<6&L4y{_?`?_$O`f-zEnAw_cdwznPeVk)xCC{{)L( za_fH?78A)9zzyj|3EgJh0OIp_c*5>CW1$`)2Yqf4oJ6*yqq0{7tWw3h0dU3{poMoLUL8r!JCL z!BaA#783$%^0b56?A>BQ=<}H_2J26wf#1I&+Aq|AjG0gFA&NTh3y6@`v%0`wkx_{i zx!F|73VhSSP@5y01xpI_2>l}#)c*Yp6VOe@jm zy&d4k;#imiUllLK)_NiH+#GnpDgs+2Pxs`J$|zc*YAB9i_1@ZL_Q#8BLB>{@OxycI1eN{gBjuYL#A?SbiO?ZE6IRD~{$8THD(;*FY z&l^vI7inl5f6h2TLpoB++VxA#TC>E)Lh@Te+npGJGSn5?V>K=Bf)d5L{=k8>I~TkF zF(W2e<>C2!ze_Rr`n=mi9dixk(YvFH0_09iQ5P126B)f0C3%%Sb=>s_&+2;sIvEx} zR&6Ciq>uqxI)`U*-;@003v+OTub5WmUgIWVd%G#C)Q3QZ{h16wxrZ13d+rXgEP6nU z3?jxksXtP=>(^9E#w+v zSMK@3MaQa{k$e@mI@bM35MH|=K%WD|a24W_V&aiWd!u>++qE~Q5-on+ z@?`mlL21!4CP%4|H^#nF8jNfVrz|(Ec9p7iSo?`M`4qhD&VJ1M9Q+8aQSYx5z1*VH ze5|orOx_kv?TB_l@0g(yb%VWecq487Rn2YP6D67PhmvKscE!9Y)c||r4Og)Fhg_f6 z`csVs)If^i2g@hmUsj`wtQ>dzZ8ea8>u&ztVeoI^Z9WGFBl~}$y{r@sSH(r-;boGP zG%OMTAOW&J@o+>ck-2mB^r;huOm@&SdAf6Rk3{ScKnd(@sCeoX{2E2!De66;>arB# zwER`0iX9DW{6(l2LhIf-Z*x42GM!wFuph5F9yytk(vP7!cXS@cSx%p4%}ZTXnx9t{ zHnQ+l`MlujHJlldCh8&bhoOzz(idh{G9^`tLn8b$8=Hqb^~`!CAsVbtS52V0)Ch`g z^wF$qz{t!@)~JeDbzoILl4Q&H2KP~!NHJv8xmV-7DH|uxWmNqs3LbsaR;-J6-`D9; zOq>Vj{ZWJ;eqaKl7r!@ACk4Iv2OlFzQ6+?vhOpj`J_{Ig;gglRZMAU!ayX#~FqSLA z+YU{V&ghRf39iVk1K?ywn;y6*#G3`%4Ce9f_CLIS!$oA$_#-$Wi1DIK`KHfDc@Oc6 z43NR1hB2v5fk%Ce8E~AT93DwlJf$xYm%{E zUY0$jeAu}UwAAmEEku~l`>aR%StDRRVy_f0ls&eW)Blv2&ruUVy?Q|7cd8a2lnLvy z#ltK{K=q!bd8ZTXDxpX1&|LZTYT`iwX3KE}jJgEwQ;m1WBs@Y{5fSkZwrDrVSU*=3pJO*=)l3w|AW*f;NNQCD z_04u)Lg3>>_s>d;=s(~+02f#`@07o`6_2Lx0640;I%8wXx32Fn$38Spv!9)PrzoDT zAPIQ0_AuuJHsi1{b`iW_UB-AA;~H6DA=Jyp-HrPIUU@qEz*buLXz!%(%-`>UcyymG z8{^r$H5{K-pcD9g*FfB(g0w|w&^5RbnY#HfU!-2~-#)<+dE7RZi7q6iFhH*7*INKX z&KE+{;+A``zPr_aZy%RL;I#OQ9rk`C0(AwHnN_UX6tiPcen6Wwznq|oY6u}Me0**B zwh3+*J-LGV1U=BFfrNZS?H^AYrv|}X_2V0xC;%xFO;L|pIyva{$16ew>F;*CN1EDz z&qwJj>kZ81#ur0SaK_NqkMxj&5v9W{|KNehnS(H3A7Z#9#PXAlJl9bEAbLr+XR;A5 z1k^&GWJw`KAr@her zD5X-U$YVN*m`Vi?B`K|3;OXxMH-B0QZv883SsXw~&yi}%f@SwslFF=0@H1IL(X;D? z03=;wsLUIhH$7d$eu0U&8T=-cMSsjXP!f}j1wSoA_THIXr(j@1pE}RjJkC&JCb0Qe zP=L-J@HVgw=xtc>A(qxzQ5Slz^=JlA4ie#uRZ^l+?V>daF@x(xq-6DxB+bm4wjm>5 zPHOo%UC87=`O4%DlS zwAjnxU7TOdT%ybILV6hSrc$?X$BvAbz=n#(8xSL1rdt%ctx&D@g-)FDOZjJ36{uTrbUJdEJ4mJ7s*?#7- zg1@zgP?0qz1z+_@I-gRhr{P7 zEAWm0K8;MovyXslAKG0={28wDhzu9w5enNn5Q4S)#yk*`_Kc6i_Z}Pk%naA19s3+A z;W>cstt#gxG4jqHFKR_;B8elu8mtFJh+l)0@7n|iOAX6v)F$g?~w~QDdrqSddOj#^oX53J?3??^T{tu6K{zr|I|sgk?|rIg{$x6ZHTQ%BU`kGW+`Djn zH0(UWUWKZ;l?F$cw|sxNH~l!3z)}1&e4pe+R^I!i#-aa)Rm+@oR3L>~b_&?J0ksnb zF{aeTA#D>muOZjO%-MuXx!$m(p7Fm({aK@aTHAXKgK^>mvI%kAsY{w@U zJGewQMaAvlB^wZ$+fw6Tg{F6jOFD(pCz_V}{U8OT?9k7gr_?`J{TIHRQjL?Tokj=> zyVpg01GqX2joE@)c(7(*clK&egiz|jX$)JL_vh~!IiAyn+z-N~o#q7Q=N^Rshk4du z)o?&60RVGZ-?fhYb*&m_)XGh%u1PWNnXAIBtACaa*YKGMCB9Wtb5Z{e%2WI=l>h&N zvhPH)u%4Nvk)e>i{r@BzqGY6G`o0T?0#HHzxnv|bQjq|Wk2~-J`jMF!w5eODs%QGV z@m3YxR>qb<`v$?2-_L&! zok;(~`xdaVvemOUbNJ^Ace4Li;yy}YQU+55=_{%ew`LWPK6STdiZrhYAR|5z7%US3 zGKxGL=sfmd)03$5V#Rr`rQiA6kD1bP5Yb(}9tAwc1_`mJ1`}(L$5tayjRtznKyy zjY=(kh3iu2$`Xe8Uo5<>gW!e%N256{=3bloDU-R5x81zn3Q&TAi*7q{)o0jjJX) z4+H|b1naay++%9rkeA(v!e!}834!aTKC zqVcQrkkBFJOH(hYl4yu;N7=D$4EP0Gg&WFQm(ILd+&iuj z(Kv)g=T98Ltj$LFQ4?0zc3GlK8?XbU`Ks6wDMQu?`r4U{r_DA`S_nZC2eE2*^3<%Z zlMwoCcbPf4VnF0R-W2n6;Kt|cOs!_th)ydxV48bSsrW`e6&55SVwsBJX0aPWfcLz_ zV5BLKvl=W4k%8K?7e;WlM5DR{UChskr@F4G2^&P--?YQ$L~!IB3v!t77Hf@n=$XX5DSA*8w)5UZOdT^nAUeyqGf_ijpXl#3N2Ce^#fN!@ zO8Obw>3}Vn?6h`v-yz3nrYu8J>7Va+rhCLF4gq<~*vKz-^LzIER1`TJ&(@QFHuZza zjk<;3DNBHs1ae1$G>#{DKwfzMOwKJCaYMD-u^>OBp~ zU1aMWlZ}DjseQPDhu!r3MEfi38^#d39?_~auGjQ-Va4dzx|x@Es)cGYH2`DHqDkC6 zI;sTZlI%Xi3}Ogf_)@k4#aJ;wC+I>56LMrvM}7mg(>|MH|0sfNEz21;eP>Xrz6V|X zcUOS_A6&t=aJ8e6fuo+j<-eSOloaPr|8I{A1Rjn;lC0>gew@v(A;t7KZma~SR!6hD zO2y?H!tgV1MvUZ6`_OAE=Lm`i1r0vFgNBhbT3Or4;9JeB%1)g<4TS>`eyFuWLT==i zh{bFw2b>4LoCCc#XA(Bh^+C4HK8@TaaCEwkS7Y8$%}e=0(ke;YB*=4o9!A!pa51Trx&NART*e zGi?abI0t<@b9zFc`ru;HSSpH11H;(m>t16`S#vux>99s)G(sR1TW>Qt`*ICqX$nFh zQc-zWLzoN#AVeT2AaJ@`I))mC8hW}PX3n5LbHQctMKk@NzSr}uK5nw|kox`aTmE)^ z{}#CT_Z|9wYp_YmX9}1~NMD<9qN>UACmATBa`aqlrd2WGMX>5r7-ZB)uQjI#EJQVi zcJ%-aO^uCR>bM2b-p8c{(Ts}2uosb1=oOCv-nTLK@0*)O5MrjodUfqj8xGz_ncLh) znx8LE&Af7c*w2c(cZM_xO$K5T8B0f!78ER%CKou=6(M-QEGSnvBgRhSKlAu?z1YX$ zC_pF@fD$1VhDjUMsEtk2z6UE<6)_@e0V;XSGo7K7hBifk1A9!^X$dhSf$)`5@Pn%m z`Z5DL-8c&4j!4CvEY+|Wv-ukHGYT_NQZHxInU>6{`2|0lr_G!Mo0^eDKSd%Qrw68u zuSmSAkv8!FFzcP9SK%(#v-hKzhBqZW{JET$=s#`8XChmHOqx-qDbQzZBAcia%Vl@x zooRwcjtUjsyx5<*M@PVbK$S5!-XkdGuVCT zf@8_(XsJ^O*3FXZ2C5(v;3br+keZMk#I{WXxJbP*#2Y6py_9g8bERvnY!eVRIcKkz#1EE-86^0mnVl07$Q&=*j^KD5=b{H8*nSJPLFGa@L+TbSW z3LKoNn2d7}ZIO?SS;{vQ+6vc@Oe{_kL>UYYL#~FBF%xX+da|_?S!v8As%ai$NMmUX zjS3XrXGod$ei7uE)PtyF0WO|* z6!BZDb_#+3J8a_k_!^vEkO9@1*DctD@sdqdBNr6ny*IP5g_2xBAfp;`gWB2&4Yx01 z^bwm+nF~wvrX!hBvoek)J#)6??=Wl`-Okc&rC^J@&Y}z{?HXxKW4Q|$Pl+FQnz_X- z&`geGA<(sC;e+&Y?9<}?CjQa*eyB8P0;A$Vj_OHy;Uc?EV_k5Gq5@EP-~dCbsv8SF zY-)!EYgg2^RyxelMLg#YTb7~>fLm4oJqI2qY-Tsdw{~pqA$n^8v}fSIvAVD4%wdra z>~m9Fjy1aKZwiPbEUPV+eLzF|`&!GA+X-yl8fEni+Tg0KGlQ1SZ zIz#BiPWKnVXjzyutFUVm?z><%0GN*yB+ghE~te=M-0@9FKPQk=IuH;E!@QdyUuw zuACj6AvcW?w=m~|=;;cs1dE0D$n+e>7g|>tpD?fI@U`W#FJ}2?(D~=&u}vu?3>H2{tb6OKd_}6Z<;j$ zt<^p?d)lwvwjX@(tdsrVZoBTyZDTD*JC#S-rcW<~Iz-mac=5Jxk8hu4=X@rMx?60l zQFEJLk5N7EQ1wDK~%d76hQEjq+r36IBk19)&7G^L@$i zp4D+6V1T==#v7;-X;!TV2fFvcqzZ}RQ=b=cjXD_H6Xj96Cnlykk1{=`C(f^UdA<7r z%q$t9ah1l~lE_onAb1%k_9T;4DxIWgm833#432r`c+At{m1&Hd>_xb2UUu}3$wINb z@#@g~$}z_Q{h(F_=GiEJdyU;GNU)AUf1EPsL7TTClq@s}WsxPL&C$ECsAzho^tPL0 z*@DVYbyehIi~rDeq%alI;8cfG+zHUBbVu_q*FMZxOu%BT2b_kJkLplfTa?uD*@m*4DnJYd34;S%btp|(`)t((9U5El-5$PDE7_@Oc-$UmcqK2~;$~B%PG&nF zGW#R{n25A-UO}5jS9EaUuwUajWiFVO46VOKH&xd(4foEVJgkR&ryKYQxYsLKJLS+b zG{H#7+Ui_)hH@++igfPx z)r5(KPN)EfXq<8X5fCjIYz%K9+~EtoGT zOr7*=hw5jkw8n>jlpcMV=Gy7MLG#kzg64nMtp6|8k~I6CDD^#`^`FH@rxKdHyJZQhQa z&M>XG^hHyX8)-CODNYk$g?Z+fHByk5YK_DA0_DmcDXJ2^C32dHuQVfB@=9(!$@K&2 z+NWvKChB=@KWGkfn~GbT9c+Pm##&;nLfW}G=qO>MBV8Qk52Pq{V zsuXsm9Y!O{jD{(%1kk>|Tv4nqxAKC(@$*Ax_?A(|J3!JWHtU$!2XohXsRkwdU_+qDV5b0%ZvYjiepZaOd#(?o#v_QfThvZNGDH9XWj(~I8H05UUH!YysCZN?1sH04tfqF^>PS9s1QMvFs;Eiq zuk6^0mM*Sn>r;89C?ftm1h&2kh=cT&49SyVOa$Yv^T$RI6thj|VnRdMODwmF&7PyS zysJe;ObSz%U|iD3uad1kqWZFtZB+5KRF=6Cy8ezMzCtXwV+^&{tH-lqkY1i!ud=ah zZ~=7vfDlQ)r@?03V&e=yc8D&udppbe=1IFu@-93TO|QNkfk^TJvb*_Ex8Rlf)%0^Z z;S~ho+38UFM;LvA!*%`X+_^y!XdZ({R*i&4%`aUEmsNz+h;28j0oCx?Uw;t)iZKi( z2z3I#_cQ#PukqjS9lY;d|L4Hq|7-XE+|z$reU!3=0-_3Z>KWOg!B1Zk_4qCekZEyA(fk;QAC1Y6)QyqW9Q0q?YWY~&Or8mo2q?z zmMRwWdH5DO&cJRiNw2P%7{1N5l5ft`jY_7Yvgjw!-9YlSgg?)em5Q%~((zzq*Nd$+D!5J`g<5cfBn^^|+T>695QUk%OI~CfN362*;PLP`=AWR}bai8i> zEinn{Cej3mj4lavb`|PJ6^J@CNo6!|sj5g=hDS3x=Ac#lYcAvtdbXi6Zx@h)@|tD~ zk?d!vAM$cX;>P`-TThWxS_-X*i`hoYz7R^ta;?+J5ZEkp$}XbvNl8QdveXaZO51|| zkhA=G2->4ndL_^B1mtJnoG?%E@W=+W>-6M&qa!8iHje?s z0d{bq4oj?*yOiEx)ju8h3?ZllF|yn&A;_?BW3(ylvfwrDo;2TFEi*;1ngvleC7%IB^;;4)mE*S{Z6M3DQUz?tBQWh}Bg=cZ9_Vk) zoaw6yOk_o^`N@I)PMsVUOMRS5HjLjP%`C-sUb;@b2vXQqFdY8ibffL!*X3J4i}z3k zAJe+9JgUYfhkrk*e-2UZc4Ee002fCK23=Fkv^}AAJE@M7^Ni)dzGuxFF^NH|0{pckJcMk6C4}oH^t= zuAwP7@CRzEOIVs$8iLC4oRUO7=<l^e|JXwpoM7d4Kp{`6zp`x234Q%Dvno2P@~zBm^*Ar zG-|SZOq>$E+R$gOVYnddA1tV>t6MfV`x=$|8@}tNz1ZH|+a#Y?Q0b~M{X#MOeIZuo zdHFt-Nk$~^pL1^REO&w}N+>rxceyLrM__Gl27Y%&()m6Ibj#FfP{PJHlUk*j)|*0Q zPugPiQM|~ekm6D}uS7#v#}PH<*9qe9Apfj5?T;S4ll`{{>i=}8dBsXe z0MWw*Z<|%DJF8SYRH*aPfHZn5(rP2|LHf&fG~DA@RL)wV#BYZ4O2{JpW8MRs+Mob3 zP{yj*mfKcZhfhZregyV6Ig2$+*=}zv)UP9A!m5DKYC~F)%HjR5um)rl}TA0Bekroo`V@heu=bo=aCeW+XnjaMF;lcdt-J^7Po^&G)|@;H9h z!3W9G8EF3xYMcO^F7zIVA)OdmV`B2r=nj8+bPM?WP<}RedmmYf5ANZvg%Jd0l~1hE3dkzeic(~2nb6H0tIx{5`0Q^RUW5Fuhrl@jiuB#i z;{m3jgFv&Xqj~)tKSuJgVXA%9|vn3{H z4ql)Hmx%`O=XIMm`Wu*4ZeHsH3%l?9vJ?NHBGx3!OYN>TZwyUxlMScWZrQ={2TY`l zG=&t2O5Q(w5cX8E^%6Y8fC3?`2)L{X1*D&8THzz9$men^M^=+P=A*bhcB4C^+>D@I)`y}|QU zrw#5QJYPtFqKQYOi4sCI<{}TIn3yW?S`ytj4vl?%tz;I=30lp+LWeZ^c;aDQoz zHJRlS7+I_r7GFW2<^Fo?U9chxLcuSj@FnurxiuVf1uKmurkZ=$H5AZ3`5$M({!3 z5F{Y*`npl9-^nyB^%4(m6oHSQe+r6ObYlo-pDW=S|8n8=u%>z{@2bKC`nvL+^wD_ji)A`?dekbIm0eKC9v=jTXSPy1m02v z13qnVA7z(Sp}o3R`US`AEKK^`B7B5K9>WFG&y+q`gMu9!`PA4n%dnFZBjMq2Rfe@L zE}Rs{hBOXiLuIES0}bNA7C43LP`huET8p391%+K5%>Z|(I9wz&X)+PQ9~ikfZTJ|g zsT^U`S)!&;1`V@a!Dn*iYlOpY zVgH%NWRb{8;f3=QimKhBtb_R$xoDpRLpy9UqZgp4UL%ik>0>HB0&5F4XF4m*=S;BX zx~9I#N`27&*#W%r8K#_JRKcWmvoJ+GW09d}1;Jpdt05e_H_kFMwm7xp!Ia7{T1J48 zn(6$w8?3B2$fK8rdo4pMBv$`oy`oHzFO^;ls<6!f52N`vQ%DYj!LoDa&%}e?Ag~pn znI{!cBiMu@SC5ny0Ws@nF`@P4n_MuRe(j(9%A|Zrmuu?W%LR)J(IMkk;?1T zq`^G1`-BFgcjW%uld&5uxhY`3gT}~g03lR(j>l%gykH@=b z8^ahqVIs=RYwkCtG({nkux3dULM|Tm;v{x|=DNYw{Gx~$2{dR@TOLT0I^L&syRJ)| zpDjB{%4Alk=S^N)OiZs6zNo%dg4OPoSy^@(^;c#@TWg@eL5ji6P>Ta8PWgc5O}V{+ zT1|`!j|Wa$9+D&pqvCdQpD5rx2ya?LC~|W#0)yA*rc;0?a@%a60Xrc7noII>V`^Ou zwFo}Zv)O&xz4gJf)P_ghn)BC$`E5f+NCJP{W4zZtN`8{`q@?}5t z+Zf+fg@Q@z0v2ns*eaIk>wC%+{HbM3dd1(4+RMW zCUX}zVZemav;Z2d0TVyXK7cN_&HZ)iD)ysbfY;^gN*$y3UF@7`x%Wm%gCB!_Jdr=K zgv{1OWpIaZ_y@hCR7Q_%k#5LyTE+K6K+E6g*k$J< zPCoKZcLceSv&!;3lUrbjbr>z5^R5M;@veEGv>)W72&S^oa&2?lP@O{P>R;)mH0J}# zCNs0WMfey+^tnVEBr%rP?9_83P3owSu$xlWb&q<19= zXDF15aZ{FMaM@qh*G{<9-ib=uZU0_M@r2SDtNnFvHNnK1%O|R77p=Ld<(8Jf5_Edn zA6^(<(^-%P!IKuZc&dq$1Qr;FSCEFQ4s@65N7XoK?6USp2cN%mkJMMa`wEQ9?6x)P z0O(-3h&5dflC%*nzBUB)6eMHR7%@A&1_{1m>->b?Q*@4n7vuPZBl{vn3liDLfO`sNV(Z0f`MLp!Oh{;(lSb8gd&J2~Q z4In%3SAUSaC8}z^CJI{oVvy>EoCL2mNX$>jO>LEYOxFAfw^{0rS_8Mm(yvVg4b$V&b4Vy3lFfjLnZn36J&s#w0oN9chUq1? zT=@R}iF8>42CATRfc7T4~|dL&vO-9-H&RHIdk zgR|s_q1eAbN$|DdXWR3plteyBRlog}=vGvYLI{HfcHA1G;*>wM%Fg4Tely*`y`|#)EmFKhjk7|X5 zMYyUM8_GSH{=O%G-_-lur>8%vYC9L`!Y_Lu*=Wn3E(N_f3kJQ0Xrk9rEH)WQsZ3jM zNVSZ1US(%xI|#HsXN`uvt7FTxFHTX5nr~a2ZESyLdP^%ARrj4fB@$aPdPQy?L32D& zZA_(Rt{48=zi-O{_~;3ANamjL9WjgAqJb#rEUbF~`zW&6=Y#oGTywaWp6EXNs(ch? z1M9smzV|BQ_j)|=c%#Fq7VQ&g-tGi2_{n>t>Z012nFCW8Il;QI&(TF-^`tnGXXlk^ciQG^Pt(nSO;%(AzfoAuKCLe1w>EcJs{14*~pzHJR^^hRq!|}m#tFcS7kerPJ=GT%_q)Tzx|oeio3$N zC1ixs?aQ2>7urZ_;I<;9qc62g_+343W4{~r~|e+^6iH~C8SYgos9=I1+c{FniKOgM!v4-eSzo?J{XP%H0u zQ5J-5pD>zXaeCU+(Ay0g6?c+`i@=Tw{#y)?tzdx1u;cO9a(-&!?k{z0V_9Tr=S znwxW-y4IsX50dJO%~ht$T?%s<1@lHi{@WWuMWUw!y1jEf2U1i>v#E8FDpPa6_VjNa zEy7PY-4tM*k3nV`Avuje`0rQqVgWeKKpX*y!ra`{8~CZ(bWMJ_)#F?+y{5E)H@Lg~ z1mQ2jv1DkhdS6-{-#a&rGFjh>+z+dgfitTx7%8h*8Q#-EJzjWcOuexm7My)k;0dft z>)tzEgt=G8>QI1~`PG)10MnxwrCe27HY{CVG6srJpL&z-ultK>VY5_twQ(Yb8YI-g zG&fU?k@WJxXaeF#eD=XK5^n1;1UIs(9;Hu!kv3crsrd(@mA{~!?sN&6y2Ovf@zjiY zQV93)kRKGY2_t3K7*C~XW&$B*WFp{a$KD7ZUN% z#lX$2?z16dX!80VDH6jCm$}GXZAn!+HvttbS2N`BTp0fO zi?qljwalhM*qIv}wk`Zpki_mb*}t2iqlqY>D6Kkh2&5O;d5 z+ZHZ!vBCNk_#vR|T*gwEQ39-rPX%H6q;w5WQd>-M*0=JRPp;$vnIP71h;L>j;}(pF zAmZjlDT|>ZQ}az})(JMIeKwK9(1ymTYxyzpzt_7F$TT;&5;PVxp_PiZ(eh6j=|M%4 zN+1&j&t`DYX%UlL=D+9hg56v!@{+&$C?0%`K3W}_)EJJ3-nRO+D&4HMj3{Viw!V&; zHw~8Lh)7i9uj#JMXeUD;4}OUlhRL)9XjE2h@#3BPdi)I=2_Gg`i?5>;eY*?jJ4AGf zi{pF%LD6{?9n^5U$P$9IX^BBq3x^CEjIS9wbxbLcq=F^H3@@hxsF~%^1xm?h$$WMJ zAy->G7x1TZpo8Q}5IX;j=ZaY8WX^_2tVujfBXt3K$Zz1(KoJWv+P-etHg%CThNPU* zhr21y8dApk^ptFzm^OEAY<>XA;@`{*vxJfl_T$#EJ2>UyLd?B8riP0PmN*Jpy zJ!J}>{lb&e%7YO4Ak;W)!T17wQ4XN)exy@gZFu;0Sy{sS!#+m6uB1^=Fc=8j-P8{8 zBSmHFUKqKko{SPSx!x4lZq>7oAZM2{L3j?~Akb5M90jaVt`NP6D1DhF9~%OP$1rNKNCs-IrU+`Anh zWG#_MQ-AS|e1U((C)c?d^!1);U}@=Rqn&+Ft98Xm$_sw|28QZSp}cntf&<|xptJP3 zDQd|^hq1<8pY8SRDQV9;{TJ1VlUL>VH-4SR5`NuZT)RWhGW z#G}bCf}iTIjx6Z@9}Mc*PK5; z%&k>rjNBPqUs>kGdf>Frid%Z$^y<4b=rkKmGTuYZH@|9i?uJI=?+wJfjqf_uV)S_-^#6h z=m&N3H{TLK^Fs^TblY_bp)u+#i0ab9X9X)isjQbA6nEvL2emhvJhEIVa%oXDuc?yn zxK=hyTum^g>(X&oH@8^(XyTbSRM8ORx@Rf|3=lhT{{%q2jw0W7-T>uTqkJaRn}a60 z@X)eK{J_1lh1}KKLrD`sBGHp)apl}$#%&(WG{T|kr<@e|{849j4Q;n6VUPnTObn&f z(+=zreJgc9W;UNbNx7knmnp`WVK&Pbh{u~$^lnJh&jGQ6r8~W&d0$pWgrlxEkWCDXHR{W4y zrMiAGsBMfxaHILSo5#{%Fxoh)cNe)siC~ig3@BR&8R*6YZa>c`ZoS=1S|s*6b?@3( z_7*!H!RGN{3G%owTx<}3aG!An<9d$$1TUtZnNaArDbsLTeF6a5z?394uY4Lind4S| z_M=1hO2#(p3`6H5B?PXmU41*<6lNz2*}3+?Z#ZIfRgLDDkM>+#6R`Pt>Yg%O_Rr6^ za;=&kd{EH`+le$73&Z&>E8n*1t_>?+=ySLxTA`jMneeeQoWS#bN#OIC2C-Tv{cv}YdPm#5iwUt7#_PobAdYctsowv&__SyvjsvDeRrs-F>l zGen}jFVcA_QRHz?nZw7lhg^E7afURDq$AP4s0d-?f4E0J_V~caUo(BaQAd}iLm88=3b+o4NRNxjNsYQN}fE8Q@GjmoP);F;S=VU5QJN&mm`+8 zW%T1JkaebH-bejCyLyk%V0+b0va&+}wi2ih+n0d;Nkss!oeF22#C9Bi$DKP>oE?#WQ=J%U~le}DSLJ9q@;l{|N= z_+q~LARH?!u&VQV4z`9Zvgo990dzsF5QJ$07eIm5IrFO{^yUbJvna3FE`b z*X?IdT`&~T`#IQCy9w?(|LZYV23GGd8PKVz%Lx?T1i=h7{(@HEZ>?hfI|eohYk*VB zzR)MHZ*pD6;G4hsz4Q6Fv%N&T#W(%uet^CGJide@w8vZC+?|6C6{~slJUcIRKL)*n zRT0byKWoMB#X;t^vZ3kS;O-HtCQRHc@a_rYea=QKO|V2>gnxO?$d^B=6v^;PrQ~8I z2a9HrGnM0;61}sALxE2F$n-Lde+Az7;>_(PRV4a5*gG!gh;o&#C>l2=k6klAM0`azV}QbyidJW|ek!C7B%3@eKfan^NBI}oV?uB(Z$SC0iT^8(K$vDEab|RWj-_i4x@Jh{q)fe zQ#Wf_XVt2(YVdQ}z!XWMaR27XbHu;ZHO8E{g*AAH0qdz>wu`0No&!FW}{^M?Bn z!SqDQxWB){G@#i6eLpFRht3-N;9Qiq(&v>6=$+RuBlxX@-@|W~3Ot|FqWM4&O6=T> zdF!-!$iPpFbF5uR1%-Aj(qCZ;>#4|YeuLMpIYYiPJ$loLXd&^*vbj~cg!d-cG8(>Zv;NE_W+#28p6%Bnuie*7i`G%@u+Y*4tGoF2(l#K$uDBObIjY_m_hJOz` zc(}t%120h9Xm``sm^teQz*DZ_!AP2Tf~HfGQNXKAN*(5!p)mk0c#gblw&Yhwhv1!g z&O1o?Cc%amXoxewEsn=KsBj`_ExKO+E17m}nw~T{4*5<@8A9t#YcEQ1KMvt-I4eg_ z^94ph29>Juy74*wVDOe5%-E&=A^%A4Hjxu62vu^~)l@>h#Zti~FvYaPHt8T-8)%yF zvyAXPt#`o>8N|bA<-zCpnP+LyL+owo!pNiyajgeg{KIL+hgpdMkMVfq(Q>Lfvj%v= z$?f*1SsgX7p~)*_UPI!ZQ_@Xn0NR`z&N8O`5zS?UNP8OsW=q`dSNLb&Tw8*uo7$)@ zTJ9ybkwJE|;OAJ7M?B;tgXpW__yl$Ts!8oGm!4>6Mg#4atK^bTXjWhRBL_1u4l}qp zb%Y{y^7^0Bfkd-8vryz)2v5aG$}6b~z4kI$Bc|w+h32&zej`hMWi5#m2~|JKt}G8} z$bX|uxq0y&tMNs?70fu|%Xot~c(mC)(^6^Aeg&x=J!Z!6m zy(RW?|65`cOv6}i6O1%nw)N>1%I&QsHtW)13CJfiG)Hi%gTe+R+EG_lD0gVhLFl=Fdl;?l z6wB2_Q3Lwyer9H711*{^r)H+Uq>sW^$_S3! zP6W4PVUDTxom_%>)?j7WDkZfN7&c@F9qE(~S(am-f4OoCwH*(LH4KXA;?N>?R&yH5n z*?S1ZRpwEx`B0wODbEEK>pjbS`gCq)&!kuQ2J@xX0nbcjmEMJT>4?Zk?q>$I~uo??A&Ulo!`E|U z$1(7+Pg`cgX*>i^GFY&oZkn8RWv<{@-LhpC%h2!~V+6`$kQ*i0{Lsxm(#20EQCuUo zW2w-9jfX|q>a|v78{Nq=!lkQ z7+x+VQB-D0aITwaS&oJKg#~rqOGhtEWY8_ELShgcLbn^?u-985sL`5yW4GBCx!ZA( z!q6`_r$&=-nI{`Vhk=xvx(3$>p<|9thSAsUt{5|E;Z$7;IY7ieAh{; ztl^}B=n_z&Z{fIS-{-+GDIg28zM}j+U)$MhaG#-Cs})n{A>X@BRac{W=|vG0{=_^y zJVb$py@_0kdd&%Kt8Y|f3v<_0M#qa{E86nmv*T~7z{26-O=@ogZw=Rp@3Xi;u8z{w zQktO4I!M8AVLF;Vdo7P1OZ^rhX{=~8207zk_i;`23aODK{Ch8GObzMxhQUn2IdbiL zC2g5xJMZvo-0m(__=h`X=(D1b;~4NNX}X?<$#evx7o<1bE_a;^pe!YWdzCSZ7T%Vn zb{Bh(Wxb9!LOAzqw&nBz48pcS<3WO?Dak?EeYqD;4xhU#UqDyv_9x8q+BdjeYbe_b zi*3!Q^0$5j_0uC)$Y08?vq4-RBiG-(Dg~xP&&^OFjOOpTs&=rXX!H-=nt^s7NPn*X z>^Wa5{C3fG@okHdYPHo$e9aZx8F@C9Z3c0f?M58BM#^wX7+@7YlFY~XMG8O%H20$W zSHK*)K}^Mp%lM=(o=E6|UUf0>r@teVv_bMh?0Wxw6tM+oR}uxT`k9BtP&sp#S0n+y z25c1``#fiT1R-L?_4bV6nM8FCZK6Bon~evm<|rw#n1YiZ`d!>zU?mXjP{4eAZq zT)%Z5&;wz=BOEAFaRY9C_c0#gW5G@W42$Em9fUO5g$LxzSp(@U{B{(T0{ya~hXv^z zZrSd#;F(zb*cgGEK_)iD;Y;uPHrqsICppMG{>D3C@CvM>h7f(GYPY@o@@Wax?i*8w z%%Jg0?=NhB#}0)-R6C@5yWoY@Y2421gYieJ#%?@&(32&;B+j82&!iW-j*;6Fts5Kz z;>%w66W63uRxCL)=@Q~bOfyRlcx^cw_RJ-a&Yog?g268!1KR$RwlhfC zg=uW%mskT#V*RUs8r2Nj7}M{sGh)*9eQ2M#Mdu6zwUnXV=+lJE5&d07!S<_T2lZ(* z_4=E$e5+G=0S@sM+^Rj=I~x8xsHz|Q2z#CY)*U~iz@9&ISREaxY6r91MSpbbqSPl> zM`(75(hdc8j%rb)$a;Ki_uDf;lX2VQ;&u7rbgJlEQPk!yUz;Pb*F=y?F66o{4vsMx z48x=Er8tTXFCHZznVjVD9O(NL1Yl2cQ=_F4?Cvdx7;eTVEzGfo{q3M9CCPT7r;Zhr z1WEc*R+Rfm3xQq{X*h==D5VyDY~qsR>1F{^z`5+Lx2TE}*jW3{io}d>in<@?e-gJP zrpF}!zLb|wzRECvO7WfCaZZ~oVZ z#4iKDzdHQ>GI6Ahi0VJ~ef{`4SNz??fAiY}3?06RZc3(x&i^Vj8A@>?c7M^+DMBXE z6KAG=06zjIM2tlEO=pi0z&jsk?ENNt`^G)e5;MJ|w|UXI{`m0R#=WH*L9H8OK;G12 zAXWzyL?de`w6^82bT3sdN+Bh5H)L2<<3ehv3w-fK+vnp}!Bs`H z3@@^viz0~++t!ruuD@gh)-IQAtKS6X9}bB;X*m6ZzyA5P{&L9ZKOFLxZpXi$xrDW@ zfvJ`8|8SBDR8&_+R7U!U3MCo{R(tQswn3krrMMKBi`WkWv5m(fNMvDfRJjxVQ=5!_=X0 zk(8XA>GT~Z8n37S<)N8N_&(>M8-+S9#}zWUju^g~@aDI_sv4No&YZt44+afG zMG+t`H9-&8JB-#7LUD&3h{CH5bsmDr5|xC=5){CvzCx`ExnBuAs!9JdEQycc++cjC z?s$d1nlk9!?_4(EE>&?Zwg};eKu8ix^n8HND$}{IZuh~ zuyV<(n}?=N@2DF%u;n4mF|$%tJw?+LxlzUV*J$!W)Sz+$QHSoenH8L!5sX)+T0KQ5 zDYk}YmxUQ@7J~JWIN#G2d{5hWI?HI;@coQLhN~v9^H!1#{a`RvVf3H6lKZ zvAfAJS08Yae}>tW^!neHrBfv)(&z zi3NKZZdkzHnGsgaA z;SAAWN=@H>;)tzAyg~z9nCnZZaWt(v1;ZOd9Ffy0J3_+b6wXD5Ty@zqNkdw)=mCTx zS{ExqN%y0|wmbP1RfhD9_?D}#vcq%MLLEIx&SL`@x1QNOO@_882TRx5iFC>e@2WY6 zn)+sM4;R;qe~|d<(caZDK<5%Mr&k*CI~p@@j@ALv6xP%}w(dqgeumw#Yce90TBzNH6JYiCL9uzAAg9*QX(XPBWnJn`?}&3wy&bR_Xdgc}JaVa+Qwn zPJI5)9ux_Vs@iXV>UdPqi}Y20iFay#=|%k&1L-n@|CaZV|Ctmltc|UyjZKa0A06sz zBoy>x^qwaAzX3t(tbHrO=%U2ac?Jxi^!|9$MFY;)Ir0Ytg?R&&`$YfnFa6X(fg}Ae z&^6H6(whPx`@Rnj8WjkYheeNriGpQu0GDLPN~^1j817RS9}={k4`|u3BTA2firUgd z&fk{9GWjT;Rvtyz46SxwQ3-qL3uBxJRbn%Z3|{CXZpvZNBkVV^~vM{Q7d zqc^Z@s#Sm4%7|tVFcx0&AfNf8%*6_O@uR4^o!UtAWQH<%Rh>!lea&vSkhe{Xz_mG< zIP}7Hok^0$!}@;QTE4QH8irHlQG24_O+6RTpXtw3+MuGWdi&**zQ2j({xfq>{L^c4 zh8BP2jz8Pw|Hvi(kGdKe|EJt?(5K`Y3!M|c7@3Tk3BKid!U96GV4{pbbp=6enOy5C zOZnDNV=QdQpkKPe_fXKST)293L_RE_pX?jU-kq#xFR#%wn=*s&QRolEu1E$}al)}8 zYd;Aho=HOnPzlCCTw}na9|)$q(X6DOKrezgFxsnw5x0%mPN3AizmeNgKt-YgkV&DR zG}#a5-0#NH=H{F7_;*h|_=#j3F7n4}TFt@r_8BK*HoM*DM{}~oY96-JKZ&$ItX*^cum?!DU#-u zInz3XA2k_#e@mNFV3UQ~IdF1RG1QBSfnb#5YN-)jZLlYxCYB7BmeX8mm*M&yWdv^q zNhb^B-oEwcc~-O`qmyYCMhFC{cy#yz%DF~e#F^M7NHf>0Ff?%`^u9$`-aI9cieNhB zFM9`(My0$3e)QZQFr*|dn9j5V%iG`>odMtS`yo*OtskZ}HW7(@P> zc>T35*#Q1LTDZ`lOHV7nRs433XqC3FWoFDsce^-QN%U^jWY^bCuL7YbMF`srWyInWddWOe=wHVomaU=lCF4_j#&&gg>5eOV zZG6WXNm(dGhdC-mAA6^pt$|F_B#KDgb{~lc%`?V%&-c-3_V+pxlY}qwc0DVi?x7cY zqPfQaIIcEKKUhU^*UQ%M9yp2@UA3@$;7Jmt7N{|2|&YTk2X^{5`%R>BAX3O?>pC!z2kB2f1KXBhmizBPGkI|sury;Nsio3A_5zpfLO zQtS{tJV+VIeHG7Oeu06BI=O)t0F=P^cq%|M)w;0(F#+q58{<8IE~K`IRG$4EzUW2= z_g);^dg0)@vQCb=Ehi^xrw_HR@a;@~{(oqr|6k$5iVBB+T=ro5|m!67VJ2mKBJgnf?{ zM(b`K1HiP2==y*&a1B_3<@)3HKysa>Ud_RYH+CPt;6tT#_@ zeDMl6;r1*nSD~@c8FbVAqV-YJ`}6t!n<=A>cuoUqtJBgQ;bP;P(c&%t=pr6a(c@U? zvV(;4lE=(uJxFd)gOA&y(G#byL*oLX4D&DSav!KUETjzhl#`{ZM&!tsq~Deg*y1@$ z*C0i+44&#M!csrh8UcOn4g*f8d_8z7F<+Y44d%|xNDdGJn`X~qLl2u*&g12j+p5Q| zQ{duO@2-iUXTPhC)(RzIa)GIKu2eZjH7}Frgvh}h(%nwNA+TW>h0Cb-AS3{>+ zac0XJAzOUJVC-8+bF%pq{JV957=aF?Eb131wh&NmQU>?GPw0{dBPF@OBhH3a@Ju}Z zrsQK=5N9S``HsGcb0N3rS5VOPR+_ILlx$GGA#3JlaQQ}k=bZn&wF>na@HCdnnkk#7 za+t-JPrb*Q%?M5;Yeg1-vJL?FMwEAGe!FzqOb%j1;vKOLcXyIC%j}F24>#NP+rH{Z z1(t9er4kq!FY!x|o`u0l+cm-NS^gWez4IKbj5eg~B4T^q1;4lb6Th2$Fmj_6(MMl7 z=B11U?I$D(GHoPX+x5p)P6e8EY_&Wim%b{Eae*LyCAUSh%#P~brXs;DdT0IG_X_~S zOz~+R;M0W1V^^@uYmlrPtL9oCW2|v|O5G5{h#Ehza@)n|_=zLc$U)|AWQ|CYuXbBC z@&&U#>04-G|zvZSmH*dzSDipf`b_%-2v{P(8>oPVq-_lx7BxG>INS0 z)GbSjz@9xu!xdM?K;`m*HRQksBRAP8I&65KT>NbC{6k3sq3RihAu-G#We_An_O1fDxFXJ%7_$A%xi9E`^VzUM0>cZJ)wS(<(|56?8G?4K&l&Rsn)^~4l$AerlO8Ov z7q+MP;b3#5yU#|aSoj#C3G!JQZX>2i#ITS|#tOq(Bc@f3z-Xhu!|p_7h!jKZ!ZW1k zKoeM%6y3Xf^l^%Ln*B#S z5;n-44*g0u0RLw&{;$)-pD@N(Bk`XVqQ4zSmH*&yB7a<-p=+riAfN+=grrC?BSq5V ziQ$>xfg`~|tJsQY=?obVPvr5Kmm^m;I%<IW{RXwG?K|jOf!xqSV}|liuG^AV5$T9NsBnFlx?VE;gMAYaOSOWOaN6 zA1?}0U`bNLh$@mSqZhO;URGU94|z-rRp^s=(IG{0WLl@0+EF&0?5?75pR{L?@w} zOC=5+(Ut4PBExH~MnG3jwO&6XK?z)NEu7Fm$zjg%M-S(L>$QM$Caf?5t@(mRI=wyyjTCNwpZaVPuaqMCRgbd3 zVL7tLaFmTiicZc#Sc#ObLl2a*5w8l`#Su(3eLP4}h%yY8WQfCsVS0}ZZw|HTLlB}a z!eFp|z1HFMa5#ujPTlgz8n_o$v?<8iRR|`Lu+An3#n_K)D+Ux*8Us$*?UL_!SWrpv zZz-Yi$NCYWQ)Xx~hP(-wbm{?zH5fganUb>ggAs)f{vO>UOc6Y%S>f`1*Yc?|^V^WAP2ggCFZ&38f-{dqGc5(tR_CQRB_bw@z)M{{sO5kHgN-E3h$=jY6UE< z{dulV`M&)sL=~z%5`!X8Nh(arfi-;|qWN%{?5Lb?w{6-qyKf8RH`m|1aPpNP|T78KAJZb^WT_}W`qDs?ud_%3qrp91X&zM1B8}7#*mw_sU)-vDo!JJ1Fv7ZrWxsQ74;`ac1#VunzsGhD@3iNe9Y7auY*DJb4*_qOig`+A&xEP+N`)h&S*!an!DgfL^40jQU%)DX#4*wAl2 z5&7#3Ce{y!1n$Apx;Kzj`>I3gA#-x;T8$x1=^3j<-z0yaaSxVV(}$^EH7*9`5wZta zWJFT(x@102B>34E!&oiIUz;!2odzSqB^Dms{>i|SUfEO!fCe2;A*qQB zKUO;q(Vx(~Z+4@f0$l8W(C`GljQFEdc<7)%L4J@^zfp0wKXW__!>B@U{eF8Q`JiIg ziiM}Ut!lpEt;051Ez(`)l@hmRnXY9ckeq}Mg@s=QrR`rUN?fM{g^Wr)j;tRgw;uwY zI?>VEucxh3w>35Nov3^>OVLIq>+PgGq;i|L0W7{fQzD!bak}y3q8wZA{Z-aiEw+DV zBPyO-o(Rlu$L}w+@1vetIyCH;)Iq-HwB{_CfQx^A+o193hr}osFEH2m~PI%v?CtLx|jS&UXil8 z1YNx!rMPVWgjRHZsF3OxeJLyT;Mf!(ox5BKnzS!oa&n zCoXJGXq)ZCIo}6w9$9d>pjTX44ZE1B^Gn${f;*a)tTevYxZmA`6*lZCJ4t}%vUYsFvJpQYIIo3=NL z3bqX^VAVRh#vHQ~q6aU*>-dUS8E$0lTZVo+S9}MslzvlR=x6k>3E<*wJR-4)SOnB&!*>%~MYkZH>}MGnDV-I^o3%V)5E>x#H%2CIyGqN3Hn) z+Yk!_Ysn{DEGa_#xh?8k3TGBSOdUx8>Dms$h-`E~XPh0f~Rog{{ z?aD4p?CoO5x@nG>CfUV)`)kYHnmklGUsDLlbr-#vk1t$nct_*4fv=Og@5MMnQ%K!o ze2V|Dl(!TMX%qK*mmI>@k%6@gQoo1Yd3VC!1+{41h!MVDr0?Jk-~gD!QH61#f4VJ% z-cUn-^rDx(Y=9k4KAJWrSmF;S7uP9;g|73g`4I6ng{)u$Gy7 zkT0eUCigNC$r6|k=JO>nh$};HM_|KJ&w8`%<9UezhTl=|^wP*fO{8guf7*p!-lb9h zT5pgy4MkD5qyhV^6OH)^*TT$uLyP|ceM3`xb#QyhIe=MPd>YOSkLA|(SiphLN>ctB zbGn_!Xm9b7c+T40F7}T|10ZG!L7w%y(Oj$%(HHE<#*xB;+KjO>4MCcYJBzX^Y25ep zJdO;CykITp%4{!|gk<;N*@1+!dmc`qcfPE{o5>mE33N}=M0?-Ov@m^_Fe{ldzK^qw zy2oA}A>?Ev4225RJkSws@%oGg)D?q*5{0gtD9q)E@xN^2FwvndpuUKV;kyF$va@ z#F*tbYa!AfH)=DN%?%Dyg*z}^ji_`yD3;FJ?VhT)b-!_lG2-aEyJWa<4D5b_ZwO@> z7_aq)cgwFmLosm-5^lSix%gse6$B-_sBnzG)5P;vZ+Uc#7~No0?XYhObxd?Vf}md$ z$9jijXb;p=a(BN=c*43(40r-9ldQ{6ZwNVN#FZ-%Qp-c1xV-$trH+h`PonJO;Ej3#E1d|WMeQEe4|R4?S4Ih(ut{Bu<4*oA^OqbfH`@ON?%@3s-1#4B!heaJ zO9_FL{!8RMZ>FPTj^Iy)^TW4{jJdtIH-i6`I;YHGVF&z@I+vywfEV$kBlIr_DuPwf zG!-?9>NM9fwK9{{6E*V6V*0zpxj$SOup1tyMHrL>6eSd1*HF(;*GLzL9$gKfC@~1k zpSWGW{rzdo*MBenTK_wAMesjaC+BGOcfn0dnQkfnFW`;}3}scVv6Ak32O4$+)Wr;n z2rZ77$DPT%-4xHjROfn^;|ahk!4?<6yrFnGb!^Q2m5Xb0Lw5@%8EVm$kYQgjG9m9q zPPV)yR#u53w-tJTcH)`h5rVpTW9J8|xnZvk8qqO_Ch?>f7L6VV3Oy9AxGDwpd>CpZ z?KiP#Hf>tie8aQ&mD#cvoCH!WvRd7g)@d(^yfO(Z+@96MtXWpiR{ZQ^uGqH8Lg@RYy6vixw! zTdijbtwJ!Dh(D+~!ExRIK1gkysK9op#}3^Yths(~aBuB?j|Tw3kK*g&cL5_f!zYp` zs;@wpB&ZDBC@5bb{nbkRG^;8Fb}+1HCwfGapmZKL)o!{FM>~>`)SK!6~ctvLmwB5H~-~)Jg}qepJ_7?Wx+$*8qDj z2^#N`*!-2q0DjcS&Od7jr@N}@uU{@S`I`&>2{z;ZXUEz*e|4xhn$qyGzvs6gxCg2I-Qh?v7z(A)+EB4 z57!gmn{1&oF|R-wVDEd1{RF3d_Q!{-0Lgvzn8S}Gnk>H4Tb&1NWreTe|l<4OCM z#M(tT1-t;?qhG$1cF+KSl#HV$9j$Li+zQZZu57JU>6{1^BJ6GexP8@(TfA_?M#gob z3`^_6fd&RL{eHUMmUGX_0DHzbGrl*R^AG&y+T{n?J_UGJiPtMy)h@J=06B5fXZH4^ zp*;l$f&nEpThhEHk%UU&@eZcpO;>jf&t%D@fY;4hiHV&(J|}P{r>Eb@Z#Av;DsEo5 z5UwgjE}Ds21EqJh7XKe-?;PFfmUWF*Y}>Z&q+;8)Rk3Z`wv&oev2ELSQZaANIo+dg z_j%v`?svyX{(Z)8?6vk@m~+h~O{X99{oL@LhehCqcrsq@Lut|BIj9XslIW?6x#k@o z(VS9|*$u?)n)6xZT!tN0Zwh^jkoU)h!$Xkek~w$o{BmpGcvPPf_GqV4)+DtlujpD< zpJ;TT8+D}81G~n#(H<((qncNhydl_`jG=cZmicmJILlBq$0R2&$D$lu>0cKF4(VJq z=F75W|ArL(-&vROACN+}wa`0BcVsVxEgLbjDYn+I+BMNeyngad?vNO-A9MYQ2 zx#;W^%q2Bw$9w)++MYrzWU7JWQanRJn5PLI?kW_2q7Vl7NM1@m$?Z+A- z#X&Li$=Xm z+4cc6uV%`;u&?4uTcxUNj56KFosiOb92ZZZ_>$1Gif+~Hj@+3vuo2_fH*0Am+t>N| zmSNZ1CJSTe-Qv?dy#g67(qX|&k{D&t4FswC$K!vM10U%2Wyk3MYR7-+=lu`2^e-z0 zsXl9BEurwh0W)Eau?|ODgCvxO?fI%14et)JM*(1=iEbl<)5@GV#)6t-GYEG zlKgZ#+xy-n62)?-3>Qz9KN12&l{P ztn1!u_Ap}|g3aW$1w~E+G3ztZV?W#lmZPZ(3viItH~CIe%XoRRrjOFlLE3;VG(F{1 zEkbj}@!J=Z{Y?&iTRd6(ipz)J8VNRL=k6%2wWCUdE3VTQnu<-WB2rPb#;oQROWl&U z&on^6iYA@D*!pnQN8zeWC{=)z1A|hk#XI52<#my*uuPZF7J_Z#lA=zGvZ*Sg*^2Nb z>A==xPD>3{2t;F#l?*0yOExUbQ+jBvEa!bNfU4ESv#D_oqEVG`j@G36q^OkQIDI!A zK|ggVHzSvHBGV?+Q16s=ZrDhN+f#-{3=54?Fo6jFJ74M z@^uBOZ`Zlf9B_C}RK8&oG~X+gvr#0((K{H$?tp74CP5k|6AY+Iy3$7P-eZE&lm866 z!>YYtd?Yl!q!HCzA$+$H6_~XRRaR3K>ap_!MLqt>P;^vpoC(-QdqU;25pV+RPC1+T?uVt7J@_c*| z$+&7td=+-8Lh0VmkdSsP@8zzc$}o25Xsyc=$TaH!`WsMVmcemJY}wqyn7)b@>3uz- z*}Sx8jpUgQLn@OazOne=5V>8k&&!^8q3D;J$d@?$m%0wh{%PA-#czW4C0#c>(L}8@ zCPf?4z{l5$qfqf`6KJL^JHaR4uD4jJ_@wb=8F0M26yARM;Rkp#Z5LK0I*O*7MU9B;4D&{VDsYul7a2I(mH%X1r+_jO&qEoV)DylU_k_B(9*)M0qGx&mLheCf{X6T(#d z>Ad?Ib|;YYX8HUp*}>je3dR`wLnd{NKbkQS#${~W*iA0nj%nSIPk0J*JHBW#rNc@Z zYl%{OFGA=sLrn8vh(}&6mb;B5>~AbG1Yh>cTlfo6$4NK?lyoTVrO3XYL-H(sy{zQ zq3QZC!6+rzH+rtRV^6BsPmA^>{2WZ5_HpIT0f9;yx&A{nYk)NakaKDRM*03r!0IrT zaKk8e)$fwj<5`nxngDD%zMROKy)-0uQh~NKyG?lyi0)(t!q~Li=mWuPQ0P?po`i3M zgrvb-5-pa5Z-=YFJi_foz7)R{1xyG%TSGmPuNMJtcQ|+<*(Gm){KRtee-5bTj<{f# zQtj~Ow|;*2D(v(|xC)zJqTTHg^U^~&>NpZ8?Bv(%4>1PDiF*O$)tQkal*pQw15^<7 z&Ux%aBOI+0A%>SPSDFt!EgL=x*!=A&bg!f&OOl^_eJvEAG4?6!>5h<-BC<+kkrbsz ze7pkg{yhM9I@gq_Ww(hIu~4EiP}CT(ORn2cwvMx^9ol&Z@a$e$<-%^0#gC@a5QsG| zF6Dr}dVp2pB6nWK(Gac1N18owqdk(vF!l5MHzaJ)z06gkJvpZ zikD%me%o8;8n@e*edtl}?u{isi$H-9N_U8j_~z+e+A|`~DIq0hZ!Pj1-kQgc?Ab}; zyid_J-A9ZDe4FbH68?y~0_o)aI=C1>TQ zc}4KmlcKBhuJAc8g0~F>U$!geluq{|q7J*83jiP8?!i%Cms;-?VtkynaQjQ(5^l!x z(OAxC*%CKX-*UvBjvAL|{lU+N*^8VTG>e7p8Xb>!7@s4q@fw|)onCJ0j>o?U_L&#I zAnU$n2q^ze1^GYIIQ+jQ>4LUSHeZAoIei;rtAE6Q6>~={Rg4Zp^<-w;mFNU^J8QC& zU7_R+b|~{zcInV&kud6#+Py_dlzzgg)zEJ1ZB z>y;FRCi`u+Od!6e5r9h%retGHSYAJgbErnkl9MZz1a;G^pANQ}Fsllsvj()P@jXXYRh zfp{U(I(wmjvZaPn{7$;8`s8Ma=o>GQ8(s;OBo8J z$YoSJch1Gzk{wE|s$B`K0)lTWzLe+0orZ}7p-xhe=A}-_eGMEo7_HXOM;9mUd$Rm$ zg@!z)mdCw~l#iE-+rm-bR|z2?) zd4G=+b3`eG4$!#^)4X58_A*}Uo$zUM;gYo@%qhlIg)i4T)j(@u&4M4yDU_Bx`5sBI zNn&9FO-3bhAJ#xnhmW;1XV_{SZmX(hEt?+Mw0QhdwzfC;p#k_-#GhuJ){H;g|&0t3{9>M;yz5Q|6!qyPYOa z;)j1Y+qMjfsoms8;S{a)Ed37kfE#K`v? z92JnO0#x<30;3xf?IRgCs3>SRDx0aMbQi0rt>dKnbK0(L_-{Dl-55;zvi4G~&z)cE z)M^culWk0dIyWkIdF4eqC}<}wT-p2qBraV@956Tc#5N@Z0)_G|UAu_9VvV)M$Y7XQ z%q?Aq5qx63Q{(d02Q9mT;r56GK4#)GyYU>1@J!#Am~KWYi*}GEA7tZC3)5sQpBjjs zpq-@BCW)P-gDs!1dFkdmw--s8nd!Hs)I+=aCwl?&a|;YkLaS|H;%Dggs3>s<3>!#f zltD5mFN{O`Q=SVw3R3biR&^Gk0(vm^ebiZo?i{o87BDqxNXMw%5M{#v9~wZV=@o)Z zSK7dLSmm!kz=Q*-pngWIG_)4qA0~+R3^^FtxzY6YCLrz#8?35}D)$@~@z&;3T0Eg< ztKLX^dVDQsR`GhG#i6#wkfB`0DDSo+8NS*BqwEYp>(4_;&#P?ZQ?P@eV@z*-cU2D@ zziWuglWe2BP$ROpnJn=3&wLoS$b6@#PUYLqyG*g+GI3YE+m*-u!ZxC z8*5m_#VEoKnj7kZ_{sKdRQFj+fqgLqZHApUM*8Vv85R1<1KQFXz6fDf@Yj zs0)Bc3h8U#POxt#4t{sf%^(){Z}#&WCDo+`meOotY>dZiTil^=bnuXz0Y8gs>t1}- z4*SL)U5(^#2$W9lM+o=T-zXFddNR;^lf-nZuD&l zwqU~TVR8#Jh(5ogJMY?kWOvgdBlJ2PcSF5-$C-BZZ&i5ubPSff>$=`_?&Z9_ zLwQ`=o)7rc%9aT?D}=nW3tO@b6}6!%-VJw%b)2<2FM(Iic8j zAhdFkwzdmPIrBtGA*iI3gsxPBv{!|;wPjPs*`pXjw?r3e#YDCEsq*zxJxss#ai5E% z+X-RT^>K`|2#sIrL)YOGM7oSFEB6zPM-7NrEXh+fg}$PPUvVN^!8V~@e|Pv<<@?A2 z#-@sP4FJ0d$UBd{uA$i7hy4b^Es&?tUBW((dcAU}SFh5I)|WNWLx`*Ee87tcwB8TR zE+Z;(JdEVHEY3+J;Snrm6#0lTD8I@pmJwps*fJpei%z9g7+QB=33wp0mH|Q`0 z+AtqtbUiYxbLbqI$(b`PiD71o*n?qa(a2;_h>wWOU@#fvCLXVQ2?N%@!j}4g(&mc{ zelL**7&&ihgiI$5I~-Qx+k2aov43L<&ORvA6%^f?B!i(FjfjePqyb4pcY^B}*fvmP z(Mv-$twhlgkZMXIkWipZSPc4m)(8ZOq_VzHz^oAp3eC>E-56j?y&LZ6Mqw`|;)!D* zh|pWPpGx@6=3f3NmDqhn{-UU0RZ{f5(@}};89}3bKcx13+@c*gjDGZb9x+>^_f^oi z{XOZLG|W^7wMOF34DE`zODGVSQ*(qr=&Tq6UC}rUiM$8oTC}cWc%>bh1H>o3P4^Y= zkM;v##mEvP__uG*aR06M%=fqaL&(@f|7$(e-v<4NzsP@vmcllU_HGKsHeYiJ|0L^X zDQ$gixr6^eUFBkzB@a@eQsReS^H&m%lIxYMtu3AjjOV?x_NZ)W>9D*6+wR&==={DL zaI^BY72Kl=9~Ehjq>YJyT5d`x04?$7H&`=PO3{tFxR63#?(btczq7cE3eGV-acDkpJehdhm2>^mcH(SQ4 z=!dZVa&gKvYrnO2f}z)f2CuX`W~-Byl~gjJZ8<}FA*k-1+m@Se_kMcf%087rZJ8V+ z1&1LAoJ3^r!m`BCC{+v$=E$I6nM-M=_C`iQNLd)v3H2RlxQdb^u|d$n?_{&*xiban zR~n2B(u`{i>qjH%^s>_}^jil*MD4j*$UZPzyb18qcgG#GjbM`SZnZp^wa-vPl&UD*i4Rw!$n*%8Z*LW*lK!UuKr% z*h7AP>dau`%Q78CB)ra~XQPjhrq1<$T@Giue2@pjXlx2CY6(ZY)aS6t6WRoMp);!z zBSWyHa*Rh#8lrq>fELK^$7C^A81G|$B;qDDM_2{V-liD*YdS)$TMu3TtC6PnUkR(< z|1Z5+$zI>k_zwh2+Scfw*>;xFn!=Ym^CSQx?gmQ=w1jH`OR@ zkz(lSuP9x}_}0B4`gEh=HAo~-mfZrqVRn7LSkV>?k1&3Y9lw)$Jee!;czB(v+1ehm zu4EWLSC!H(yfEBYuR1;<=`2u&uFXFY8Q7K7nkKFJy*C4shXTh+Q#I_+O0zghVguZR z4*JkYbkQFrONVO3Pn+K}Fg4wtFeh!pB;+v5p^eZQH~BlCT(jPhs|3jp1k{Hx%@o{- zT!tS$j~)=5sUar@LV%!Ih&3(6rb=IEx;PhNg629eAWz!FLz#p6hovGFy4E2L8Vga4 zdTT>RpYQTq*qqkoCkXz-C@tC;DBpgu8Zxw9{sF4FS>ceoehztpCe-I%K`t6kyaS$K zf=%)h1ke~GFoc<)Pah7>Fzm7sIeKrdBd!VfiWd8cadI#=RxjaUeYCT)JQGT!KC_fU zBvZe$V}$8waqhgcNzA%iSRR*MoWWuolV72dHi<>AG)hNm7;OaT5_K?a1YUB?Q@*|{ z;xgoHogKou{xOebCe|-?-fdE4VVq2Z>mVY6bwe>Nh4Fy|>*h7M-qbLc+PYCrj8zc z=Xx$k5h9~$(9G8qu~e$sNp}w)R`D=}xzL4w7b@ZHKkiEEgv!(1uR-R~BDJF}YaEz-~x{t@GpYeH7K25@Yj#r^G9TQoqcX^S5}oW*FZUuf^t`gqVTDwQ$XP)`~uVZcUl!Pv_4=j43e~wR{M%< zdpoqdOWhq&@mmIeTw6Wt$8E1$JNI1Mu;4pYo@qrX+oJr(cNT69j~G@rPWb^X6j|N5 z*1OB4n0hHM8Owx3aS|@!WhC@G7V&xGMFO;6I*F$!CKc8M)9pgA zd0T(Pn$+6TAM{^LW1N56+4!HeF7^NC+xb`Bo26u_I41|s(+r|00H2tm3?SbRXrbh( z&@U>Pr^dgk!T*jp3gS;-7e9YGb)9n@i7IM>-NmsNW51qJ2vEp*8nS+Lxl(WXc=#GK zr3*g*!flGaS((~e!Ku8VRdZ~SUSp2ZH(}N)U+b3M)Kv0;b7=>WLfh$oYU6e1ohn7~OO#UO-4L=s$_*f@&P z@I843I4F;&B*U|_uCezbzscZ7Z~;d}B?igF;s7tZl|7qd2tnLyTO#?-y2*{i#`{^u zU*hNPh(x%2$`!2^uGvcX1dIOQt?1F%+jMy$`ny*GuqawpZ~11H#@2Oq)qa)E&Zt;FYzm}e9PBvEg{QDVzsCyh3E;eB zxt?taKJ)K`305)fD+eXOkXdLmomgygU8vJ76~3IOAQAQ$EH!U$rI!i|e!d!2G$di5 zP&C{yVZRCaiFi4UWFN#NsM;a^h^p4Zvz}syRt8Vu8uQ2!0#(}HoJ21jQ~=D_x)YCH zA&lqP!av6h%@m-Hfng*LI?Ho?X|pd)$oE~Q;X%-%ys@?0%V$1imKsZ|9)&u52~RYe z0GHVFS{wX5JU=o9W8Yu7b}aK2k>6W2I07(q(@P~Zj*)q2=WgiON)G#UBS1TZpHcjI%@ND`${e9bAJZ#@wPCLG3G}!dA)NxA6X>YfZ=?4Z z%+W{C#1X7xj4PDRcJGPxg*RVQ>s(Lo`B<+(aAi;qreK#`qfeM&$fD&uBQjxX0n;XY zqb*j1&kl5!Stg+cBeTR`XMmbCZUB41GG$Xh>(48p|G4EHFeFkO)!8?Ql%lMTE zg~yVc1{!xM?iRN%Vg(5IEwBbONEBvbV4%VcnQV=m20ts4F+XVB@y}Wg|_& z6RO=dj@NkJEua}p0q&bY63B0qf`QCo+Y~|QCC?ZJe1AgBI8`dVu3tBr;;V!8zcUwz z|8}GQkv4u2L;etl_$SI7C9f%q`L$zIWEy3iQoyoG0ay^3{^B%4JYz7>RWg)x;F`A^ z0$M%9h^~~cLcBs8?+?&^FU^nlxUV=vYSOrCER9Ka$_Fp57tIPPQKVKS4sDa1Cp5{0 zFbNOrj%g7`m~80r0!&9WRmKDSt z5_=qqT1XH@<#DAZ$>>QMf395 z7!4McDOFHLuc(MwyMIX=vf60L)T)!^QoM@@$oN#9$yx-3oQzWi&Q-~U@I5tMPzU-R zx(mCn;ZUKp3>2L;PZmro z$Li;#^iF6&$l9qki2&6pGTY=K2B6;)HzNjNmMQgu)z&39zDa|dc$FV@sqMmPd_yWF z-DzVpj$3;`qJAu%nPu2^%*z9Vww0R&PbzzfWbE~rmWu0AeMUL*b>}o=6a@zAiahwA ze@>i2vE!D+e*u&S{}rI*{6E?FA141JjS@7rvigtWK-p3eOBvl8wpqGKb5&rD6@(f* z8J@Q6!JiZbMPqed4w+t~-KG~pyLDu+r@J?Gw27~BW>(9wBu-1k$k zH2o=#D>u5SFVdsi@1?D-cR!o)T`oT^F8+yIrp;{SHQ37WI`b7jswIDonRpMR3B#V- zHxlzT%ep2K?Gp=lz&)R)*3Cb+}l7|S2(12zB!vyKULTr7Tmz2br-V-UwlA=PIs zaUxq@5vi!at%{1me%U0Zl9-_c)dgTjz`IR`HWbQJ-EJfo0$trf{>llm0T$w|SSBOM zl<|tJ7x^a|r|ZZMPg69q+d4a+#4?3wC@+!Lh_4prqRCz`DIf-Gv$}QCG1*{>ia|b3 z0{WBPC|V0~-7J2R$pYDBLI{UVRT9ukAk~d~E3w(K^eh8A^a%w%NjK?tncXx@G0*d9 z2;^1fLBAplR)-pdY_3`K4xG?o>i* z+1V{nPBV#A!~!b~J@Sm4-9-7i!#WxP!i0rcs(e;& zz`BA#d~wUA-uD!T;bW^C&B~}NAxCg6n+oX!Vj$a{Cdx@171hfW=lLtgDAHl@umR&kAd6L)7A$ePsJn5v!fTBAQfGjJyM; zoZ+shCpN=gTir+DxrCi&DwPM#3wD^Dh{vig(T28a_rvE{#t$q~li+I#8!XFt6(H_? z>7AK|)*!|%DjXH(+`7ZOV+keQw~Iv+k|Qsn(lULFThoSfn$DvDB|+r%R9rleq)Kk$ zOJYN$wsmQWOi>UGL>4N3N~%1pot?PRQO1%{-8~QbY$cW8)HUTeGKk`OeV;6NEa#9~ zUIVfHTlNhC)=q4R#VPyU(+Gp!1Fnv)MBGx@&RzkB1<>@)z4vl+jdH)q?P(6f zG=td1WTzsD-4Q!NQYRlK-ojQYljkvA>;2kRQdc{&qR94!&|h&@Oh=XxHu?HzyZb_l}Hf(7;-LLjYQr#@)+|mr{tA8N_^Id`ph^;%nSCP5VYK z{zT!QwTmxn2spPsv5io&Ny&Kru1U|akiExx+7h7+TYJTTSF8~>YhLT>%h=R=2Z!&r zhH}|tzJ_y2eI7W#-3@i=jnF_RGz;Cd(b=Rs3G(N(Txz4rX^s& z`x{sNHH6F!0chkXt7c)100a6Wvxsvy9tSR8H|O|zvK0jv9Nb?VK1;JVA5Fx-AsRCK zh<|TBUb=L>($M*QI$X&r<)U?gpKFY-nviDeFkC!WV&E-GQ=MV%se6nvtN6nM#tD0= z$7r_l;B~RLnT;F!m%=Zrd)my3ncjw!12-hbFdGyz0m2X=?gyLVcHyJFf>4nYojNXF3AP_fB{^l{n-&H z4-Z4)j!XnLBewWkWDt&48pl9exK=z@zP0Ivg}I;zReG6X8gs3G*l-DT5cYf)UP!EN zjp(OzSaprjZl5EL5Lh3d>1i?(UN5ho3Eb4!sL&vZnGfNP-vyi@9VbY7I3Tutay3^I zK`kse@LZ%{H=sP8`9zYze9$Gm0sHX&+>hR$sZMjXqDh5G34L;g9 z&=|=qHp}9DEbI8NA$Gv`fcK8I-a}(oppA=Ia5w717(^ySu4A<2$?CYFG z`ov>4`lu^tR&ZeRyQKJ0G{1JFq6~gh^QLiUq~JJkilYmrNqa+H&`81b2eZ6LFOdV`%@&7VzJ|2!BSh9uPgaG5k*AW zo$)~V9)+qdqYCz8I;8_{L?x4q+&NacA0lRUcPKF@C47Dur8W%O3?UjF1amUYCH^1> zxS7u;V={R^eimDus|YJBa?>brcKHDCa*Opr%QFC|ojQKzZUkCnu;~wiNONu~Ib-)g zVgId^LZ7A)Qf*N`1>F4Z%Q}N6SaXcov}R)-K}8zF!rw1uVxwh<-`L945ys(5MD0H4 ze%LLF>C9RS!W13mPlRzS)l&b$2&5nr&qMmXk$!b*sZZT|dxuwd$6S$1(4-^LC`Mw< zZojB)dMd5L&uPL&Ca->kE_EWym&$|*DNZDe4P%WM+uhuAN{5_A?jz-sN(!j1Rb|V{t16jm z3&;8gdb*Q4|MQr@^NDYr#gI^~S^Mx*7CE+dlAF<6@+%O^R(-|Tb}$2dm9nQpzKC@q z%I_nZ&29;rL2SCd1G0l}f$g#cpRQ-WF?QW)n0cFTF0yTz<~qW~9(%Y#owtUfPcF9* zIwDm3l+QZ@oI9JghBi-*flv^vQQ!`ziBc%-+4rq+(sTx9uw{muv5v{w0B$*gHrS&C+W}+@;QQDk7&M~xxXD&Iv<|v?WY0)r2p;hi?Z&t5 zM0zpE8t?a9C554}W3wI5vCN>}Ms@X?JC?{qJytJwPriNh-l^Hbs@fbuG%9?Xwhj&O z#G=j1zRchVc(g;8Jlepmyy6aYo=wl2GZDJR&L$h>RpK9__K|=b&zmH3R6+nQZ*>qu z*@df6qeXJm=&{U>gQHuHfa2|zu9jHJdaNb?J%ei=?pSGHp6E*_H0QH@xZHCr*}*fT zYVTUVjb9F{P0&^mX$|^1QU@<;s?#qc@xZDrJRRzCO)J~X$a1ygg)#)zaxjO!|Aijx zk-hCj)s8D9{&I3FA89Miqs}46_=?QD>lh!Z!(veM3ljc`{>Rs>zu^IMsKB2upgc#A z0CnHlQlI&HC=V_U0$|90%I043+6U79t$eao4(XQgDiGQXJ#p1I*osq0AYjU zs~06H1W{-qge!$A$6=0d2h$hwx3A9Y!@2|#;UIz(0zkRq17gHdn@OwnBE<~{{!ox7 zlbkVa&VI0qBBatAqf^T7nCK@@2uKW~ zq}ezB7&D<1-k+tu{Ruv1!espQIX8_$V??5FepJY3lRWGF(4pDbWVi~_x8`QP_PGU$gpf98lm=Rxn zI{jxL8DSj6PGP=GexWd;R@#?ktN#3!1pXm<@o9Npx-?_;aAI1kd8!FgoMip5)&`4K z{fGpnRlOWs)U=gA0=ggdf+7)1#vM5oIk$0fY2wfE?_vC>#1b0B@(;O-J3pcc>GenH zmGXNhdZ{yl5+kV?4{UalCzQg!ym((9A$h`N^y_oK8^p#;xKEjv1=q|OX{r>zrzuYB zFe=V-!X|RFj7N~0FZ{|yt-R4G0M`Nwq$~?U-^soxG$SC{3zrgh{oq;M^5KCNyzQT`{-PxeS+w}BsyYFdBD6rY%`y>0MzjFp7`SLiO|LSpn9|ZWz z$>nXsvhw8aPzqUygP3q=i4Y*_Y>EWqZ2?^N&YnL|FN$;HJc(vba75CXjAg zQXQKldmF?L2Zx4ikd!f}PL$BevvthKYgmj+`~d$U!bUkaxZM8rntS}$qxjcY$v@fF ze;tLb<-g8g-vnMSb$FcqY>hhj6Pk>6^W}OcU{@AZ1QgT+6bBUl+XxqZ*~AH(5qEAk zqok?I>a7<<@gwnbv)d-`FFk>viH4;$*SXek4{dL?a7HztukZr~F4UZqqx$vpl)wJ} z6^{P1L;m--LC)UR)ZW;^K|uc>(nwD6nqO!u^3dlTRMFZ+5Gv&~q_CfjYThPGPb#^e znqm}0F6Xh+1ubH&xHPBODq^UDoU_S5pN}9uS*4o?4`yN@mS|3#K zufFa^<2An84Sv05K1f^qmaDE>A<#(uhiT3x86t<*jZ~Hqdb^(_fn?~*wAwnWLhb{x z%o;qw^To|mPDb=)1R&C)m`LixxlG8QT9;yypdZCYrPp;cr{zM{XF^Sa8^O_l;h4`U z=;emOR_=X7QwP=Kx#O{qzt$gs@xbYRJYrA|N-KPkxGhnF(4d_GAiw zNn#qidbL(&*oe@_%EJoDqbnoPA%16+{sdkZ;`wj`s8UE zR3p?IoAKH!qlYg0lw$$4QbW>1sW_gQ%y0K&zMq+a~l6F{{z{Qq#pF&-#T`1|gXfh#G8EI7Htk zh-5<v-YNQ2)yo!_(cd=#$G9im5XdLh-cw$>o1=WaYv`Y zK9>%I3|N&tOwnue364m;J2WYeexpv%$}6j$B~QOA)zI%05o#T6_9fHjb#j+zQxbGT zjnDr4v-KMjhTW_4^{62KSEv>DZ<*5OUcq@P6a+Q0tcIGbj%Jr zGZxGbbp@v7Dw*{ANZ-5?vH3-?0G?74U396zff!@n`?8M^dusLrw)Z!_@)8G<0cTum zUh>w}jkJ}GU*4}%y0-9rEb}0=+}6$1UB@_TRVHhcDxPz;9>ELo5a532ioesIxg$}p zln)%bjKtgGzDwaZTCY>s^3r}OZ-9uvB&jpQy%~&{KaT;9EYKM8gu_TsMhhpllVTAJ}tr73d=yQkbDH(fj@u z&+H2f7J6bWQ>u-dc+inFF6whCQ2J-+a|jXkpH;7ixwDGsZ{gQAm$!#}OpiLKu5Cq~^39>?mon z;j+Gk=&GvMekn1RQgNHs&{x`x4TAM<+=vgaOlLVAC%Z!lNyfHJW)()2{}Xrr^BZN) zlDyOm;}ujSOHtRwDA}x&ae=}6WO1E)CtHb=rEC-Tn7RCL$dg#qsiDlRBe$O{2qsePF)ShcB5XGJjqVA4mIv;%+RYvuk zjeKvQH>2jgGhRk{bJcX>s1{}?zqs3xruSMxwka!+VU9uxs?;-9_1TXe2G+_Qez8v; zCo1-#+KNT*&=;{hoj$mB7ae-K2l?ir5e?{F20G6H^EM~-y2L0^52lXl)UqRNG#Flo zQ`%da5*xx#xSyWz;_!YYZQK=I&s}*uQZfC54NGEOLZsY-1%?m8-&h8Yz{I>Ro#uzt&TdSX+nqw^er%jAfe^#;%vBkzW>VpDcplW$BtAH@AUY z44wz`iry|%;V+?d;aM%xi6q`~trSYp?by?!%Rw8E2|JLWJ32^hY(cmshop=}j&M)k z@}Osga$gLirH?z^U=k2z+sf948*Lw5d}A2d{0D%32v zVe)Q5oEJJj&BzraAV=}{hj7cWqBZH|^xIhZLU!b6o~H4p@s!<77fT4!{dT;w9WK|O ze?LC6*)IXO&eH2 z3@4*XtGD>^wOWv-q3J5z+vN{25ek-kgxT+Lo-O^U*jy;v%l(UD%(jP78q;SgAVzugc!xidjM?d;64yLjoW0JK$e+$ znnPo-U(a#u&Kd7@$rm1R8D9JD6SY&Ss5!DZ9z2^^xne+?03)=<)H-V$I~4D8QoVXt zKe17=^#<&yO}yx^7d3~11#LOUO+D>OBjL#Znp&@H%V|ydf_EVPEhGBRl!N?l@A&^@ z?!R92q(2*^$RD6cpaMe9p)J135SGYG{*p}Lh^#`IL%rmJZr}h`kOjzj3SWP{$@lFE@;Cxf?Dz#j*rf^hvK39>ast*3PT#>B zjnY zZZOC!h&N5Gxgbo-nO}jea-_Tw{k+Pl^r&wN&h=BWw-`WLb*jjeOvynhO^o5G9KcXP zJc^>2bhBf?H*5Y&MP1h*FFs)<6AdaQ3BrUZy`+?pA&*puHq$Cu?zJ<~;A=P-X{$=c zG;Y>~fRwR4p9{5`pN2nkHcDFvnfqxMN89#(O`L>yYb=`owz1w?e;0p_IY)?F1B&t1{LL2L- zKh7DG$q{sx`or%ujLU8y0_-7(Vw-5}_BG2>*?Vi1aD4a`I((-_2PkprP~Wmfv3R1# z#Io^ns9?7Zgv{N{UUNI~-9TkEx8LE?4?m}gpb!RqTWW;S6MxPaRZ*6C3riMB@0iTv zv1t+qwBJ)a#J6Kn0{%GNSSdk+GgMQ03Jo0WtsBM|btPVdnrli9kDB2NxVI+=j9A`p z3e@k@>t?AapS?&cbVE)NK<_igeELPRN4b$b>nPiVWGU3VXpwE$QFTLK&5w}St_UF6 zcF^>lmMj;tq-2=Qe0(GFtcf6x*1c@nQXW^_tk-?8%}typ>4&Crr`rAQd0`~S%-pa8(77CnN>lK1WPhhvz7Om`^W4(7B#HE43+U`!w^899>Wq1>?Bn zjMGYn8k5?-r*V)@8cd0GmvcHFj^U^HTQU@$o{^?{Ki;FI3DOXpoa?7nD zSoU1xJ;3g*yK;F021%@Nj+_-i+kA@65j39GMbvWBhb+Oh#!PWA<)_SbLN?y)L+zU< zgG8uSvB5N^Wzf_zGQqR5fm9Lp9|@ihJ~?57UVF{eYo!m#u21&@!!#mB$JRIKe31Ka4CdXMU(ahpX)0beEq<(zk zz4DCh%+_?K-Va=npjcJ;2JG+bHOy}4kK3k(^HVO8G@0SK0Ej`T9$ePOShLL?{V39M48OOcR-Q3pNbVl}nr;lz zx-pw?=B_z+G#R=MgvkwYHlZMh5_gnoY8rS|&VU1QagySLTYLAl$J3{9yU+mG$=H}{ zkW*rzQOzz(3A64HR`x1dC`p|rMZd+=_64kJBiwJvU2-^FqKg|868SWTpNM!Iu;IFR zdq^e3yc2Pm_hJ$}*Hgde+~c>ssC*?Ix{Elr72w$MJHJL0iC_`5iEU8M4kEU$tr2c# zUd=r$gl7^xj)k8l-MnM)ur*;pLh4Wdq#$pYagI`dB^!GGwnpVYBhcT$xj!P%SDqng z`!xvV>iAdeQI76_1>i>xnri%D5g?g4w(8;bRmj(f!++7QVX+)1ZDVp}4FbECGYA>A zwz)l6zsg>Ey%F+-;0)A1jjYRWp-5mSY0_G5Wcod>*0}~6IxT&m3`rwRsPdW!M*;)h zk-%JQlC$-bmSQNdhyCRw`d9lk&DfOg4)r<$C&XHi(&~ZMlM%Yx)%&BmQ2Ea>Y7-u! z2DY>@xOTa8i1$wsMIR-+Jb%hJrSd?`)9=5q%#s7AZ?P}_#3+k4`GK3i!tCLHt^M); z$3Xmb3^rft$PE7oz)F^X6#qPe5m0A(wZm=O6$WkKMNb0!a*#>sA~3Puc&EsyDH}$3 z@IG;awxpTSDFbmTs$5e9|0pzy-eC0%X;CO}|++z`*cLyf8(RRz=?rwaGOCKW0RQ{fM?m}DT9Xsy~A4eMOkRb_z~W?Vy=8Gdbjz(%(hP8_Txx_-h9gZ`T+MZZun z+HXy$uvEo37ecqiH~2hFt|wysYu$7ZRhDoxS1M!N;D$=aTi3#C!lE>Wkc`-U-A|>C z6UBq96jQz624b(R-z?Y@?qNhB97y%UpCoI})1a43cOZ;fs#jFKVaQc!@h?_zH^cov z+&0ooQ$Ou`m_LgUqRCv#iwo%bEqk2_buEmrr!a@b;~@l8tooT*qmN+Z=*;$M=x!_O z%&16+HRw&0`O4K5WO@+z@qxzUs(0~g=dzV{iQ3RkQN>@AwLM~Bh9Ob}lbd$(00Xpu$CiPPBuv7H#T1o@dP z$lj?I7_gjCiSV5@!E=_(_y{fJEnh=0M(u4f9LChI82%EpAzf35Zt;bv>~i+q1)G*9c%8{zhe7GTg%nswl?akSHSRv zwEXXFt-m)Q|8c|rbZz>7vdU00w)#70U0W&g^miL&O50yFadNUXoTnt6cKJMK_pT?+X2}r z;!qt?Ns&9FIko#ven;2Hks=aQ$*!dJ7L`i4(U*b3Q1#jUm}<{irxtBF~*f7RZ8o ztqb;K;l*a)gfJ_ZB!@dNLmkKJ!HghIh=j+|Hsmo6(O13qSJcF7zM zE34;_n{_0WyBnFeX;nr0TubCz`8R9@ATg`awJ%C+rfM}|a55c-%xB9#%E@r$p8rHN zFcnnsV!uj=UtcEv|7+fVJY7z)TQ-RD@Pl0d=e^D-LNwESALjCYBF!Ch4Xl3f zhqQMH6SQ5j04q`HN@rHuwr$(CZQHhO+qP}nwvEaA_wAm=JaZS_i*NNUPrQK>5hrjz zJ^F5O*iuC;8=0{M>va*y%acd_8cC)NyNL3`hWCiIppcC@h%CbDzl*%|fs8A%e&5vy zsW5&FIuyrd-LUX%zE$P&mKgphalw9oql=2DUl3h^tn_(er@P=x?I}FV8?yA|lW#Ej z8q^6DN#Z^on{w;k*j%>e#d&DpHpz`96|mlqIipq_=C zW!iW4+A}hK1|8ehkQ_X^z;+`=?6aKp-C$B5#2oGncNZTUCM?`~jk+UTa;Cnm+4Dv! zn`d91D0>tDy*YtJatlPmWPMsw{EoBCC&Gf{3?{C6CRMw#v~%ox1^w46*VhK6X!$XN z+y8?Z{9BR6QBL!p2-d8r(Nhf2@G+X$G$%x?Uiiq;p}EW`35m_{ctqfWsUM z>lKI3vw}*2L3WhpZ2|kf=Y>Q)WwJ~h;r2H%(HRO?w4<3y4A&9Z^Mpw8Bv7B4#=>rZ z%&C{;L`WnS*j{5&8*@OU60JeI@XgvhJyC-CdM7Nv)lYKqXIH<=5B@AbtpedICG*+U zsq77*)N)|nH|=3TVx2|WO)0N|{DO!aHqw!@-Z7GH18Wrd^)Z9sYg3V>Nz2>ws{Mt9p^Qw z9H;RPYubPseg7wcLegTE7)Q4lZv0~1XYwY%_rwEWl^7PpYZblZ)z{FqsVgMp?)J2x z@;G$2YZojLjIhSlU=?_Al_9Yy_+yI4O>+yE?SM;AmZuC3~Lw9}D>WKUe_$fBE^qAH}I3O(IU_O2zfM z3w3gF50U()6G9Ta7(X5eGLHx$bh`m18{m_%nvAWzh{t_x)6XAD@~GD5dLbI9+l_L61;e)bT!C5dNS zo_ho7x3zKxRQz(XnYdGEA#nY+QolWDT=hsadma%j&et~5Ml+gy8QLFrPzNVTx(IeF zb}R+2hhCT#jz}aIqCXetF9469f>%&JmVCU+ujy1R*g3f((Kru#nRY@Z50h@IA3H24 zwa;E7%sj(4-W%o|0N5VR(i1vbIXFln3L1VPZLcX`$BpP1%cxF)D~!XG^lc1?>$nKs z{>Qa!0_#-!)so*}+_LE%DcqM%=A9S-6i{Ir* znavrD73xboFe4v7&KwkMi|YJ3@CVb*{{yBB|Ance?0>O<&d%pV>9Yluo^{Zp0h1t4_=Vi!Ar1dc1R~)lQCv)P(jRBJPi1m@Uwicr5qscR zMAeBDd);XY`%AoQCKhbhk;vJ8o~-StE zG*rPZCx`_aEP29M64ke|6(e!-5;&D9WW%8-CcL29L0vl z#7~t`F9`r0PP=3Y2Rjevp<)96jS9?B_7=+XXB?}kM)HO&o&tJ7*)lEh7%6xNn^z;H z0BMXs7Cen&6F_<-g;tA&s?S4l|CYA?<*&+-M_|7Fl;zfVWVXxdi%Yn2q`!K_)%K7s=#INo5x(+Qsm8$vzyRlfHpXFX5X=#E6qPnV&EjCxD6w9!dCsEu` z-ag9+p@57z4p-Z4)1gRRoI8ybHy`%gvG%+CC=kz^e{`K+22~v_cn{{? zmqV4GUaibd74~b4cL__0)1yOml2?fWXp0JWF6Hb6glR#Up74MFLL^`qpv5U9=(icQ zd%4VM8tn}0GDVQ8J3wpe%ymy%SP$-ug9)0~q$gr4ZR$<9YWc~8LG-lnFhxUhhaoZC ziVTksHfQu)B5|wGLH^=7rt0o`%M+4&W6G0B>8J4~HXWo+8tuFIqb&zb$tShy*XE;0 z?ox)nKXFq@w^Dg%h2u`r=mBR9V|ME;zEF-g5!x%*$nt|2D^BP<)wFQ*7wW^OgjQH( zhW9)rGZ@6ir^+Dd%R13^jMF4?LGv%!LmY$D`rJFLx2q4?#JV6VGS^JjU0($fZZ6uO zhLchGvZ2QhyKhA7cR~l^K*A6<&kOg%!yM{h{*M4*(6Pl|u z|8<`lD$r}jEs-14`UqW=H5<-fl&bG_*p3JkPEB58Gh+4b zCW*F8^{&!5;z1=3yoZ1Pwruq!@0LNHyE8)=@7BwTfHW?88RT+(!60{zE0?Y%O1$j? z5&Pqjp;0UhgdX4lTj|?w8Ozfx<+UC_YPclO7`oX%hfFK5M+Jg}t{>(PJ}9Wx8hjrX zY&bYv2A@-M(JzaYQ?+m#e}{=hw!LqB7#tHOA+njzgoN+{$7CkZOUAf@TM8(GsJ_lT!YF@xHGuJCijVTc! zCRoENb+Qm50OVewF|ZNGG1(+_POqOsD7k>{G686AoQsbsc`ec5>+A0)!&o5nh_HWD z$XQ}4{ZjFWbXYpXxX_0!FDRz#|6HumgOQ}7+3qsdHCUd65aV*6KXpo2ml$+1S?SO4 zNj6_!Bu;W#Xe0L-;Lv(;iTbT(YAj<=yG4JI$Mm+1egr<^Y2}2Fc+57eKBfR*87Xh4 zQC7ZFJQZ8b9;_8Ayue*#7VnmPrFH`v-&;=40j@MX^P&itJ$p*u`>G`-ov6@jBcUH; zH75QjV-^|nAqi4kU>7!IP4QKI541lujm~x_Hry-c+BIMoic~0B=LP;R#1S}q`}2Py zL+$?|GO+wRGRXZvtq7iDW0BX(1=0YV3z*=P$`UR)siHN}Dhx^C{CHP1hf)}b2 zS>lL&-Qr{HM<;sKx!Dq8&tZx3`I#v!;j5a4!FMA@HIt{a;Li?kYr@AB+X5WuT?oNT z?F!BNg_iix>X|4cjCF8~`v(%5j=)!&&c}~$Wu?oax)8S;Fj@M}Ar8&HIZ~GDz{T|! zZJt$}#Rj=_zwmU4!U9lf1zw!4~jTKzS=LUMCjw$D#-< zP6`QEC@&c};q0bsNByP!oh7RMwt$=HXQZX9N3f@NmWK$Rj91+Hyu!X$&xAFqsI2@y;>6IRepB3KQ;$Byh|$Q!S1WAef1{2EXf_>j?MmGOEd?DB zrNamvuoea0{zb~g;X7S3q}{G#T=`|>%u28ND*jVemzT7j#an~?%ttfaesL(=2Z zY$yy~1@fLOLE%jO0UNo&)|(Bu?RKL>Y~tLo4-JPr$5qD8)rA!JR!dtvt_KD14J>S) zf~l(^7M-eeMF?@BBGp)FN#fvr(ehS#P)*|3{#8Qqf)Ik=`q)Bihl~>HV+Q|uEUcCq z4VB>h2nasQML;B=Mz5NF!^k47@gB#Dd+(h6Go~FB#pLUWz<5MIHoOw7?a})O^vX3& zw-!gkpX2-Jm?J(=bIpj_Ey~=fKd|2a5OMB%LxC_q4?FYc`~N56{$mT_-vmseyr%V> z%+Eq54SO3Nx|gMWx^_v=hRz8F#JwH?5rM#8RW!maj5Abnr^-`P!Y>L0!TrEwt(W|W zYtj}f*$5_9&f`zFtm8}9_s`+vY7sr4Xp|(-Tys!E)`m?llVq3xsI0&$@(&M1ApI2V zo92!Sn`UjVHFPlYnHYnSL9N6|_ox|~ej6f|I>Ro$noH9b#~_E}OmvLUo~DvKU3n~U zRZ0nJ(ln^jqGvH00!YDmpQwl^#3{5Hnsgz+d#Kf>%P`_y+n-~#Vz8wa?#Rv(SLvZ>|WkH>0Ynt&wEh zgc1@*l?)aqB_LxkB%SG*8!N5N=lt_XU~-y*zn&u>c`+jY7GPoeiI2P`%-TvKE;s>p zjFAbomiWv;H8W)cmkJ(M@GU>+B#vEkgG&ChXTYVI$s*Lk*q2!=8|q11?2gY75o#|0 z&Ou!ESB3xYpAHT}9cMfoU$+OV7~xU9SdFr;f8t5=5l8~fdUi2g1=joh6VD??W10Zoe#t)3`Ac5)sg~( zko%3^ecpLltAK}jg`&>JM;Z4SuEtxRpU=b60W?2%OUD(r@zh zrSfuo!8{f7tqvsm*QPnwE5quFaRpFJs>&?%ml4s}z%{i5+d?_?!!KLJ1F|lcla%4I zC=lGvgHmr;+AhVVVfTmwsWI}2pe>FKWyS_ZUYr}Qk&r?dTCw255p zLuAx-?U=7UaP4b5Tn^B8nQKC^2MPtN+9%R&F$@bbkH-;uEjETYv zg?ctGEg%^54O%TaTMrlvS8Q&Xr`&xjGE3&yIyDwakaqLu+*2CB(#2g}gZw+2zzC5N zjTipAiFeS3*;2S78xtq}xHYO>MFH>{E<}@N?ns1HjX0utsc_1N9&f$rI$zU^hB*A&w2=ilkcKlwP!>#8Ywp;(y`b63| ziY6tCweRK_hjwaOMCOKxCmOi0V2(D7*6TiaVjtw}k3V8r%$Hy9b;?_q`k-{m1crXl z4dm)1Dl`x^k*mp|moCHEGV>&$mPn&7OnXINPW@M2i7ntx%Z&iM z@Gwy-0M?o>ffgB;r!WjR0>R9(@bLMgfxMo7_L9D7OA2B3Iz*z?ZH9t9Jm9s@bW*ZO z1>wt{+wh5fQtA*cxA#ly{ag9xv`oEV7=RHtQY^t-%26?xJ<6Y3=xcC-&UigdK9`sy zRlMg!dhK`Owkwr@lXUW@w>}ipn%;5}|K_pgE2sWi2$ z%pAsW*qrBrFeTjoM9M^#h{1o6BUS$~1^$mN>%WPwe`Bk!$E>^^smzh>B)$> zcwr4Vz?5V^vyDY;xKn*o7Jl5~H3}Xl`m){%w^JyvVeK><(VWK{_Sg5_!Q3Od=-H^q z?xk@=3;d;2@~B#1mQ!+t0&?bVI#7pL*f%xPi-s<1r=cS*BeWGQRM=@UPyuwix&{Un zYI5kj3NZUn*b|8hjUbXHhLJC0G92BqM`9?baQf2lR@n>8b)@N*K_9XkNKmbjlTN>| zTZy-GOw;deYs{3#lBEo z0v0mwVvg&9MOoS|9IHV_f@I>uv{7`1b;1ndT`&tx4+Ad(7`7|4OMNnnJyvR`v^l1P z@vm}wXHGE~0tl{W_7aCd)u*7BV#qYC@O?tdKdXFc@5f?rutu&bZ;138k*hdfl#(|!%xnRaNNlC4Rgq<6ZY*JtzgyuHRM$& z$fMid@7SpuY#Cy54m5(|=5S7hdulByv`@vf<1@yE6`2OMK^um!!Cfp#M*bhwcR{+e zEyP7E7dIsEa7?FIs57RgNRz%KM!H>yofsgcPNeHaYffa-Bg#uyw073Cg5h-DTa{BJ zhCeAUWzI4ia`7JLrSLM(EOjWUNohyaPQ{Ewk?rNRagU{YS zg+o5zB~i!^s`dYSRR2v{dAUwzw?Vs)sqqvO`UcFQ5!c=5oJYqaWoTF9!vNo zPb@B`h&X>*OAfO@4>+>aaG9uqIBS829uutH_uR*y?~i|MEp#(;Z4k&xH+4uB6-hRe zz#d#n5^l&J5mESWgSKsxVH(M=0_Ls?6*#S37WSLfUPuQ}` zs{@lX&sLHZoO@)-gqkfHP~rbn6Qk@cMmG72N*KoY?CSuIGU%n~jxZI%8}H`ee;{8! zlrk+pv~_GBburwsq|(5fCXbjVvWaG3t!<)tQs+1a(Urbizv}O+dydO?Al^05X`0|5 zE%)`-!F2~9fe=;1n9%Sa^+A4CvBV0wKP9(WwxMLmBQU&ifC>0uwg~|Ks{EN~X8L_U zc#93Tk&4i)=axy zTYJl^=V;c()=aVRD?WhKz5ITuOX4Ic@N@IM>ghN>JsV_Pu@PRF{R+?O|RAkk@ z;kDN2EX8MxaM-MtJ)4rd4Eu|5%CeaHG4qyvk&0eVguAnpShj=;{Ko4BZ(Or$F1_9M zVFnJdFPRg^EfGvHhs|ae;@FyyXZ^%#_{=efcTi+6z01NO48X9Cp*;kvirqR#3m2z( zdoG>%`m6_^A@6^AT%_svlz+X=>i<2e|E}pBV>Hcw6rh5(5iFH2n}pI;;!Wm(sq=7E zsmZ|$1=UDI)Xi?ZG>VM|Ci<=_=CYASKo9b`ak$A2CIm*!OrPxVS6=BOm93n;&X3f@EJ6fDI{_J%BAnf zn4WF+ITap0Rc?Rp1 zWY-Yfwc~C#S7rch3H;D^?oQo}Ht9AMW!klgErgF2J5*)WZE-?9JV5BENhz8#DX@J5 z2K75^50Vx4qOSXU^SgdBv)>JQmOoP_M4nS3F_x>T@}2SmR)mdsRfEqIrO=k7o5Z~9 zpm=}3q8!s4V3RWhx-``Sa$9A+#+m!?*OHL3{KnQqIbTe{Pw zSuQ+}aQ{MnTkyyXM3}i)ny6d8uJ~+Af_>`vz9tP^3s@HS!+kv5UAUURLP^O#;V4K?R4!qh z9`$%;3K)9I0WrODtigozBX^&8{t_KKG6XaS)vH+DSkGn$J1zvd<1US`d6Uc}9+3I6 zK9U!qQ{eLE&-qqfL=N`hPCmfttbLJ=oT*^vPmyCn zGlKxF|9(ZALmYZ-B7^ORoSq?9dHcv8>=u+!W%ET@hc_`MqH%N?4l>EXy|5lG9`G{0 zk~Yq{6ma(ra%5Q>uF0=5dKmK4v}XoctI>q2E39fQbh6~<*Q9K?YUw{$n^!DhMF!B= zvIJ2=zdD;EH*f!#ElED&$tgEKLuaa}R##m1OOAYWOt-)xB(<|K!v4i+xxaksf}Z6k z;BEY9vV|Jv2%^`^Wb(nw3ug8EqR`_>$U>X4p)XIcVTHgy3DAp(9!t$=&Q8s2)}o9A zM-&v2>`2q}>~ae}geOK5;D~bL=z8rW8u+!D-eiEyfA%6$GL7k6x|thH5k=EWp~=C> zn!y)F;IKCXpEg`+o(xOX-|%Zh$%ksP7NSB>g-|%jIMk1oYE)w_sXT7B^ASW)zwTG({gYt^v)G5b<59^(at*wPNhC6)I4or1-6ucB<0C7#*Wx%9x27<${6 zogCu@^r!4HJtag_Lg$endTehh3S#)HVcn3fM-e<&Y%m6V_vdT=Y!4E44&1c#w6kB( zu^K#o(;T=o6LPsv?>Qbkk62*Kqkp&2KiOR-A?%njd?wEs20DOiLc`}tR7-Xp{zzYd zV~61&M_n|O>eDb*upK_u*Ym1A=(qWWw!yPwvXm}wBVhs`8-;uEDW@+8aR1H{$zkuH zjPbGj#bnZ!RHZMoyzfqf_(wovBj5hl0=ZQ|y3647j-|>CfYX()Q^0)>bhy*%juik) zFbt+#qi_(_M~2n@bo0JF%!f+P?phwZ1z~IaCT=)L5yAkI^SiUdntX=?a~^_DRXA`? zg|Cb{j=zv_=Q*l0_TcK_vwmoO7cT4?+WCO>Izt8zeo5QM_leBVjEYk2`$h+qXD-kR zKTJ&*bjkw`=K$&!tZ8^K7D)MwUt1NAGfsfa4T+}F9R34}6Db-8s@o^<_$8bh{DUyy zI^Y*o@>d=2iLqREUa@M)bdLZa(+LT6N+$gLIbY|dZwNQC0H6MB{R295@HFdDJmVlg zb&qvmOd?x>5eSSjzqc?o@|^YQb5HVo0c)T8NgL~fugD`r3EKjC5;ll5+cZkk0 z87+S%V0cw=rp=c&O7>6*-U0A+}aKPoIv0Kc#HMo28_cPbU0? zjr$wa4Cj&`7@wwV4YRDIEgynE)HRpCwd1>TKA~qKG&b;Mj7UYM$P-8jaCu%$ z;GI+sj9)I(C_^y5npE^Mll8&-e4(!|FOZmlGHC>JNg)Cl7qF-vLh$4f?OD*E_bW~H z4Gr?4PcYogAh>B(Wh|`Tpp3+!{^FxZm*Vqtrk-;ZM26hzA+`XT@FJ1+z`D8h;r@~k zxO?CgkATycq*Y6>{S(*bjc9qoqII$3-mR;l6JAe3~70xl6O9L z7H+5~cNiWgwoU1dILa8h#RikUSU)?(2uUVFc78CFBF!F-?0&S_%229<6i*@elCxt5 zD4S{?g{*$1BB~ z0dpwM=-;q&SgOZC07u0+4K<`4vvNu^*%e8XePPN9`Z zhKgbdI5vj?EL9$S#BAm8PIs=!`(vMY20~E))6$f$1|Vn6^Geo+NF8vDq-zGC1wdUo zGWjjX;G9+q;IHF~V38Fz|mn#@{47r{<19b>^D z5Nu`B)NSNdqj?7P^rA7O4MW9ck3z)<42xP)7>6K-k*c=PE^flG`SjE;CxrnKuOe;E zItkhVXj90gZ-#%>Y;z+k*Q9Btme!@YN56!sj~7(dGk+HswWw*}i(oa)l2`S^5H*Uh zqi+xK5I{Wt-tT~`rJ}@O$>snQ42Nn`*ZWKFUf(iUS}lJru+Hi}Fb#l0wgeCD+z9Nh z7IUw*=cLfN$8-zH+XZ!$-bbr`CfYsTDDn3`!6d5ic7Kg=-F;zdpMLY#Gq-9#G%~r0 zp67&86f2f5TQSG*n?{$^d#h*B3i;2dQCsuLks#H8mEKMR3{b2OzrhaSdAN8`8J#kC8=+T7qbup|BYs$wE?vy=3 zObIDK3TC!y>8CVMZO4m&(X02sD|F7Rtz3#D=DqmEJDb0qzz&pU-aMEonX}R-X~2 znE^Q9X6&RjaPViV4>xk|A*H$3Jp_@sd@&nyV+(noZ;iiKr+ z5svGYM3Lm!0#F?zF|Ib`blxIv$LEiq0bxBaN z)VrBZ2@PpG4AMJIqx_1nc_OAaMjQGgY5hI!Mq-OF2FGG;n~n^oL!kpO@J+^W6kF`S zjD)dNjmB#2Fr0<4_P@;B+qqm)Ww=OeCq4vNLz5+ih+-r6W^{1&q8l8q970p|#!7p9 zxrty}i6J@cf=G>t$fnn%T>5zIl#L1y46P;J2qZOIGydR?La-!ZW#)}mS-yo>f`#%P z(FLi_+mBGh<5CgmP0=Psc5UXNG9a`@3TUa;HEkti9*K-FmN(jvl(-#HYR^7bNDY0V zY2q;M(R*YS!?GNkyh9Q1pxV-zi>e<0+T-=QS7!(xOC4#d0MQxStr7;2SnVyg&NpG0 zzG^t(e+$9Q(3y2f>(STTc+oH$g{w>84xoHX;M#AFr=XRU*lR8koHt>UzM6CZpR|m% zQBI!Rb!sQgd|0s~=4dL3A#Oia7D90_gLVxgbsmwYyp3{6zRk3nMNAuenQ9maf9moW z&KrID5l{`i4!gcxai%28x8-os+QT89g;GD=K2u=61C-YqaXa!Qy(i|qrwg!hHnT%e z(e4flP53*0O+O}1N3Yf#@i;Or;o7QXqTZiBQ-f_Jd3_4O263y;#Z`vgVH-OeKIhjq zm!LdSelfvX`Gy`(v@LKu9H33~mB|2=hv(s)Gklfknoj}d3D44m+Z@2MJh>t7$%+qn zq$eBQ(VyUa2DDZA0(RXL-0}NP$~Bq3Za(gL1>e)-%s=+B_erIg@cnYO6T_I#GE=uD z)crCSz+}`ZGXb6mIHa z6XuymYuDP${ME74$Abp1jbck> za=zFmle*y}?nRUe9?K~Axjaee0h2T}kKGM-E{{PI$XPqI6Q{2MF>2(-J4`9SD5=DJ z7yq1h@-+>>^^wHsrOs&52Ud0)v7p6pMlR0!(yK4&cJg;Xj{j`i6_!$Dw9J~$g+A{v zL*ONF_mcHr0TQEfNzJ5Oxx3*DJ5r1@FsnhWhIgYv+>}E|A16Jpxw7^(^6$hlPbcjKeC~aqs;L_%aW8<;@#(|vOC|qwWE0C5h(WfHkF`Ae$I|)_ zYG;Ocxl9_w<2M%;dn2k+qIq8p8;-G&MMkOg_(d8g(}yw-E7Sr$YiOruhu?HIE|Q8p zSotNCms1fry0cc^%E{|-vPwc2%b$c-y}(DF#-yQ!8!&H&7X8x9<4 zVDck#m*N1vPmcgp7Mx}Zc{;t#i@jAmdL9yb<9f8eqV9+d;6v-?Qad)}3?WwQ74~(h z4^Oun?8-um(8`Gj(ZgTN@@=}_B^cEtYx@h9AQ>a2MW>bLdug;)_s3@B=yNGjSi;A{ zs%#MP>vPpmc+<$6Tdp|L`Jv%^4_q5(3&jCjf@lA7tFdY3u2ZY zdOj~27Wima6(AAgRLB!0qt*O8E0)B5LGF7cC}WbCC`Dz^Ei1w%_1ei(DuVj55Sfg? z>*fl3jyu8oW78ZB$?BK!FNlq_u3tg%alfny*V``|f@Oqrm^GFz-RK=x@%Et}3j)3^ z$(30)pQH=ugNn}P(gc@-7`&9hrROBy*Ayt7$rp642fsyn`MYAwb! z`97tF3tKWQ5_z@o8RUbV(-+4ReGl+dLp>f~psQ!C%2{6$(K)H9WJ5X^l_%4yqz z!YE}g93}M)ct&QKXg-rs`#s+h3RvqV(%0RLlHpxYaNh^>nD$>aQd?|+wE-1Lc=y5t)z@g zpGw_P4|`&?Y-@!#rHX+3*)0nnwae-)Nu$-t=F1%4pUKak|X0~*$m zG7vT|7BU4a?4N;ey%N7Vg(Dxyn?lbQt>)qML(D%3hkmytY+mifGdt8CJ@Gl`|zSS&wd z)cPX6@Fc0(oPycX8Pk@rzQblCT*)FQv@x-vdS+ps3tBlK#Cl{Vde)Nv)a>lnv@XWL z^qtGwoVtf+JJo;_VIOW@cyAiut~tm)IRALk6$(r4peo{Of-GTc7A*P_R7Nb5UMQCF zdLIk6M93}&iN{jVzF{JiUGrS;y{2+#bN4P2J->tNx4B4 z$|W=>)YfGRO4aLjnUdq44a}0IJ1C-hM8TKHPq0?|Lwn8>O*_UQWWUBW(Z#EQV77e# zGen_Z(M4*JV9FTg0LssXde;D&&zX^mhTu@#pJGyaY~e-(DYv_Ikg02Oz*ggT0GYJ> zC#VQT9&!OtA5Ba&b34Fj(8I!qOG%!q{f@9o9F1O%?TVC#14K?=8V1H8kV2mc*fIfq z0|@#;C$0R1&7gWHLjg?=?dfeJjz0?FD+0)3?D&>Q>&Ss%lYg(&|4IBf2(Y#leTmtp zIB*CrehD?amz}S|kfPC5z)YiQ6ub7Cxw&;TL+Y@|?GJ1m_u??R5x}ByNW*AAH zsI^6st5|6rPYaB|*r}?+{#d%VnCv%|Y0Ht|&QSDE@rD?>v3EZi-JrafN;lBXi z$9k9#89%Fk5&BR_v{t91hj5=$mlG^e)h*~YRar?vQ#C~_KJCzs_7aXR7mh9iv7XgN zGsV>XB{1;j8GGjtUp!qHI1xe3w0^b^E@FM>Sr3Gu*Z{}n;xB-KjtW&QTWUdnt!whnOvAwRjA6Y zF9n>oRS;FA;#_>;WIlZ6m|@FC-g)NR`(E0!grgkF7QZnkB<+ApRCt*8MFMK*Xv~H_ z%SUp5ShL=p#@p+TbpF*+0qlK$0{c;S!KmQ>2+YygFy`9~RsNFB$OE5qMz-f*0*|bH zL^LA{1`%gNQC8f~kkMb->pKtT!QtFu%gxwG=3{DVRk9(DP7kggb_nX1V2HM3;tppC z*bl`b?T`G@jbFM5;EBPs*i-M~6J=J3qRm*G9knTbnd+nLGvUMfFMFG6f^Lkm%NX@&`RR-84)GPu{!nJqPiIKfsj4oB({VK*C@XMIkI zLsbASTb303ew+guZ z<^0b%f|KeWtShAF=$I0bp}HHRzp6Ccw#EvMIcDs+a(qO2RncrSZnu0VKKzjeJ~+tY}hoWs>x6I3@B#(pm(`ZJ{Xx#+?wkzbZ; z5^=oYRGmSILKrqS#d7X^4`)lWYxqRwm1ya9Odn(b7j|{bOLkpG)lNmD0u}ZVg{4EA zfkEj{2odtST1aJC0SGpEZ~vQQqHS$&RulMq+7VQUQdSe{{87Tij;Z}aLxGR-*}$GI z$r`@SzAVawK27kjE<-dfk_$-I-ZEHuw{K0hze~0-ix)udgDdcR^3Jn%QT|CHqEoc( z3T46L9*Hf3N*WL29*QkR&Eg!3Eyh;L=6>L|?sITduqqwSnuXIkI*+Zf{^I_DVG-XB zDIJbprPyQmrLC>qp$|)7DjOqJSA5@yL}p?K^n$g|&%jaMcLe7vB*PIU>@(BCJEh5_ zJ873msJKNU3%ZeiSej9&{XlC4v4?Cg?k#T3(0z25c*gb{u;hjU8CAei!xrV#cAyG1 z)s}~bhQ=1P*Nsl;%dD0yQhd~IxqA8AVB?>g)ekMQs_VbZ3<`ENR7lLYYS&23YqxAv zS0x*jmt7%3p_|a$`#JQ$`xM2|xy;!*KwN=f-1(Cau3a3K& z%+97(SIEyTuBn(_lVf2mA;W_`MH4gcNCdBrVT!3$>okL&dtR1`Fd?9rF6)@56Te!5 zVbEZs{W^z-pTo5o`{J@dtlbCemE)QrK)yW`?blLXI;+_KjUNpzBUUBlW&?8A>+a04Aq`Skt0;WWUR&2ie3vHhbTqT$X#=Mn-oaK?mF``v*xs_xvMLaG*s(!2?56dYJ1m zV7cuR_ICi-u&*BQDNDU^N8z*aRXbg>U*u+dUeZusq&3KZ=}%V$h4c@7D0*@j_UlB} zha_0?%vASqvSAVkkmHmo@^tlRSu`N7pabqG0<$$m7xR*i!WKgS%}q$N#s}9Bt6-eK z9)Bdw9rdbSArkrTHlw~PF=O)8?%xkjf&f^POi{N-ZoA2-h!qrv3axph4rfgzIoLq+ z?P=IB1EvplRc%#M>oD1z5hoRJn0!_uZvxUy>P!mlYEcES1j7et8&JAze`hh~aSryF zZ_1gZR`{U+!&kW4MOAxnX!Efg>p@4UDhpY7A_S?on`=Q z5yZUdD&dP|{8UDhb9le=-cu3c(Bx-5U|aU9u*qGH83>j61a(~nPt zdfr{p*(b~r@4Fm4j(WNvK8(JPP1I&_y~27OK933u9ilJG^_F~moR{QGP+Y}FC#M44 zjV{R!DIQSL?(!`T45SbHZ+fT{qJErO(~+qG)D2)VsBMHgxG+l!-^qj)=ytWB zquax%T;x~cN#V|BBO;b<2#CQZO`i&+Z)XLQ6nMD<7*#*4|39R?Q?ThmR##O}VJtBI%&uepQeA2wVOD)s=iD2{k zb}97ww@R(wGZJ=>JO}30;}vv=?nQOM$_Xq|k1Kr{@qj$hXXBCy_Gxsv1H2+mib8TggUlqt&bqjc{R_PsslGW%`axcaD-?A zIG&_ExqHpn!_nr0^$3-(NvAbd4mlHWzE2?d<4>~D&*j0-w8G`DWun!`nXBE1p;uv!-=s>UE?{8FjlQyPNu2Dy!$M9C#qM-~D z8(bD$dp^$L`4dpY$j`n6|R)~ z<^$HTnF;4dK`)S02i2lL?a$`PN#Y8ErmoQdt5Tq8f@l2N9 ziU63~ocQdVb4eb`M?cNY^VMs^E5;ZItBf-$1(h@tn`s!cR=#%!EJ_m66`HT|`ix$i zW0aDGlyYJ}A@0L2adsrcEl3Utzi^Z-9Uf)4oUw+|#WsCmeEg*NTM#A;?moW`} zNmvS*KC!*UVGg5ZVx??wVrhj~KPV6@Y|vCHWpAUm%PCu8;Yor(Vhx05d(%Ibx{G8n z0fljqU!Id^wy9R%pvy^WQcfx}`aIhyXkA6QN48{XydrZ-S4>jhZJ2a!q3$+B6~yk- zf>TQ01c~*7pc{_M+R%b)9Q!>UjJT@1Y+4h1^h*P*hNK4ux1bfFCOxa{3$qo19bwCQ zA*Slj9Y7?|8PSB^HV3tecX1l<>0E1GnGSaBY;c@`SwO(+s2!7BRB@^OAMsM=$;p=> zPIMjgRP)L!K8Y@kBf&~aJUr#-WD1|swCX(YwolD6mXoh~jyW^_^8BYBY_5W|bc($* zHc!*_V!yZ~bfck+77o4YGqVk$_?S)TrnOP3WOOB?A)ZA_aB=U0Ixdz7Y?V2~&MGRK zY7P)eiAA%kJ}t$5hbgA2@wA7`fdU5?c0(`fbbso^cEpgiqgq$aZ1PXU=3{2Hf3PPxt^oeM>a zY_Rm-1S(>H(m_1o^@A;MJjIE2PGWWUK^ZDqG@{RTi?DHFd5|KlP!lx81a5GVK@5^f zl%^zc--b*XiK1tVuv+6{3)uN9=2M4~sEc-*T5|Yr3rgspdaVd$S`vdLV8UZ<8=#0$ zcGA0;;4oq7Sc}1H<>ffVdK+$$Ma7%rhT9pQ@6c*os8%?$gvEGOH~z#M;t3tZYsJbqxAn!@M6{Y9yt*&V zL3HMu+jO^8>+^B{+Ey*YIa7(&b&$g?9ez8ZCIPGN*3adg6dYQ#VUQ*@Bt;&>J6mEj z{gIMW9I83~gcncn|(2e5l^k;d|>)#+U50p;g; z#uCL|Rb&_Gz3)I!srGN?b zsGn!&$9m(;ZYyzd7|6xNhxvrFJ2^v|l!UhVp5eys0OxV`6Op}c#aur#ofmupm(3!0 zI#!7r-r4ij0(LyjP6ewjq`%`x!>g8Atqi5<3yngI_cR*kcfdWeUFyalOA=t`nM0qd zC<}dGFhNLt_s2rmJKIiVwK!iH+WO*+d%}B7Rc(xh9jo5{&O5JSxYKk)BsiYN3rOEB zcb;Wiz@0y+T#3%^ceE+;Kftz~a4}a$T~lmnsB$)?&H)LcQ$-47lDQ7?+l*k49XyvT zT70x&j_QGEA*qVMbW7F43P0Q=_anEBMQ#ZlTJ`t4H}(q$()6*m4F&f9){_L?Xq{Ts zLynlP!Jwol+Y^?{F4-f(8f52Hki;hz;bNTi>^GAeG=Sh5}3r@{njqhBYO>ti6Yjr+#AtC+t-@e zBo_t%kS;r6^=vm)?bjN5kT)>iC{gr?G#5SqcoeecopWyR0m^fsd!rG2fn^JR)+56` zpi9uV+&K@b;(D!CDzrUBYOM=2K+RZWCO<-BJu(TqBD|O%o_Uk8M{518!|T9D>+BbE zbu77sdl6@5bE!I?y#zI3Ii)?IFTYgwNR| z%U60{x8RBNBYRoZqGDWI)W(P=Bc<^M%%HR0Hp!qZ3*yBs-$-U?&c=j#Q`d5W-;xfo znAT#KWPb!}plU=@HMOxOacWF`#Re;pzYHtB@#Z80GI~Z58*`b1IjX{McwXu$ybZWta%~{0EXK9RYDsgB@G6O`7k~2~l zhT3#=W8zc|Qie`?qR{QEOEQCZM19T3(L^CVX>0vwbXAccEc%Vk;(pTs;Wi`Z?g^ZE z%C%jeowwq~!al8h>=t(KIqKGR#I^05rL!)hw!>wzCgT)xuer~KYn$cMoGn~>k7dRC z{cqB$)%tG$f68CK+O_{lAN>Ed7x~XR@4viy|7)MuDW+4ppAIQ7Iz2AwYocmnj zj`GOLLEx;$CX3qktiEun$qVwTu@rs94F?mFJKz-%Ec7Z@qi($Tw&<3)uwt}nTdn1f z>oHEWbcGWmNl=ikz0R~X3mXhd@S|hq#nyiN`JKzfTry3p0@g9uZ-k4 zo{-`e7I7Rb1zMTyJ_ONaoYt03s;tY(Lh_?Wi4MMMni`pQM3l?+pT`!~?-XCm!f5%t zU#dI6JUeW?jyvSWK*y?3ntPTzWu%%}?ILX7{|4pXHSXa8{47WRYeD*dR$CMNx8Mu~ zBTFL#N1OkHZ2ci;{2QOd8fuN$TqM@$&0HytvzE|ynXU_8NCCzV`2$a~tU3+2v|LSX zc#%ERL1+N^FRo>#7##e1;I4P3!`15h`EztOnE|2<`1pS4EKM!xS_BEls>!)~hTYj+ zUMIFM7^HzyMVw@++?^d=l2`ykE^^!10I}!95OK9avBUi0Qtd85A9SCTOOBO?gtKF{ z_MM;Xr5DT9-%RPi`h1YrxSBR+Y_m?8l8Yk&l7!`@cY5=b>Ri8ddV&chxjw+$t;HZ- zNf=Pgi*kOF6=PNzr6rZXr^gDlTNZH2pb=qts^6vR9$9)@*X|8CvZdUuZO-Z$J z6b<_Th=aVlv@Z&T@*5p7ZRqBLC}Iy9rxQmS*=tKrk$sCECZI7HY5%D_!&<@ZPXBfU z@SlA}1vlbZgJX{E8MfiOZVZ#X9f=v$v^`@C9t%C<8Wo^p`YhljMOahqf14lY8ueTx z{KWU47vTRdG5(LH-b-#=obU&cWt3;7Zy|}beT@$pX&O$+4=;oikn@M=UHrH#(X2eT zJ?{m8;hq!dtcU937q57S(&(Q7RoM-Zp8)4;Z+~^;`8$0erC2mJGVr?>KPYK{peCeY z2qC4hk=wYz0p?S?QTmIXmG4x{?xDh>`?@73x{%~(%#pBxMTR*k6$UX8i0a}Z0It;0_yShazsB+JH5p+Or!7`{Kx1Le6Slv!Jh2>ZpU$G<^G3S3L8<6 zoYG^cVw7Du2&0T6=Q*@t61lz6i(5=T+v~(!!5R%RtnHXVOvR}z0!!BUZw+W&RgwF@ z{@sp$l&$<;^;u6O+lMvp$Gn6 z0VUursh%Ql6JJ1KEbG%ok3#a5o6i6%N?m}~=I6(R!=P%(z~u<9COU-{7%>4PEttco z?9d}&)>10Z6*d0$XI@;cXu))bOI&Pmz}gm-e7?v?W1lac;WGv|C<_FOy{fIQ9#1q> z5?DBP>42L1ChBb9GAx?LSwI)+Lx<>@``mm6H>iw|6H6eaq|qE>w)7PSDh9Tk z2jG9nSelF&q|<&Pz5f3v(*MzNd&!QA1JNUK*ESlQn>Kbes-tR|3KfUb01G9Q;UTe7 zJ7II?3J;;D7NB$sKF|W=?)1UlODPdChZ!oWJtDXiT!5Upi1bEMIUOv>rSNQ$#3uy}|lEBs9b*zH% zwYs4n183@lGPJ}-xP$uE@aEj(@zo+ddt+2JY}(LzO@E8E&;-Sb8-VRYt)@W@njN2M z4nTY3z_F-=t8-`V8rq-Jy?=U>xxqDJ zPcX1`DK5t%&>Te`vs2O0=_NmOV+a)CIPE2|B@Nvj$T(;O4ew+H zdN8Sn4}+ON&*SuCT0|dfDrL!(JViDrj5IOCr8e$+xERMSo#7hO3@b|SPgu+xlGHKE z&ReAB#((!4+{Sojdha!#cshP&l57g-Frw9%f`CX`oCmVk`By9#I}Oo2e_|Q`kFjL> z=UZ3M#!27ONWjv}z~Wzq^hQ5~>Hk1wcj)YHCfvcL2)R^JD3M#0 zYO?UJVwwP>Mrf@r<9!9`@R^q`2=V6ND$ze9lxh*(?ro*sW-yvWeI8#|Z<86|R)c{i z3*|LrZMjzR zy5`(vwZa$+(DTZ@8^YIPKau$klC|0-e)DS#1HM-lJLc?Ld%~NMPTygghd~@$=d^+) zM048hxu*-*r4UCWT>wnH5wr6eS~Vl1ge&r6g4lOXA&++nkBSvz!=kHB1|`^NXQ5oD zZ~-ePXbmP7A!!IheebH$jiPg&T8m?zCzy4vH-Lpyb)=6b?vwZNMW#aBcsOG}jtW*X z7=c&PuEmf6ovU65xg)Zb2;=j_ujxm0# z@h2^C{?W#U;h)n&!pQBv3bX%LQpjn^{HPMSfi!rQtjNt9a}=#g0h_FG-;@pJDp<_K z%fSPl;jImUQR_HGU(}@3(;sqqb9l>6GXe6!d%aRxb&e<4UB18GKS9MhgoJh`56KkQ zqK7Fu(8#;RYOQ6n*WBR}yJrkBmX#{V3&^1HWm^)K=aLOB=a~c7j!UDl*%yj3kwj0c z!p5(GSg285Ms!C5fu{Qj3+hC7 zLiwty{=BiYaTJ%3Prq}uYvMK-brTaB-KoveGl0P0xY}&-j!!+9&SgNA_WxG9*r1S> z)J?3SH7%+o+0p)i49z6QG9$XWM)`$1A%TR2GZ)s52Dvx)Nm8DSr)07v_Ea2zG-)Q( zP~)u_>E-@Onn8=mWATzV#(sT|#zKqv`^;`Qos{+B`?0}M(@*L0tA^+v^hLVgvnY)} z$sxJ^IfL}Y*`oWVrRf{7_1gJ}Jo`70r%;y6^bn0hrRtOtS2{h`G+M_R?7@>wjh%lc zC(QDbbZr3Rcs)yI=55Leu{ON|pi#J6q*gdXBEr+oe~~+o=o0xVf06<2ACrOZpOZmW z&tA{c(#TT5MbFmu|2ZH2%UWUHx^y8i$vpg!Sbxw8k}Bucp9?{N$;@=1pkTY%$+UUZ zI^B!!Lyai!-`)y%%sexUkbvaAB$*yR_6iQu8SOeUJU;wb60Rh&S3yxmeEYtG-9NFkVoK`_{-NKA%~5d_R(XmuQMErm1OzK)a5hv_xT30ql$lj@?5k9LClqFoOUc%UM zoj^|wyQK=a&0Eq0b*nO%ePosQB>nOQ zzq*4L!+4epA)8Mz%ts?Hrt=c^9B6|dnjCu&ndqLONJJOj3l!%k)FkuaqiGW-EBN|G zM4};5oC=Ik>jHTheMB9)O|Sgc#UWMg*Rcc>tZS0S%o<-CKpaDWXOImOw8@i1BAs?n ztP!m~B6klZ>wP~g$qq#pK2(kPkb!^yH)3W#4Hrz}=OV-YN5l;MKPT$Hx^n>|OG|kp zYeOUZ|DCBn%vJ?VB_wYeB1?p%q~D^24an4khCePvm1}=ySsJa#sK+#@yB_N{diLT5 zE{Z^Oyh9kH_F20h1Ttq6X3>XXz3)WWd0brFAnEc)4WF+z9kPxye#)1-XWs5lU*(7$ z4d2{H_to3`Eym&wb(g#QvHRnMa?5Uc%o$ja!?yaejy&@+V?HoV)nu7Nh-frb@$7Q6l7M6H_lN)uzA8o&uXH^-OfrPa7AY^ciDIy9XVr|R`3T;!IpKC!HZ zKA49Q(Ne!~nwR* z$L?3xy8diyr=s=QLI9!VCV|e!kB>3Om{@gYu00vTqB1m_?n!A%?;;HSS$AtZ#qAea zFL#w#@0w(2Rg}#+2U7#tlPT0t;f(a;(<5o>HFgT8nl1WEX5W9?H&%vhO$DC967DMF z?n2?5S&3)qdzD{iAA<*>kh7VXg}XDIfM(j1LYd}@>(U_a0>Us!(|lGK#{&*Ue7cz2 zS>ng-$W^BMOkWv`BU_CpC1wB7YG$9+3%d3y;H64_h;-x{^e*y-sJc^{v`C?$qWi+j zEQ7|%kGo3<{g~2f6g~{{S$p&upmn6;?B2lXQE+MUqS?=#i^Wp-fHMZY#Bge(q@>um z5cF`#e7LEik#i1NhllBK)r%q*smYPK-g6!s)ZlP7Y)3}^7DvP@KNhVfKs@Iq@ zX*^&)l!7Ch-TMOVC9JsH?I|a_b>NqFZZQ7CFxZtH773$4mMYY0=98%M#tmy`wmF%ID(UI(c~SkJ`4<=WyJH) z?t$~=^`P&89+tZ0NNqwZX1X_QY1JiKw)vjK?3t=$bec--d|wy$b?uA0Y?GHA&9ff7 z)_TKHyBR3Gh;QFzI*b7Z%sZjllSO7t*uC@~HXrKVv)?4I)1@lcd!2aY;2Q@N(idFT zxjik6hOHs%2a;!MXhw>KkwYzpPEjnjHhI?`1C^-V24}U4s2+1Y{ZSfHlG0iwSnqam6=D^9LKiORjZJ4~^%YhX%sbZk zPlS85$CcAA;A?)4)t5k*eyD%X5~JOJ4H-xC5nDB&X~~IKvc7r$?X|Sd*aVuSvyo-> zrzb8|2VLY4nq(65Il+lVqjMpY*(Fz@{@{U(VW}PT2)kClVeaDJ`*#taqWc!j_&; zRC3Y)kJ?wRCR~vvaOSTv2I=^P8f3>qL(q?QT#*oMjF$&#v?9D%#&ULdCFkqT5Ayo3 zRt3>SQzttQu@Q1fVWv=8K%J_nj(s8jHW+h=Bd%s=F(a*R=fl6a-c@OU<5urGUc(rH z-J)5O5fMHBDVlhTc_Yj{o9L%hn_$$I6n5RdN*qf(dC_mA$vL}lEQ4-3q*NAE4w9JA zvWUUN80rUXK@cwH0bQkJ_6$~r^5P9fEtHsOf7e+;9ie=|DC>JTKKkfxuhf03C=>7O z&Vv@>`c;n$n$RX7>+_`B)x(*WDC(#&+LBmT@<9`1I$+{L7UAFGiy~i{1P9(Ed=!ux zrY*h`y6&%yyd&JUtd_?bke&dIeQNxG31$$Ob(ZvcIw*sUzcB>%ST6yxRe*WQFQSV9 zrk`pZaoA^JeG|-=S@8_3c?_fBl+`|jV9e234k(}pMG@ee2w|rv>wLopg7EtfkEwjT z9{5R?Z$mnRfwguCJ%7rXnS?pk5Oe_(;C4iVE(mtsx}7FBxq|8xDn#F5@(Db8#Lplu z=M<@Z*ZGIjrYi|$b8gZb>@ z{O_wr)GeA7MW_{;;vc%)Rl|lJ=~j}sneCQ{&k3Hcim_vl_~YAYv3k9D-n8WETV^^` zOFzq_t@ZHgr%e1+N~*r`F2HfIbP-B36JWS(_)sz5NJEnW_^BA8sB5lvC*43wK=7TI ztC!h9(^|eV!{kd|=@*<&f!b@dnG?b@hqV5HGxKu7%(1c9C+Ukq;TIe%s}FMk@BV87 zetk@$V$<(0%~{+5fx>4&Uk@%bHy2|(DuLW>- z9kDXj8@q3YS76qmJC}nF%jpVkVV(QwZs*$h@?zA0Li!|8%H$wh@fzZ~gws!~`&2rd z{{4x-haqlll=1h1osKvt>qv!>qE;jvL6mt6TSf`U2EqW+z7!?t^<+E?CkDsOqyTKp zQAY6HdcBO<$V8;t`O$*PyZ{YUQMTY7#2a!?X{YaIzaU~Z+!~V4XM*i+$bGZJ_At*@ z&4V^0faN%&=wn7#WjAj-vqDXjzT`evZ8ysaV*frZ`GX}o*6|l8)WS#AZ*J|GhVR5e zwQHzd+&))&8@KK<)v-GVaxQ6|VF~wmAAbyetVT8}nYdO5tUx`1UDRv7R27WeTqRF?%c+`jsbXT^hm|`EERFvb4z)zmeE1f~kIanaTF~6#VT`R6zsix% zM7OV6peUYvv;k_1LUXwguK~dUG%UhuC zFG|vm5NM4UadziTUfWlU<~G$R#aWhY{p#uu(xg!dFe>iw4TLeWmQd{&+TgBATD}aY zI1^tj+>@QB)I1)lrKeofFQUe+9*ikBYTnZl5Qs>l@gkTkC{H!k^Vz@MCiGC_k&rNp z%yIw}SnJr+e3~`y&}1YZPq&eIUNuX%HXeE8;pfz2Ni%Z)w<28X@Z4PT}r{% zGOqzW#2a5uQ3gH0zEq z&g(I5o)%PKEjREBi6~+~z-jGia|yy0!ys}a7P;$+4uK@os0n8lsw5cbrN)RwX3OV4 zvXRqzZ{;BqY#m6{20U^4kA%5odS$2vToR-+|OSQ zg{xnUTR}Xtr7BLWnOI!QD!C6`LI^yYtB`kG=*sPly>?Pgw~2lVSAaAkUoy(fmKa89VG=n^ev~2E-g)U>QQ+p6Dl8(~Tjz}!otH+3OffsV&#;k;uG|*}gk5Uv9 zKuOO#RI`j+GO@b_S9BCIfs0gj_(C`>(_!(atXo00N*TJULR77#bVU%Bx*3gEbp|YV z201gSNj}Gg6*QS$+x{_yEt z9)iK+;kJh9_QfOr7=K2`vX7Dxybjl!-qJq+17)iM1qvs^YJD8V&l5~HvCU?=5e)wU zfZ&Rj?}{WA!<%I&^zHUEH;os$O_-e70PYm_eoNEi;la8k5P81tar>TN%J}%j(}8<< z@CwJnH(;+$?FZ@A4oBI8j@QTNUE?1OTIbrrxOT(FqdeX1O4qv_@5w#7OvU3?W;ppd!$4J@a)m0r62LWOf) zY+qc*R(X~+SmFH@`7LIVH9JjO|I+dO+TiVtAAbBXef)SouI8D@;wiV?oixZAes}fM zaVLG(9-ie++8t#8-PjSjZ){!}i_sp&(Vq0ymbDMy35RW|SE`vPY+(tm0LvsDQ#)KN8rcl&T_o*z~my^KMrf>0(0FowE%&4luN4Y2^61fNTi z1IG+7c#~DV2+Wm`*7M^g&kV4KROv|j3Hn0kFhZz0t=t8Jn|thyB=v$uV}jcaNoor% zz4!a+s(ClQ=EMYs+bT}mnYHtr&FjKDBkvQ3u+OB0VNfS2mNAl6|2ORplSVY@je{pj zcP~15e|#N;%qWMaG=Zfst%)Zxfkf4an){DWn|WzLCAFtg*^9F9f=5A`&EY_+^3qLY z7L`TlfyWbmRf63{$(TIsq`1^-KNyHKUXECy>rsu!GYCu3v}?!m`#XeOC;WB1LkLA( zDIBX+ft-#e;$vv^WVXar@MXt0u>sTJ63|_YdXI!*55EA2tLhE%^e94;j$ z8n=6tJ>zRXsNKh#-3qShu5|RN>YWD1iP`Jhb2hD8`P;}{K%OL`9}qe*RK_A7+U@lh z#c^jB>sUu8Tj!Y%k&q*JXpVi{v&_9^^U`$j<(L>7U($Ut+IcG9=IsS%*eRQzRd!d+ z&`;)6gcAp!wI1Rox!&Y%7mzF~z>SI35KF+PM8j+}$7a~7yDJ`GbBjo1t9%VX_UajC zaji0vIE@diB87IFJX{`NM?a9mZV4@O@s4*%7Zzmf(BDtWUprx|^Wrxhpt>JmYS&R4 za>ymF^fYTHC z>RB6E{%>#GK*i60jm5ZO5m5Hj#d9ia8-$=)a08i?Er^9Q@)}Eh2}0#c#94RwQIfTc zT?9(^ucz3&n;#9{RM-f6YxDP~zvQBhtq2z4iY5X&ue0Q*Pn5#? z(H0bLZVZ<3yV%xt(eV)LM`$TV!d_5}FgT1eg{+t&(NbZbnaibEXX@IuHqMEe9z|`X zGn_8oZPqbZ0Y0)U72Z*d2pUi0nDA|-sq_)}`8opeGvM^(N_b>Wq%Ym#my;T-=$Y}g zf?fs*>P$OVO`^!TP?Vg8qUjyA#vlXV8vFx%PX->)%yO!je9EWOI*J~<-tkgFywC^j za)J%{xPF1PO_RI0!mPduaWY1Aof)2x5u_2XBB|7K^Szj=n7}1hV|98&-G5&&9DBao z-isP~ZLY|T(*TNK)K_uhyN+vId@)9S#0 z&PYKz8!NXvE+&)qCs1zdgCJrnXo_~m${?mfE(;q9h84lI(1pnandu2hufnb)m82_G zg{H?0Nfn$|Wr3=`p3waAT6*{+v)op-Nf^X09r@a7x~OXQ@@>3u8#|osTYJxFwGDoB zm)Z!Am=}QTT@lZy?2}I11)oMGgZ3|PhR$FJWVB%a=Uae$L%BhMq?J?&vfbZ21;Z?3D0gTSI2hkXc(IHmp&e7%v$mY z7QvJP;(6&5gtRS4Ws-nN!1OW&bZWzTgb`_+To<*Al2djNmoQ?ig>wB0xQIiox6^QC zfhs-9w!RfVD-4X86~T=rM9;)H#^SrxT>KJ8PLL&XEnz1SbV25TgkBoJJ$iNP0ozGS z@1X~xI&R8(1+qt>@_Rx{H<3yZmJ?{A@B0-Lg+M@>QQO?oxZ?f&H)m6IVG)Uut)w z`_Fa?XfN)}LR*dq(wl;wBlELFXn(f;DKh^Ei-~l|D9+<_V0tP(6fU6*>S{+95P~;d z>hmsB^?tOWezd;%fI5P2egk=7_n^rKq-hZKNAoLTQl<<6j);2KB)N8Hm(iLdN3dxL z9M`X!*&9EIdxG1XP+BOxI6|Y|8`okcNlGAvSG3*DSRNuVia81a+yJGyO3Sa%KO}_J z$5;mAOYwvlN5mS_ejvcK7|y*|Q>G)iDhwBe_Hv0Xj(?(tnD)r*t} z5`o&?;34Pw^FD6MDoCRCqYR=o*b|p28TzQS7uh~N4r@HMd@CDlL@(7eV--z~+560G zm2!G%Lo=R<`UTT|rH8ZoE1L8HtTVZSpKF=;-l6wn+7?0FnM=masIlNWo!D~W6 z3AomxP_CGaA|6+My|6rEXBIauoYK3S*_^gS23zN8Sh;^li6P#z-X5}1dy8kP4nF5* z!VXHK)M81{4if~6*J=*MnXI`W*Ir9{R%#FA=4bj|&%$-XS6@@@jYQTxv-JJ4JZ?_M zagkjTi01qRqdzRf%EgY}BQs#iL5|)<;~p{jVv~Mpw1X>q*(14C6?*5a)w-Qp;yJDM!UB%yy#8DE*5nkDY5%Y z*f!)TSWnhGmY3bnIkZL#-%tg7Z8+c@qxTJ@_y+X1XU?{=ZK7|Ne=`~4*BN$J<^9it z1$VZ+%MFhTfR9sR`EQ>`fKQgUa#(UmhUM%V`24_>+vpeI?6@TE4WFQCu`xEQuAXGe zWt^e6FgLRZ`^oAT3(aF4gk~6t7nEF|e?!9q>TFqKf1Kmz2jn~if zPpBvA7@AJhD!h*ZK8h;So#+Ax2oDm*SDnWfUQ=Di8Kd3bpO3(eD}KD_ZAJA#M*)}Y zlPP27yKK#ws>%*8CFZu9KtpgT%Cu$4cPP90SKd~=j8>(Lo>L7pqT40LoEtkyppQ_G zr!9l*0u~Lxe=K1bsAPuYl1k6r(v=EXUJ3bylg8%=jl<5NEb_whk+1Gl(XN(GTxkWY zYMzkn0OWao{IB=NWXTZAsP=L{X$hLlJTe^bG3*^?&Pgw}g zRuE@1S7rE>Fs6(fHO%ujIsW$0FtEqeD&(r6i%^u}2w^FV^+mnVdzbpAO|6XPw@l4c zSz%@>WMffzzaVDfIxsDeD|$JCl7u+iZ}R*e!CrQJn*o?tMs|p8Rcac05!A5nz-Ylp zdRXzvez~K29I9;N+|GoOk`M9LVsxEot#F{# z&J{;vD00lY^DE0UVmTLdjN}rbc1Y5gG76HaT5A)ZAtfnxn?u*^APjlZt(Nt{-IPs) zc+@R;=|LZ(u2j>!5MdY?63bsy z`XC9|XU|Xx`G$_AwvyLTW--=vT+yb7{T+zJR$%VFM6mj#w3uV*GSXDKQ4$?UIW0j} zzx!%ggyx<#9opL;si;YUr;k34p}*T7$c6Ce4)mCLcp#Nl)PlIrf&AMgQ#s7IBEvTvspK^m9MD0EX^&($dvG*#GF$ywfM;Si&M!O% z#;P2t64YkCBy)0jrBN|}2o3(YoBGno|Kt>P#KdHxwb+OZLrMGC#tj)JFe_|LqCVp)<|oam;+5dBVXF;u&sgv&KT zV_e)&YVw&A-M^AnkA;K9MPL^V*aPDgN5GzDiUo+G0 zOQG6g&XFOazBf_)MiZ;0(aL>#Ky*zM7#x| zdMoN@bF^3`!a>j&Bk)> zNz}RdxH|z(yM|50Ci0zdC{LV>@&c`_r6=gTF*v z#X62_B)9;pe>)%FV6b1vggkP=@C@kbd9l%D^oPDPM9IBf#?xcxo93MifVtaZeX{vx zI&uUoo4G)lz~uuV7bBC|qZ3~aos6137o_)!jWs4^NewXIjO|+Llvv}~(8#_X-m-<- zrEMW1SZi$!1|r%}kPr(Y#)-y~5}r9Che;ZR)eG81ZB6rn29l5$(eKJ*#j`f?(a)on zRr19WKuBMkiPaKZ*M<1?lKr}l0V7%kTwp*C)CTT_fUEeWr@s`)Cd1NK#_2OJ&GZ1P zE+BJul}E4GP903?vwz0zT>Td}2LqT2VzI~tRBHsq&Z%8fTfN)gg?QP+b^8!voLQE( z#^%gmc(~z^Y-m9@qV42 zM^y3t=<8b`H}_jY@4RB&6;+~9*H)rQ1lfSs`hdGV)DQJuyV#^JhGC2_sgJLycKKM0 zx!m7Aa68y;I4}Pe%5Yb&%M$+n^{et{?(jcLJMjP8M&n!7G9FjgI___qgOit;W)B>@D zUQ)4z?)~)-(zOIN!9RXswEqBk{ma%|rcnvt4jk;?*4B2`^}f}9tu%T3{eGelFyo5} zv6MN2*%sd!9JMFc#JGs40&Z*kAU07jh40$>Hwyf@U>fjPFQoV2FQn)`-^r%p z#`RBft%9rHvGDhNbw%?Yb9sHWu|)GQ+d*i=R2ZDn4qa#A!5RUmKn3+-^kjjr=oSsm zr`s0kVg}@(LQjX$PWRL18S_nwJtjOyp&W+6gaaR|!Pd$Kr39G_y#h^?OoF6(oq?LH zQ+H%>IKJmW0^bQI3Y^6qAvfou;L1&cgd5F3p0_HDxWlCXH8$tm+g-#Y1tfGK(9107F(6n#gP2U;p&a4U5Fs#5-q+wcG$1$6cZM9f8f$C>2Yw4O-qrx>@R9u0k9<3d@4-7 zmFhiiSWp{{xn0R=dLXx}NstN&OSLZ@*-%gG{f!H!C@wFrFym;_wLrJ1twOLu6|c4! zr>evsw3qi}G)jDHAQ#c;8p%Z74Iqak!Z=<+SHdTzg;y8*DM{3d%3HkV4?!Qq+Uh(e z6g`{eks#vaA*-MU0DVPb&c|r!u0O8Txt1U{J)rj5)IMp|YoQ^|Ql+z}0-iC|oAP{g|FaH6i3?sa3V%-{3PpXmo%cMvK~SQwq;`{h|WCDG96Awi^K_GZ{Mz z(t$gCed7U==}p541m?twQ8Zt2Y^-%@Hh=iCzZbbNT45(~eE`8hX!L2K zDY*lrsZR!Vd5}_bl2yL-7(8GCa+~Rre366G@Yk;;T{9QlPCJ}3-lDIak-nc)DV=s) zGc_tU*zzLXZ@Oc>(%VlaaIrhoy`DSYZu4nV{LWk?(9D^KQk;!m|EQ9@QYV=;H@%8A z6A(MnGG8x-k^t)#2jpf{Bh~Y6i8!0G<5>Jvv;Q$sb+Ehq)j3UNn}Mf&ttzMO62pAB zI>#D-9A??B#Tx)xqJOARPeJ1ykVP}D1@pDpcgeTWP=S2*JhTg5spF*J=GQjMtwp5; zc={~hh#Vz)J#7y3B~CVe6?}QwIt}5XHs2c-MaOOwu?6KQ#zPn2^K5nz!Gk$&C&u%9 z9pClc?6b!SIIR8hzC;T6s}W=VvV1`D%`E~C4lN4Kmd|N*$gAyp65vyY5E0Y%(CpWh zZ3(44z`DY2nkWEhd%o3Wsi_D+wDX|3zD;hGfkeq)!VEN+ZhuoL!!8mQACkNU!GWt< zm+p@a%dO+Z!4H7UhIo=-tA=)LrxpI|Ym*I}9ZS@2o{->LM2}iX?hl@U^VA!?6{F*K zx`<(;fx#2-sIddnj28U8tA2XPnSAprZv>sfB8=IHYCEljB>5MP;}=S>?Z0QQ-yq#! zkomjOi2J#ZBGCc7{H|OJLo+x!Iz0-6o4Xbxk)7yiv^}R$+C6KE4-{E) zw%F57!}7I?2Nc>A{wW_xehxa`wF#+G6QLto>|W(2<<|VX`?i0-a0`ZkK3x7TR|*K> zM8Dxg&$Tno?aPgJM{I-MT6qTJEHlP$4?dsRL0(^P4^uw4Vsd*U^XBMym?;@*x=vt* zAKM8lW62VGZuk`J|K7uXc-Rp-%$sf&uRkQ6lwd4 zv$8$1l|Nh`0A_<72?jI;? zo5r^0KRhw9J*zhMBm8Wo#8dueql@Ne*JES&*b`3PXmz*t5P){hrDv}4wY@FKT4iaO zetAW-W%`i&YT;+frs@X?Meb=Ko;NcDdfF4*^=dm9+^V^fI-ibPzFd@=_dKsta?A9+ zID@|;ga2CKnqr?9F5~FXCzJ7b-B6$Ra!$hncO)Ajew>MNM}4cqsbG`7fP@J6T+>eYWe zc5~gmfS|DFVBQzpQ!BWPUvX^x+rvCuAR}SZ^JAC-bN>0<7azAX~s5|h3+ii392Xgt<%ys>73)rz2 zM6oj~>ZoQr0TQ9Vg$X>_xH`ZP0tl!(!WAZ<1%n^I2GUROD) zpCAw29~J_+8NeS}4ZF*6F$+%tPhJ&=)GkJXucX*wkh!FUrL432&b`j=(vRFvZkv1q zzugs8O}_7zTwXW2>V5x)^3e2_8sa9S2w;*>89T}qFzK;V67*9 z@dY&Ho_U%RQPN~al7L0(+c}Lcp*b~cI-PSgE#VgZFX+_|hiN8q=a8$5id1UB-X@CV zoY+X4EKG7+7xrlB2sZK$X#2t}tw=`Vx<$ld&Q3KSWuDwTd3dlJ3Oy7fNn%hC0F@S2 z8qOYn=>BfI+?P(lxIgg$1Xeqj5y6ue#N-zz70+6HT>U~;7CFSjFdqWF!C^Hopb>HB zTcOaM>`SF%YP5sC0jbfBjwdI>tdz@lt7@%weWpASLqQt;jlWm#<~$ zC>kzwgt%$r`G*5`L9d=ZQg0tAw;${sbJv%N4$D+!OBTJv+seQS4sxrYs8sA{}}t?}+xp<6_AQPB{lyjJcIfm4=J+4mj?SM0y9 zdWL);WOM+gM_-spKA;_atLp>8E{@HiL5!qK`e02UDe?Rm6+BO`txYn?sDb#s%5n>< z-vraelU3$CY=%X~7BKg%&97YwQYU0;le$9Byfue>rf$1%<*1bPog~rw%O4W?u1*>= zclQpIgC9Ncf2K;P4z|=dmsBN0a?Cf(KyYeE-p|nKku}H5#)!*Wy2nU+uO3^6F38o1 z`Sx56#x*d%wyAHZz$1}lS1hfYC}Q8(swequ^q*y4c~3=)-$r1&!~pR_xOnch=C&^q~;p<2qyFsxuLu{ScA$Ad|bYNA@QD6Y_fT z@lNvk4L#rYD%aDY$!U@vapkO14E4Tuw@(lc zSWiXqTvE2f`<|s-+jesqf;OE%dsZm_&;j+XAc6Dm=vjWSwSF>q2x)}+^GiA#t?(>4 zNL?F#LEUk)^b!n*Dlukt!uv?=!3C@Mw~2GF*`ftQlr`NYb%*e%w3mI?F5q)6je9`n zpc}=t8@Y?~F#6eH%P&GIZ=>JMtog+*se1L~5Y+IJwpipui(jUH^inM)v&Ak?Hi_>T zZ@8=C+iS{O{v2Kh(!<}qUOP^DfV%wxbKJ?5?+E5c?+>|O;F%2#YpJ(~$h2GWF*GOW zCx|rh*1;XVr{;_Z1?u=a%kO*U9ufN@a0!pm9^w@)GXHUA?v&sg+1}n>%I1OW@=94o z)>y=VAr53+jqKu7Z2i|KQQMAc`U4F(qs zdMTRI&nEK5m@zMHx`6d(mg@bkk}GD?^K$lZnjaY>iaHINNo)^AqSfcmCO2t|6unZs zO(e(cCKN|E+9lEN^pr@d#pXJRQ{ZR)q)MO5!P(PC&XuO0nbX%iAy41Jb#+W8WpV+`FkE zV)6cunpU%v_0O-jdG}~vJybVrBq-OoDScd4>$x$!{zzHMy<4_NTW=mqi8505Jx#J5 zuKXG|V}JtD{sVW)_1Qjef79C~NdfwPU1EM|Dm9Er&MNmagFNrX5O;EHE1x)}Vnw#P zI#Oe1Iy!cAh+0aqzw}ffEs4Omg>i1s#(94c&DzV2pKtsSwz^)zvPvQ{ty1km@woBu z@n@RD!O786EBIG=E6OVmY&dkjqh!$XNN;E~A+ua07;T=UXT}|i2;yNj!IjB5Sj7_D zM=@8r;T$|IJg!;S;*ILqM74`bWBFBhR7uhvu>UWIa z>+JRS?imHw{F2$A&x&@zGEVEs6C_+Dl4xJYnudVUiukDvCd!SBz zazRkbmh?)z$vUpdx(P>yWgUOTQ(ax~Z%>O8VRDHd zZo<}TNQK6`i!Rfyo@ajdLQ*NxFJd{*km^P=d)=bi;kxgEJ=}ELWarBRVQZ|F0mcwb z$43PfeFGZ;>^~NM{QP!6jH0mr3`j}_j_j3`(4!|M=rEZyqzcI1eG1f9E{RJAY)uUko7NQ2L}d;X|$q3W}4uA}=GPr!aMu9Bl~syoUfMNJN}_-_n|RKWojf3sW$gXe^weQvh(*hj)}TzFlf}Xq+>{R zOSWccXvp*0JZ$Xs;G+yFD$8`Cl?W162bS!VJ3@bvO_%&XnYx3B8OZJ!q`Q zJi$V~AXsivSJQ$0V@~6F4?XS@iC=55DH^(MDfX5}p}%JIfSoWj+~Tw19hdVFm2x77 zT(oi8yYCiOpSCN8*_t=O62$rnsYTBXnF(JFyE7>ryqz@tDlD?OnVVP2!X2_H9~Uhiu9l@g z8YU?eA8USYCf5nx7%O#j_Fm6J(i*&(7^MaIg5%8$l78;BybTirfrXXJGkm(9>_23Uk80+B`jVIO2*1tS zaF8(%G3>o8w11@A?wl5nbzrJ0iL`v!Su4W#K?;{yjEA(PUpH0-r(HY65S6x0=wC%e z?ByO6D;Z+zD($;Q$#D1`vsblQ0Y&cC*$%p^LXd%aH`( zn8D(%!mWCF-eyFOgX6dz&RG51j`$CWjMIeA4Liil9md=|n~T-#vv2bqb-L(KR+~Zp z?LB!+=CF;ngW2gjlT^3gR)=yje0xt{RhHW=@t8Vvz_!>sKDF=rSNqm!cd{|6sXE^U z=Nd_wj*tu1>vc0#5vt1v*D@>Dqo3VfyqPs#GpO+_IqyxT;9HN%5zXfT&yqVYwS9Td z*&``D|BdN7Pg={8u>Yv>?c=kJ6uPSJ>2kqa5O4EkSq(p1qDW%>aw<*uaZQWHt|;*? z;u+@xt78$tz1KHcd|H%n87T^NO*5n0qAypg+*%X8&N}f!2LdzXNC*pjP0RUN3{Fo+ z)%WGuI*-x$ksGG>jhO}R_smD$ZAh=>RemE38(h6l@x-a`yO#eaLW>hQYj|`st&^V< z`=X-~3I-{LP8@aA>-Z$LHetP(T%dHkud#)Xv$R%|rGA>0{iVFzOFoY@f3g;@{E2Cj z6#aI|c*4!-mBdp4$z8BV`!{3d@c5Y5wfH8vW`-a~9QqwAy`sMe4v8K!v$QxqzCA-j z9SKpDybz0XjxM)f^qY@GDdh?QdsM}>DEiVPk4{?B9Kz0BK3+?@T4qCh*5a7Z_EYrUZlGh})DeVeR^o0-_7sahvR zE~KQ!C`C!xxt~fqvrk&gl+B>?J}~tb=tI^W z=0DgIXTz*lpv0Htn?=h+%L2-}1ll{xwq*{hP=APaNL#GY82Ik}nM4dO-frXe2G`|_ zS0YsG7WHwc%2%K-VwEdw9=<##B>Dh))J<}rhjfwY6yro&qt|u( zl`5%BW8-M^R7;Ms6P1GJ7NCuLw%dalyf&^Ox}HNmC-!^ zK1^_Fg z&?@1XPxLPspRG1uX$l+5s*b1Jimn)X8N|L^k~vWGNc>WPsLGMhE@2)2(T?}S&THW$ zS#KV5K7GKc5IvI>Fac*UAIZ|oPvD=;eoHeb(Y&EJM%P%Au(&02{rI&=Mvu*uhKOeZ zY_cqjLR>>r*t>zdHD}Z8|(T@<5zgm7_r1Le+fxX5!b+DmOUp z=zYRTn|72hKkQB1;z7Vk^Gem^w7@cs>0J#0?RagCmDiNhRQ*$rXeO%9F*DTL4*%fT zFQ<5~ViB(^o^5Jy;%0gup1N9UgQ;HK?O4Ydw%q$O2bXkHueYpmx7w2Bn1nhkt~xg9 z6gAln%73EFW(knnZq5ISCu_>K>ZLldKUC({TFrpZ_Ql$4G51_isCcX=t`Wy;UUofE z;^4HA@657FYp?VDUH1VGhrtJq@UVlzt)Wl^zd0P9 zAKMV|T97Ot-N%gvCZOK;Di$yB+okeY|9uMWYAKwZY-OL`@V+ICy*!p$^xon2ZFP39 z+&jT_H$J2n2`AU<+6fLw7tV7LeolMQVDZgH>?RSZMW#-8VT4PR!gs628;)D&1HRkV z!AV|9pD5FJadQ1s&-~#VUj&srEQr$Vn6p7UG0AXwx7KWKm4$)3jLq1+(619)maex( zm#f4s5h#;g9pt7okUW&@@+!~qE-#`hDDSG#!GqoguSjTFU5KEQm&{JkhIQ4MtA2KL z;|hPQ&zrm9meduwIP4i$I@QoA#z(NtC=@e&TjnbV{yZT(v#lm$O4l@y${>)_?B>hN zV*-~ZiRNqH+!s4@-L6X*u4m**M!*Px5)=+Q*H%>b9EEu z*PHsyZ+?p)UHBgKA>v+&X@p=^C4(=;tM?4Kw9`GL3q2xE$3z0%rKR6Ur>+ipexoM& z%6D~CXOU(8=nabXEB5RIp=F$96f5PUCdPwx^fa%HH_wmMAr}b?+D@;`gR?g*z>b{@ z>bQ86IAGfjD35DUmkEJ0{VrrUTk^=qbIOhx>i9-PXA*%_PQ~4p!KtLYY zL5cjIe+wsg`djUsyr!y(vi2qZb1FMu?1HvF3BK0-U63!n1D=1aR_?6RhE|98PZbc5)V&DH%73P=V7y7O7FV8}@@tfe$$q4XY zGQk-f$YU@66&CQ9U#9-m#`0GjT@gw!h@GR=pPv%^lHwoCr}7=t6~F>^!M4DjWo)qD zhXbO+23&g+H9!aID6UDI)Qh0f8-Swz#{o||z*sv`8jeH94(su5EaRLN0syMU2MRzhTxHww5K;du&$nPVy(8aL~D1iF{Gvxv^F`$U^7)ZAh z^>2=j&E)4uYK4WsIRZ6cLpW;tdDCEL31ZeUhs61e5fDs#mtY&mvBI!4pJ|qXbunNS z>|$jBov|qS`z%3pgB5AMo(Kl4d%IYfOjudJPpjL-+UBXz1RP3WG*shXWx>i4#cVHp z=e3GZjB=5&V`Yh9W+|284+jF){ardvb6{nOV`gb7GpODIEM!ol>R8Q%l_i0hRT5Fu zW&l{iyI4UySXq*oS#-8S4p%|&cuL{m0EgO9_(2wh*(WfQEX`vTkz;HL=vRPBJIcK3 zAJUEiM&29&y9z}{lQwcYEVf`uT?_ki84x8wFae|QC?_@kn~GV|u$u{^Ho$gJ;BTms zzCDkDsqAhJbwYqq5h<)91P;YajZXeJ(SvLe&?B+#kP`A!~GWtXNmtx4n;ZPSWmOB&fn?eKR z>I5GU5jzUIB{mXhUlj<<4r-z7;)2b7qXQQ$%7N|jLAr*_^8S@LtKD2hM|&rT3k?1X z?COHWZ!G3d2_O@`I`CosM+8q9w!5KVBtw8hnjzq%NX%B`vU>A15mc@OA379Vu-$GP zcJIS~`@t{+xH1DsGf_J%m_23=_R#PV>8TL{cIyXrLsjuI95V~q6j&`5PW9kQFHlVf zG%uUO?4*AYWxdX@X9V zy?B@#v>=i##2rXy52Ry8p(XfWrtR6Gj#GHl@Pbs<8ua$4*@?-mJ#d(1`|6T#dKk~nndW20X>@mL;DV0+6OfM^MOECpXgEbX2poO^g0Mz1 z6&=Buh{%)6cVlmrDD%}RZhVUaI6`1WCKRmx12inu-Q3RA0&2nU-dE+VAC+p)uk1;0#S{N^>q4c|Qi65%6I~ku9Pejic@80yYn^p`68uuBry_>(|ym zO>$sES`=Jp1xDO%7e>0s8H>zrWV($Dv_l=yq^i*|2#A9P#N}sV@t-YW5Zp-q9rW<0 zz{~`-C63jiaew+82;!fSw^!>n!N1N%0abzT;xM78Y~6~9i9L9cnk!~_&K&}pH-Qfe z3QeUA0}XU9*gJb9ueLXA@j2j}+{Mdm$H3dug2-w9?0fy>4ZyPoJXF6c>ph+Vk;mwVwbOdXN9l({OR zV$d`5fFTWa)JW^z1BY2vyhp7ACkb$HzLTOmNa`RuOwrL5xkK;gaS51ddi7>B5TKP`Zml)J0!u7a~rtF6fhhc3fb^8 zI{CM?Kx83@Fic4g(nH`plqp7_39f^Nl|mt&n*R^t?-wAAvHREW=r+mT_e8oCxqdR2?7f;_SKVhJ>BY9W4q6 z`niK>LY-si;NhYP1tJvT3fF)+V3_wHS$Q?-)d|3(2>}mvgcLY{&O#1lXa891Km2;c zTB?l?$Y%y}Qq;u)27>>EyW8uK(q@m!n0Vwp}$moW<1vI-DUeeV|eUNj7Am`LHwO%L)_0^HIr z9E5T&oDgQ))%U|smjK+>E}S*>UN|g6+bI9+f3fpi?u6hBReVPO=h zY(3M5&*1=~Mxl+I(8FJurz$OITsnEyEm zcv_|33x{Ea6p5pdZD`B_(iQEJj*(?A9EL?wB<{Fdm?|GYA=i^or8~m57Y@TZDH7*7 z(d-YrA14)jP;p@#d*LuFl_GH!A5N!n1L=@!`%Ead`^32i4vX8}rf1d)2DF}CGziZg zG%Q{hClS_!bQ9#2P^hv=oY;eg#p&)*byy;OxOf+hQeY1n7N5()o8t%qw31!41;IUN zSX}P)zB><)%OSD5XiXrc#~Q9!JdWyROd?V?!R(^L7{`CNi_m`m4cOJwpghEe-?@9l;M6v7A z33U9h%^A^L&VUH zu=6khRG+Q~nI8rt{1qFs8Fu~*j~PX1VUU&Y=Aj)(uv0wbzKfk3=$TM(su_Q9*ni1~ zPTRRr40Vn-nu|vJm*MT!6S=c&=T0K97P6x#72~4qGrOR^A50u@aNNK@8{iubrC@Bp F`9DH82$KK+ literal 0 HcmV?d00001 diff --git a/its/maven-core-integration-tests/src/test/resources/it0059/test-repo/test/test/3.8.1/test-3.8.1.pom b/its/maven-core-integration-tests/src/test/resources/it0059/test-repo/test/test/3.8.1/test-3.8.1.pom new file mode 100644 index 0000000000..a98d3d32c9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0059/test-repo/test/test/3.8.1/test-3.8.1.pom @@ -0,0 +1,5 @@ + + junit + junit + 3.8.1 + diff --git a/its/maven-core-integration-tests/src/test/resources/it0060/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0060/pom.xml new file mode 100644 index 0000000000..9fc28d4b8b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0060/pom.xml @@ -0,0 +1,39 @@ + + 4.0.0 + Maven Integration Test :: it0060 + org.apache.maven.its.it0060 + maven-it-it0060 + Test aggregation of list configuration items when using + 'combine.children=append' attribute. Specifically, merge the list of + excludes for the testCompile mojo. + pom + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + subproject + + + + + + org.apache.maven.plugins + maven-compiler-plugin + true + + + **/PersonTwoTest.java + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0060/subproject/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/pom.xml new file mode 100644 index 0000000000..e273b772b1 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/pom.xml @@ -0,0 +1,24 @@ + + 4.0.0 + + org.apache.maven.its.it0060 + maven-it-it0060 + 1.0 + + subproject + jar + 1.0 + + + + org.apache.maven.plugins + maven-compiler-plugin + + + **/PersonThreeTest.java + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/java/org/apache/maven/it0060/Person.java b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/java/org/apache/maven/it0060/Person.java new file mode 100644 index 0000000000..f8d5a932ca --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/java/org/apache/maven/it0060/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0060; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/resources/it0060.properties b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/resources/it0060.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/main/resources/it0060.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTest.java new file mode 100644 index 0000000000..fcce1be311 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0060; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonThreeTest.java b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonThreeTest.java new file mode 100644 index 0000000000..bfaf68277c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonThreeTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0060; + +import junit.framework.TestCase; + +public class PersonThreeTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTwoTest.java b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTwoTest.java new file mode 100644 index 0000000000..9492f599f8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0060/subproject/src/test/java/org/apache/maven/it0060/PersonTwoTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0060; + +import junit.framework.TestCase; + +public class PersonTwoTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0061/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0061/pom.xml new file mode 100644 index 0000000000..a1bc6d02a2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0061/pom.xml @@ -0,0 +1,29 @@ + + 4.0.0 + Maven Integration Test :: it0061 + org.apache.maven.its.it0061 + maven-it-it0061 + Verify that deployment of artifacts to a legacy-layout repository + results in a groupId directory of 'the.full.group.id' instead of + 'the/full/group/id'. + jar + 1.0 + + + + test + file:target/test-repo + legacy + + + + + + junit + junit + 3.8.1 + jar + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0061/src/main/java/org/apache/maven/it0061/Person.java b/its/maven-core-integration-tests/src/test/resources/it0061/src/main/java/org/apache/maven/it0061/Person.java new file mode 100644 index 0000000000..613e499ae0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0061/src/main/java/org/apache/maven/it0061/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0061/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0061/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0061/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0062/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0062/pom.xml new file mode 100644 index 0000000000..d1d61e118b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0062/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + Maven Integration Test :: it0062 + org.apache.maven.its.it0062 + maven-it-it0062 + Test that a deployment of a snapshot falls back to a non-snapshot repository if no snapshot repository is + specified. + 1.0-SNAPSHOT + + + repo + file://localhost/${project.basedir}/target/test-repo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0062/src/main/java/org/apache/maven/it0062/Person.java b/its/maven-core-integration-tests/src/test/resources/it0062/src/main/java/org/apache/maven/it0062/Person.java new file mode 100644 index 0000000000..d34f37e5b8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0062/src/main/java/org/apache/maven/it0062/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0062; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0063/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0063/pom.xml new file mode 100644 index 0000000000..4bc9cfa071 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0063/pom.xml @@ -0,0 +1,38 @@ + + 4.0.0 + Maven Integration Test :: it0063 + org.apache.maven.its.it0063 + maven-it-it0063 + Test the use of a system scoped dependency to tools.jar. + jar + 1.0 + + + junit + junit + 3.8.1 + test + + + + + + default-tools.jar + + + java.vendor + Sun Microsystems Inc. + + + + + com.sun + tools + 1.4.2 + system + ${java.home}/../lib/tools.jar + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0063/src/main/java/org/apache/maven/it0063/Person.java b/its/maven-core-integration-tests/src/test/resources/it0063/src/main/java/org/apache/maven/it0063/Person.java new file mode 100644 index 0000000000..211e8589b8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0063/src/main/java/org/apache/maven/it0063/Person.java @@ -0,0 +1,18 @@ +package org.apache.maven.it0001; + +import com.sun.tools.javac.Main; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0063/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0063/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0063/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0063/src/test/java/org/apache/maven/it0063/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0063/src/test/java/org/apache/maven/it0063/PersonTest.java new file mode 100644 index 0000000000..80014fa03b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0063/src/test/java/org/apache/maven/it0063/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0001; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0064/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0064/pom.xml new file mode 100644 index 0000000000..dbef4acfad --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0064/pom.xml @@ -0,0 +1,32 @@ + + 4.0.0 + Maven Integration Test :: it0064 + org.apache.maven.its.it0064 + maven-it-it0064 + Test the use of a mojo that uses setters instead of private fields + for the population of configuration values. + jar + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.its.plugins + maven-it-plugin-setter + 1.0-SNAPSHOT + + fooValue + barValue + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/plugin/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0065/plugin/pom.xml new file mode 100644 index 0000000000..663065d0b6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/plugin/pom.xml @@ -0,0 +1,34 @@ + + 4.0.0 + + org.apache.maven.its.it0065 + maven-it-it0065 + 1.0 + + plugin + maven-plugin + 1.0-SNAPSHOT + + + org.apache.maven + maven-plugin-api + 2.0-beta-1 + jar + compile + + + junit + junit + 3.8.1 + jar + test + + + + + central + Test Repository + file:/tmp/testRepo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/plugin/src/main/java/org/apache/maven/plugin/coreit/TestBasedirMojo.java b/its/maven-core-integration-tests/src/test/resources/it0065/plugin/src/main/java/org/apache/maven/plugin/coreit/TestBasedirMojo.java new file mode 100644 index 0000000000..df031c708a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/plugin/src/main/java/org/apache/maven/plugin/coreit/TestBasedirMojo.java @@ -0,0 +1,76 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +/** + * @goal test-basedir + * @phase compile + */ +public class TestBasedirMojo + extends AbstractMojo +{ + private static final int DELETE_RETRY_SLEEP_MILLIS = 10; + + /** + * @parameter expression="${basedir}/target/child-basedir" + * @required + */ + private String childBasedir; + + /** + * @parameter expression="${project.parent.basedir}/parent-basedir" + * @required + */ + private String parentBasedir; + + public void execute() + throws MojoExecutionException + { + write( new File( childBasedir ) ); + + write( new File( parentBasedir ) ); + } + + private void write( File f ) + throws MojoExecutionException + { + if ( !f.getParentFile().exists() ) + { + f.getParentFile().mkdirs(); + } + + try + { + FileWriter w = new FileWriter( f ); + + w.write( f.getPath() ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error writing verification file.", e ); + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0065/pom.xml new file mode 100644 index 0000000000..58ba9ce193 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/pom.xml @@ -0,0 +1,23 @@ + + 4.0.0 + Maven Integration Test :: it0065 + org.apache.maven.its.it0065 + maven-it-it0065 + Test that the basedir of the parent is set correctly. + pom + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + plugin + subproject + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/subproject/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/pom.xml new file mode 100644 index 0000000000..2fe686d478 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/pom.xml @@ -0,0 +1,27 @@ + + 4.0.0 + + org.apache.maven.its.it0065 + maven-it-it0065 + 1.0 + + subproject + jar + 1.0 + + + + org.apache.maven.its.it0065 + plugin + 1.0-SNAPSHOT + + + + test-basedir + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/java/org/apache/maven/it0065/Person.java b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/java/org/apache/maven/it0065/Person.java new file mode 100644 index 0000000000..af13ac20c0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/java/org/apache/maven/it0065/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0065; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/resources/it0001.properties b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/resources/it0001.properties new file mode 100644 index 0000000000..f54f8ab106 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/main/resources/it0001.properties @@ -0,0 +1 @@ +name = jason diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTest.java new file mode 100644 index 0000000000..de5487b859 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0065; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonThreeTest.java b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonThreeTest.java new file mode 100644 index 0000000000..aaa095d51e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonThreeTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0065; + +import junit.framework.TestCase; + +public class PersonThreeTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTwoTest.java b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTwoTest.java new file mode 100644 index 0000000000..5caea7be62 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0065/subproject/src/test/java/org/apache/maven/it0065/PersonTwoTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0065; + +import junit.framework.TestCase; + +public class PersonTwoTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0066/other-pom.xml b/its/maven-core-integration-tests/src/test/resources/it0066/other-pom.xml new file mode 100644 index 0000000000..e4116941cc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0066/other-pom.xml @@ -0,0 +1,7 @@ + + 4.0.0 + org.apache.maven.its.it0066 + maven-it-it0066 + 1.0-SNAPSHOT + pom + diff --git a/its/maven-core-integration-tests/src/test/resources/it0067/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0067/pom.xml new file mode 100644 index 0000000000..39cd31b579 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0067/pom.xml @@ -0,0 +1,23 @@ + + 4.0.0 + Maven Integration Test :: it0067 + org.apache.maven.its.it0067 + maven-it-it0067 + Test activation of a profile from the command line. + maven-plugin + 1.0-SNAPSHOT + + + + test-profile + + + + junit + junit + 3.8.1 + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0067/src/main/java/org/apache/maven/it0067/Person.java b/its/maven-core-integration-tests/src/test/resources/it0067/src/main/java/org/apache/maven/it0067/Person.java new file mode 100644 index 0000000000..a8de7781b2 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0067/src/main/java/org/apache/maven/it0067/Person.java @@ -0,0 +1,18 @@ +package org.apache.maven.it0021; + +import junit.framework.TestCase; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0068/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0068/pom.xml new file mode 100644 index 0000000000..a98a35ca79 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0068/pom.xml @@ -0,0 +1,30 @@ + + 4.0.0 + Maven Integration Test :: it0068 + org.apache.maven.its.it0068 + maven-it-it0068 + Test repository accumulation. + 1.0-SNAPSHOT + + + + org.codehaus.modello + modello-maven-plugin + + + + xpp3-writer + java + xpp3-reader + + + 1.0.0 + test.mdo + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0068/test.mdo b/its/maven-core-integration-tests/src/test/resources/it0068/test.mdo new file mode 100644 index 0000000000..5bd623bf87 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0068/test.mdo @@ -0,0 +1,769 @@ + + + + settings + Settings + + + + package + org.apache.maven.settings + + + + + TrackableBase + 1.0.0 + common base class that contains code to track the source for this instance (USER|GLOBAL) + + + 1.0.0 + + + + + + IdentifiableBase + TrackableBase + 1.0.0 + + + id + 1.0.0 + String + default + true + + + + + Settings + 1.0.0 + TrackableBase + Root element of the user configuration file. + + + localRepository + 1.0.0 + true + + String + + + interactiveMode + 1.0.0 + + boolean + true + + + usePluginRegistry + 1.0.0 + + boolean + true + + + + + offline + 1.0.0 + false + + + boolean + false + + + + + proxies + 1.0.0 + + + Proxy + * + + + + servers + 1.0.0 + + + Server + * + + + + mirrors + 1.0.0 + Configuration of download mirrors for repositories. + + + Mirror + * + + + + profiles + 1.0.0 + + + Profile + * + + + + activeProfiles + 1.0.0 + + + String + * + + + + pluginGroups + 1.0.0 + List of groupIds to search for a plugin when that plugin groupId is not explicitly provided. + + String + * + + + + + + 1.0.0 + 1 ) + { + for ( java.util.Iterator it = proxies.iterator(); it.hasNext(); ) + { + Proxy proxy = (Proxy) it.next(); + if ( proxy.isActive() ) + { + activeProxy = proxy; + break; + } + } + } + else + { + // If we only have one proxy, use it as the active one. + activeProxy = (Proxy) proxies.get( 0 ); + } + } + } + + return activeProxy; + } + + public Server getServer( String serverId ) + { + Server match = null; + + java.util.List servers = getServers(); + if ( servers != null && serverId != null ) + { + for ( java.util.Iterator it = servers.iterator(); it.hasNext(); ) + { + Server server = (Server) it.next(); + if ( serverId.equals( server.getId() ) ) + { + match = server; + break; + } + } + } + + return match; + } + + public Mirror getMirrorOf( String repositoryId ) + { + Mirror match = null; + + java.util.List mirrors = getMirrors(); + if ( mirrors != null && repositoryId != null ) + { + for ( java.util.Iterator it = mirrors.iterator(); it.hasNext(); ) + { + Mirror mirror = (Mirror) it.next(); + if ( repositoryId.equals( mirror.getMirrorOf() ) ) + { + match = mirror; + break; + } + } + } + + return match; + } + + private java.util.Map profileMap; + + public void flushProfileMap() + { + this.profileMap = null; + } + + public java.util.Map getProfilesAsMap() + { + if ( profileMap == null ) + { + profileMap = new java.util.HashMap(); + + if ( getProfiles() != null ) + { + for ( java.util.Iterator it = getProfiles().iterator(); it.hasNext(); ) + { + Profile profile = (Profile) it.next(); + + profileMap.put( profile.getId(), profile ); + } + } + } + + return profileMap; + } + + private RuntimeInfo runtimeInfo; + + public void setRuntimeInfo( RuntimeInfo runtimeInfo ) + { + this.runtimeInfo = runtimeInfo; + } + + public RuntimeInfo getRuntimeInfo() + { + return runtimeInfo; + } + ]]> + + + + + + + + Proxy + 1.0.0 + IdentifiableBase + + + active + 1.0.0 + false + false + + + boolean + + + protocol + 1.0.0 + + String + http + + + username + 1.0.0 + + String + + + password + 1.0.0 + + String + + + port + 1.0.0 + + int + + + host + 1.0.0 + + String + + + nonProxyHosts + 1.0.0 + + String + + + + + Server + 1.0.0 + IdentifiableBase + + + username + 1.0.0 + + + String + + + password + 1.0.0 + + String + + + privateKey + 1.0.0 + + + String + + + passphrase + 1.0.0 + + String + + + + + Mirror + 1.0.0 + IdentifiableBase + A download mirror for a given repository. + + + mirrorOf + true + 1.0.0 + String + The server ID of the repository being mirrored, eg + "central". This MUST NOT match the mirror id. + + + name + false + 1.0.0 + String + The optional name that describes the mirror. + + + + url + true + 1.0.0 + String + The URL of the mirror repository. + + + + + + + Profile + 1.0.0 + IdentifiableBase + + + + activation + 1.0.0 + + + Activation + + + + localRepository + 1.0.0 + String + backwards-compatible location for specifying the local repository for use in builds + THIS IS DEPRECATED: use localRepository under the root element instead. + + + properties + Extended configuration specific to this profile goes + here. + Properties + + String + * + + + + repositories + 1.0.0 + + + + Repository + * + + + + pluginRepositories + 1.0.0 + + + Repository + * + + + + + + + Activation + 1.0.0 + + + + activeByDefault + 1.0.0 + boolean + Flag specifying whether this profile is active as a default. + + + jdk + 1.0.0 + String + + + + property + 1.0.0 + + + ActivationProperty + + + + + + + + RepositoryBase + 1.0.0 + + + + id + 1.0.0 + + String + + + name + 1.0.0 + + String + + + url + 1.0.0 + + String + + + layout + 1.0.0 + The type of layout this repository uses for locating and storing artifacts - can be "legacy" or + "default". + String + default + + + + + 1.0.0 + + + + + + + Repository + RepositoryBase + 1.0.0 + + Repository contains the information needed for establishing connections with remote repoistory + + + + + snapshotPolicy + 1.0.0 + + The policy for downloading snapshots - can be "always", "daily" (default), "interval:XXX" (in minutes) or + "never" (repository is not checked, even if the snapshot is not present locally). + + String + + + + checksumPolicy + 1.0.0 + What to do when verification of an artifact checksum fails - warn, fail, etc. Valid values are + "fail" or "warn" + String + + + releases + 1.0.0 + How to handle downloading of releases from this repository + + RepositoryPolicy + + + + snapshots + 1.0.0 + How to handle downloading of snapshots from this repository + + RepositoryPolicy + + + + + + + 1.0.0 + + + + + + + RepositoryPolicy + 1.0.0 + Download policy + + + enabled + 1.0.0 + Whether to use this repository for downloading this type of artifact + boolean + true + + + updatePolicy + 1.0.0 + + The frequency for downloading updates - can be "always", "daily" (default), "interval:XXX" (in minutes) or + "never" (only if it doesn't exist locally). + + String + + + checksumPolicy + 1.0.0 + What to do when verification of an artifact checksum fails - warn, fail, etc. Valid values are + "fail" or "warn" + String + + + + + + ActivationProperty + 1.0.0 + + + + name + 1.0.0 + String + true + The name of the property to be used to activate a profile + + + value + 1.0.0 + String + The value of the property to be used to activate a profile + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0069/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0069/pom.xml new file mode 100644 index 0000000000..9207ffb1b4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0069/pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + Maven Integration Test :: it0069 + org.apache.maven.its.it0069 + maven-it-it0069 + Test offline mode. + 1.0-SNAPSHOT + + + + classworlds + classworlds + 1.1-alpha-2 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0069/src/main/java/org/apache/maven/it0069/ClassworldBasedThing.java b/its/maven-core-integration-tests/src/test/resources/it0069/src/main/java/org/apache/maven/it0069/ClassworldBasedThing.java new file mode 100644 index 0000000000..330d86a055 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0069/src/main/java/org/apache/maven/it0069/ClassworldBasedThing.java @@ -0,0 +1,7 @@ +package org.apache.maven.it0069; + +public class ClassworldBasedThing +{ + private org.codehaus.classworlds.ClassRealm realm; +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0070/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0070/pom.xml new file mode 100644 index 0000000000..ffc4e8d485 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0070/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + Maven Integration Test :: it0070 + org.apache.maven.its.it0070 + maven-it-it0070 + Test a RAR generation. + rar + 1.0 + + + + + org.apache.maven.plugins + maven-rar-plugin + + false + src/main/custom/ra.xml + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0070/src/main/custom/ra.xml b/its/maven-core-integration-tests/src/test/resources/it0070/src/main/custom/ra.xml new file mode 100644 index 0000000000..dfd9a98064 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0070/src/main/custom/ra.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/its/maven-core-integration-tests/src/test/resources/it0070/src/main/rar/SomeResource.txt b/its/maven-core-integration-tests/src/test/resources/it0070/src/main/rar/SomeResource.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/its/maven-core-integration-tests/src/test/resources/it0071/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0071/pom.xml new file mode 100644 index 0000000000..42671cf90a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0071/pom.xml @@ -0,0 +1,34 @@ + + 4.0.0 + Maven Integration Test :: it0071 + org.apache.maven.its.it0071 + maven-it-it0071 + Verifies that dotted property references work within plugin + configurations. + jar + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + jar + test + + + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + ${m2.foo} + + + + + + foo2 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0072/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0072/pom.xml new file mode 100644 index 0000000000..c74745a50b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0072/pom.xml @@ -0,0 +1,24 @@ + + 4.0.0 + Maven Integration Test :: it0072 + org.apache.maven.its.it0072 + maven-it-it0072 + Verifies that property references with dotted notation work within + POM interpolation. + jar + ${m2.version} + + + junit + junit + 3.8.1 + jar + test + + + + + foo2 + 1.0-SNAPSHOT + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0073/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0073/pom.xml new file mode 100644 index 0000000000..d383a6a765 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0073/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + Maven Integration Test :: it0073 + org.apache.maven.its.it0073 + maven-it-it0073 + Tests context passing between mojos in the same plugin. + 1.0-SNAPSHOT + + + + org.apache.maven.its.plugins + maven-it-plugin-context-passing + 1.0-SNAPSHOT + + thrown-value + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0074/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0074/pom.xml new file mode 100644 index 0000000000..34ae043ff1 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0074/pom.xml @@ -0,0 +1,41 @@ + + 4.0.0 + Maven Integration Test :: it0074 + org.apache.maven.its.it0074 + maven-it-it0074 + Test that plugin-level configuration instances are not nullified by + execution-level configuration instances. + 1.0 + + + + junit + junit + 3.8.1 + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + precompile + initialize + + + org/apache/maven/it0074/Person.java + + + + compile + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0074/src/main/java/org/apache/maven/it0074/Person.java b/its/maven-core-integration-tests/src/test/resources/it0074/src/main/java/org/apache/maven/it0074/Person.java new file mode 100644 index 0000000000..81569e26f3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0074/src/main/java/org/apache/maven/it0074/Person.java @@ -0,0 +1,6 @@ +package org.apache.maven.it0074; + +public class Person +{ + private String name; +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0075/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0075/pom.xml new file mode 100644 index 0000000000..3b613a7281 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0075/pom.xml @@ -0,0 +1,29 @@ + + 4.0.0 + Maven Integration Test :: it0075 + org.apache.maven.its.it0075 + maven-it-it0075 + Verify that direct invocation of a mojo from the command line still + results in the processing of modules included via profiles. + 1.0 + pom + + + sub1 + + + + + include-sub2 + + + activate + + + + + sub2 + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0075/sub1/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0075/sub1/pom.xml new file mode 100644 index 0000000000..097a1af95f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0075/sub1/pom.xml @@ -0,0 +1,9 @@ + + 4.0.0 + + org.apache.maven.its.it0075 + maven-it-it0075 + 1.0 + + sub1 + diff --git a/its/maven-core-integration-tests/src/test/resources/it0075/sub1/src/main/java/org/apache/maven/it0075/Person.java b/its/maven-core-integration-tests/src/test/resources/it0075/sub1/src/main/java/org/apache/maven/it0075/Person.java new file mode 100644 index 0000000000..4625629e09 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0075/sub1/src/main/java/org/apache/maven/it0075/Person.java @@ -0,0 +1,6 @@ +package org.apache.maven.it0075; + +public class Person +{ + private String name; +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0075/sub2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0075/sub2/pom.xml new file mode 100644 index 0000000000..2fc1341f18 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0075/sub2/pom.xml @@ -0,0 +1,9 @@ + + 4.0.0 + + org.apache.maven.its.it0075 + maven-it-it0075 + 1.0 + + sub2 + diff --git a/its/maven-core-integration-tests/src/test/resources/it0075/sub2/src/main/java/org/apache/maven/it0075/Person2.java b/its/maven-core-integration-tests/src/test/resources/it0075/sub2/src/main/java/org/apache/maven/it0075/Person2.java new file mode 100644 index 0000000000..21053e2b75 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0075/sub2/src/main/java/org/apache/maven/it0075/Person2.java @@ -0,0 +1,6 @@ +package org.apache.maven.it0075; + +public class Person2 +{ + private String name; +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0076/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0076/pom.xml new file mode 100644 index 0000000000..88498b0257 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0076/pom.xml @@ -0,0 +1,33 @@ + + + 4.0.0 + Maven Integration Test :: it0076 + org.apache.maven.its.it0076 + maven-it-it0076 + Test that plugins in pluginManagement aren't included in the build + unless they are referenced by groupId/artifactId within the plugins + section of a pom. + 1.0-SNAPSHOT + pom + + + + + + org.apache.maven.plugins + maven-war-plugin + + + + exec1 + package + + war + + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0077/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0077/pom.xml new file mode 100644 index 0000000000..a236e8c040 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0077/pom.xml @@ -0,0 +1,30 @@ + + 4.0.0 + Maven Integration Test :: it0077 + org.apache.maven.its.it0077 + maven-it-it0077 + Test test jar attachment. + pom + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + sub1 + sub2 + + + + + test + file:target/test-repo + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0077/settings.xml b/its/maven-core-integration-tests/src/test/resources/it0077/settings.xml new file mode 100644 index 0000000000..57f8c014c5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0077/settings.xml @@ -0,0 +1,4 @@ + + file:../target/local-repo + false + diff --git a/its/maven-core-integration-tests/src/test/resources/it0077/sub1/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0077/sub1/pom.xml new file mode 100644 index 0000000000..8244aae36d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0077/sub1/pom.xml @@ -0,0 +1,41 @@ + + 4.0.0 + + org.apache.maven.its.it0077 + maven-it-it0077 + 1.0 + + sub1 + 1.0 + + + commons-lang + commons-lang + 2.0 + test + + + + + + central + Test Repository + file:../target/test-repo + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/main/java/org/apache/maven/it0077/Person.java b/its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/main/java/org/apache/maven/it0077/Person.java new file mode 100644 index 0000000000..14c3784427 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/main/java/org/apache/maven/it0077/Person.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0077; + +public class Person +{ + private String name; + + public void setName( String name ) + { + this.name = name; + } + + public String getName() + { + return name; + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/test/java/org/apache/maven/it0077/PersonTest.java b/its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/test/java/org/apache/maven/it0077/PersonTest.java new file mode 100644 index 0000000000..f3a40ca096 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0077/sub1/src/test/java/org/apache/maven/it0077/PersonTest.java @@ -0,0 +1,16 @@ +package org.apache.maven.it0077; + +import junit.framework.TestCase; + +public class PersonTest + extends TestCase +{ + public void testPerson() + { + Person person = new Person(); + + person.setName( "foo" ); + + assertEquals( "foo", person.getName() ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0077/sub2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0077/sub2/pom.xml new file mode 100644 index 0000000000..f127b8525f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0077/sub2/pom.xml @@ -0,0 +1,25 @@ + + 4.0.0 + + org.apache.maven.its.it0077 + maven-it-it0077 + 1.0 + + sub2 + 1.0 + + + org.apache.maven.its.it0077 + sub1 + 1.0 + test + + + org.apache.maven.its.it0077 + sub1 + test-jar + 1.0 + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0077/sub2/src/test/java/org/apache/maven/it0077/PersonTwoTest.java b/its/maven-core-integration-tests/src/test/resources/it0077/sub2/src/test/java/org/apache/maven/it0077/PersonTwoTest.java new file mode 100644 index 0000000000..a81618e7ea --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0077/sub2/src/test/java/org/apache/maven/it0077/PersonTwoTest.java @@ -0,0 +1,8 @@ +package org.apache.maven.it0077; + +import junit.framework.TestCase; + +public class PersonTwoTest + extends PersonTest +{ +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0078/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0078/pom.xml new file mode 100644 index 0000000000..c6e4aab48f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0078/pom.xml @@ -0,0 +1,25 @@ + + 4.0.0 + Maven Integration Test :: it0078 + org.apache.maven.its.it0078 + maven-it-it0078 + Test that configuration for maven-compiler-plugin is injected from + PluginManagement section even when it's not explicitly defined in the + plugins section. + jar + 1.0 + + + + + maven-compiler-plugin + + + **/Test.java + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0078/src/main/java/Test.java b/its/maven-core-integration-tests/src/test/resources/it0078/src/main/java/Test.java new file mode 100644 index 0000000000..a0d36b07d4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0078/src/main/java/Test.java @@ -0,0 +1,6 @@ +import java.util.List; + +public class Test +{ + private List strings; +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0079/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0079/pom.xml new file mode 100644 index 0000000000..6761fcfc21 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0079/pom.xml @@ -0,0 +1,36 @@ + + + + 4.0.0 + org.apache.maven.its.it0079 + maven-it-it0079 + + Test that source attachments have the same build number as the main + artifact when deployed. + + SNAPSHOT + + + test + Test Repo + file:target/test-repo + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + + jar + + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0079/src/main/java/org/apache/maven/it0079/Person.java b/its/maven-core-integration-tests/src/test/resources/it0079/src/main/java/org/apache/maven/it0079/Person.java new file mode 100644 index 0000000000..13e7918e1f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0079/src/main/java/org/apache/maven/it0079/Person.java @@ -0,0 +1,6 @@ +package org.apache.maven.it0079; + +public class Person +{ + String name; +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0080/pom.xml new file mode 100644 index 0000000000..66aa74a1fb --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + Maven Integration Test :: it0080 + org.apache.maven.its.it0080 + maven-it-it0080 + Test that depending on a WAR doesn't also get its dependencies + transitively. + 0.1 + pom + + test-component-c + test-component-b + test-component-a + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/pom.xml new file mode 100644 index 0000000000..c6cdc46397 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + + maven-it-it0080 + org.apache.maven.its.it0080 + 0.1 + + test-component-a + 0.1 + Test Component A + jar + diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/src/main/java/A.java b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/src/main/java/A.java new file mode 100644 index 0000000000..73e270dbea --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-a/src/main/java/A.java @@ -0,0 +1,3 @@ +public class A { +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/pom.xml new file mode 100644 index 0000000000..42c81ec40f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + maven-it-it0080 + org.apache.maven.its.it0080 + 0.1 + + test-component-b + 0.1 + Test Component B + war + + + test + test-component-a + 0.1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/java/B.java b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/java/B.java new file mode 100644 index 0000000000..c288d4d8b7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/java/B.java @@ -0,0 +1,5 @@ +public class B + extends A +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/webapp/WEB-INF/web.xml b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..92bb2e9825 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-b/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/pom.xml new file mode 100644 index 0000000000..38244af7ce --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + + maven-it-it0080 + org.apache.maven.its.it0080 + 0.1 + + test-component-c + 0.1 + Test Component C + ear + + + test + test-component-b + 0.1 + war + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/src/main/java/C.java b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/src/main/java/C.java new file mode 100644 index 0000000000..f7546a58a7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0080/test-component-c/src/main/java/C.java @@ -0,0 +1,5 @@ +public class C + extends A +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0081/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0081/pom.xml new file mode 100644 index 0000000000..b72264eeec --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0081/pom.xml @@ -0,0 +1,13 @@ + + 4.0.0 + Maven Integration Test :: it0081 + org.apache.maven.its.it0081 + maven-it-it0081 + Test per-plugin dependencies. + 0.1 + pom + + test-component-c + test-plugin + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0081/test-component-c/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0081/test-component-c/pom.xml new file mode 100644 index 0000000000..769a03690a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0081/test-component-c/pom.xml @@ -0,0 +1,34 @@ + + 4.0.0 + + maven-it-it0081 + org.apache.maven.its.it0081 + 0.1 + + test-component-c + 0.1 + Test Component C + + + + test + test-plugin + 0.1 + + + org.apache.maven.wagon + wagon-ftp + 1.0-alpha-4 + + + + + + test + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/pom.xml new file mode 100644 index 0000000000..403a0d665e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + maven-it-it0081 + org.apache.maven.its.it0081 + 0.1 + + test-plugin + maven-plugin + 0.1 + Test Plugin + + + org.apache.maven + maven-plugin-api + 2.0-beta-1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java b/its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java new file mode 100644 index 0000000000..28bcec9ea5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0081/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java @@ -0,0 +1,75 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +/** + * test goal. + * + * @goal test + * @phase test + */ +public class CoreItMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project.build.directory}" + * @required + */ + private String outputDirectory; + + /** + * @component role="org.apache.maven.wagon.Wagon" roleHint="ftp" + */ + private Object wagon; + + public void execute() + throws MojoExecutionException + { + touch( new File( outputDirectory ), wagon.getClass().getName() ); + } + + private static void touch( File dir, String file ) + throws MojoExecutionException + { + try + { + if ( !dir.exists() ) + { + dir.mkdirs(); + } + + File touch = new File( dir, file ); + + FileWriter w = new FileWriter( touch ); + + w.write( file ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error touching file", e ); + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0082/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0082/pom.xml new file mode 100644 index 0000000000..be95fc14ec --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0082/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + Maven Integration Test :: it0082 + org.apache.maven.its.it0082 + maven-it-it0082 + Test that the reactor can establish the artifact location of known projects for dependencies + using process-sources to see that it works even when they aren't compiled + 0.1 + pom + + test-component-c + test-plugin + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/pom.xml new file mode 100644 index 0000000000..596c9c4b5e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/pom.xml @@ -0,0 +1,31 @@ + + 4.0.0 + + maven-it-it0082 + org.apache.maven.its.it0082 + 0.1 + + test-component-c + 0.1 + Test Component C + war + + + + org.apache.maven.its.plugins + maven-it-plugin-touch + 1.0-SNAPSHOT + + my-test + + + + + touch + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/java/C.java b/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/java/C.java new file mode 100644 index 0000000000..f7546a58a7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/java/C.java @@ -0,0 +1,5 @@ +public class C + extends A +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/webapp/WEB-INF/web.xml b/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..92bb2e9825 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0082/test-component-c/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/pom.xml new file mode 100644 index 0000000000..a0a2ae55a3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + maven-it-it0082 + org.apache.maven.its.it0082 + 0.1 + + test-plugin + maven-plugin + 1.0-SNAPSHOT + Test Plugin + + + org.apache.maven + maven-plugin-api + 2.0-beta-1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java b/its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java new file mode 100644 index 0000000000..ad958a7e66 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0082/test-plugin/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java @@ -0,0 +1,77 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +/** + * @goal test + * + * @phase process-sources + * + * @description Goal which cleans the build + */ +public class CoreItMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project.build.directory}" + * @required + */ + private String outputDirectory; + + /** + * @parameter + * @required + */ + private String value; + + public void execute() + throws MojoExecutionException + { + touch( new File( outputDirectory ), value ); + } + + private static void touch( File dir, String file ) + throws MojoExecutionException + { + try + { + if ( !dir.exists() ) + { + dir.mkdirs(); + } + + File touch = new File( dir, file ); + + FileWriter w = new FileWriter( touch ); + + w.write( file ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error touching file", e ); + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0083/pom.xml new file mode 100644 index 0000000000..6a21b07e9a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + Maven Integration Test :: it0083 + org.apache.maven.its.it0083 + maven-it-it0083 + Verify that overriding a compile time dependency as provided in a WAR ensures it is not included. + + 0.1 + pom + + test-component-c + test-component-b + test-component-a + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/pom.xml new file mode 100644 index 0000000000..6957e1fd5d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + + maven-it-it0083 + org.apache.maven.its.it0083 + 0.1 + + test-component-a + 0.1 + Test Component A + jar + diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/src/main/java/A.java b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/src/main/java/A.java new file mode 100644 index 0000000000..73e270dbea --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-a/src/main/java/A.java @@ -0,0 +1,3 @@ +public class A { +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/pom.xml new file mode 100644 index 0000000000..03c42bb15e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/pom.xml @@ -0,0 +1,20 @@ + + 4.0.0 + + maven-it-it0083 + org.apache.maven.its.it0083 + 0.1 + + test-component-b + 0.1 + Test Component B + jar + + + + org.apache.maven.its.it0083 + test-component-a + 0.1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/src/main/java/B.java b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/src/main/java/B.java new file mode 100644 index 0000000000..c288d4d8b7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-b/src/main/java/B.java @@ -0,0 +1,5 @@ +public class B + extends A +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/pom.xml new file mode 100644 index 0000000000..c03f5a3186 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/pom.xml @@ -0,0 +1,25 @@ + + 4.0.0 + + maven-it-it0083 + org.apache.maven.its.it0083 + 0.1 + + test-component-c + 0.1 + Test Component C + war + + + org.apache.maven.its.it0083 + test-component-b + 0.1 + + + org.apache.maven.its.it0083 + test-component-a + 0.1 + provided + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/java/C.java b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/java/C.java new file mode 100644 index 0000000000..f7546a58a7 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/java/C.java @@ -0,0 +1,5 @@ +public class C + extends A +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/webapp/WEB-INF/web.xml b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..92bb2e9825 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0083/test-component-c/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0084/pom.xml new file mode 100644 index 0000000000..1b9a5b3975 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + Maven Integration Test :: it0084 + org.apache.maven.its.it0084 + maven-it-it0084 + Verify that the collector selecting a particular version gets the correct subtree + 0.1 + pom + + test-component-c + test-component-b + test-component-a + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/pom.xml new file mode 100644 index 0000000000..220be64332 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + maven-it-it0084 + org.apache.maven.its.it0084 + 0.1 + + test-component-a + 0.1 + Test Component A + jar + + + org.apache.maven + maven-core-it-support + 1.4 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/src/main/java/A.java b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/src/main/java/A.java new file mode 100644 index 0000000000..73e270dbea --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-a/src/main/java/A.java @@ -0,0 +1,3 @@ +public class A { +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/pom.xml new file mode 100644 index 0000000000..350ebc4aa8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + + maven-it-it0084 + org.apache.maven.its.it0084 + 0.1 + + test-component-b + 0.1 + Test Component B + jar + + + org.apache.maven + maven-core-it-support + 1.3 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/src/main/java/B.java b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/src/main/java/B.java new file mode 100644 index 0000000000..142f69843a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-b/src/main/java/B.java @@ -0,0 +1,4 @@ +public class B +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/pom.xml new file mode 100644 index 0000000000..54d13a582d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/pom.xml @@ -0,0 +1,29 @@ + + 4.0.0 + + maven-it-it0084 + org.apache.maven.its.it0084 + 0.1 + + test-component-c + 0.1 + Test Component C + war + + + org.apache.maven + maven-core-it-support + 1.4 + + + org.apache.maven.its.it0084 + test-component-a + 0.1 + + + org.apache.maven.its.it0084 + test-component-b + 0.1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/java/C.java b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/java/C.java new file mode 100644 index 0000000000..bea74fda04 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/java/C.java @@ -0,0 +1,4 @@ +public class C +{ +} + diff --git a/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/webapp/WEB-INF/web.xml b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..92bb2e9825 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0084/test-component-c/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0085/dep/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0085/dep/pom.xml new file mode 100644 index 0000000000..028388a9bd --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0085/dep/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + + org.apache.maven.its.it0085 + maven-it-it0085 + 1.0 + + dep + + + org.apache.maven.its.it0085 + pom-dep + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0085/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0085/pom.xml new file mode 100644 index 0000000000..9de05173d6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0085/pom.xml @@ -0,0 +1,29 @@ + + 4.0.0 + Maven Integration Test :: it0085 + org.apache.maven.its.it0085 + maven-it-it0085 + Verify that system-scoped dependencies get resolved with system scope + when they are resolved transitively via another (non-system) + dependency. Inherited scope should not apply in the case of + system-scoped dependencies, no matter where they are. + 1.0 + pom + + + dep + war + + + + + + org.apache.maven.its.it0085 + pom-dep + 1.4.2 + system + ${basedir}/pom.xml + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0085/war/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0085/war/pom.xml new file mode 100644 index 0000000000..0d09a021d6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0085/war/pom.xml @@ -0,0 +1,24 @@ + + 4.0.0 + + org.apache.maven.its.it0085 + maven-it-it0085 + 1.0 + + war + war + + + + junit + junit + 3.8.1 + + + org.apache.maven.its.it0085 + dep + 1.0 + provided + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0085/war/src/main/webapp/WEB-INF/web.xml b/its/maven-core-integration-tests/src/test/resources/it0085/war/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..692c8c3b9a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0085/war/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,2 @@ + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0086/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0086/pom.xml new file mode 100644 index 0000000000..7a4c11facf --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0086/pom.xml @@ -0,0 +1,30 @@ + + 4.0.0 + Maven Integration Test :: it0086 + org.apache.maven.its.it0086 + 1.0 + maven-it-it0086 + Verify that a plugin dependency class can be loaded from both the plugin classloader and the context classloader available to the plugin. + + + + org.apache.maven.its.plugins + maven-it-plugin-loadable + 1.0-SNAPSHOT + + + validate + + + bsh.Interpreter + + + + loadable + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0087/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0087/pom.xml new file mode 100644 index 0000000000..282af5d0d0 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0087/pom.xml @@ -0,0 +1,40 @@ + + 4.0.0 + Maven Integration Test :: it0087 + org.apache.maven.its.it0087 + 1.0 + maven-it-it0087 + + Verify that a project-level plugin dependency class can be loaded from both the plugin classloader + and the context classloader available to the plugin. + + + + + org.apache.maven.its.plugins + maven-it-plugin-loadable + 1.0-SNAPSHOT + + + commons-logging + commons-logging + 1.0.3 + + + + + validate + + + org.apache.commons.logging.LogFactory + + + + loadable + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0088/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0088/pom.xml new file mode 100644 index 0000000000..064c9827bf --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0088/pom.xml @@ -0,0 +1,45 @@ + + 4.0.0 + Maven Integration Test :: it0088 + org.apache.maven.its.it0088 + maven-it-it0088 + Test path translation. + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + src/main/resources + true + + + + + org.apache.maven.its.plugins + maven-it-plugin-generate-properties + 1.0-SNAPSHOT + + + process-resources + + ${project.build.directory} + target + target + + + generate-properties + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0088/src/main/resources/test.properties b/its/maven-core-integration-tests/src/test/resources/it0088/src/main/resources/test.properties new file mode 100644 index 0000000000..afe1e72856 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0088/src/main/resources/test.properties @@ -0,0 +1 @@ +project.build.directory = ${project.build.directory} diff --git a/its/maven-core-integration-tests/src/test/resources/it0088/src/test/java/org/apache/maven/it0088/PomInterpolationTest.java b/its/maven-core-integration-tests/src/test/resources/it0088/src/test/java/org/apache/maven/it0088/PomInterpolationTest.java new file mode 100644 index 0000000000..8e38533e08 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0088/src/test/java/org/apache/maven/it0088/PomInterpolationTest.java @@ -0,0 +1,53 @@ +package org.apache.maven.it0088; + +import junit.framework.TestCase; + +import java.util.Properties; +import java.io.File; +import java.io.FileInputStream; + +public class PomInterpolationTest + extends TestCase +{ + private String basedir; + + protected void setUp() + throws Exception + { + basedir = System.getProperty( "basedir" ); + } + + public void testProjectBuildDirectoryAfterResourceFiltering() + throws Exception + { + Properties testProperties = new Properties(); + + File testPropertiesFile = new File( basedir, "target/classes/test.properties" ); + + assertTrue( testPropertiesFile.exists() ); + + testProperties.load( new FileInputStream( testPropertiesFile ) ); + + File projectBuildDirectory = new File( basedir, "target" ); + + assertEquals( projectBuildDirectory.getAbsolutePath(), testProperties.getProperty( "project.build.directory" ) ); + } + + public void testProjectBuildDirectoryForMojoExecution() + throws Exception + { + Properties testProperties = new Properties(); + + File testPropertiesFile = new File( basedir, "target/mojo-generated.properties" ); + + assertTrue( testPropertiesFile.exists() ); + + testProperties.load( new FileInputStream( testPropertiesFile ) ); + + File projectBuildDirectory = new File( basedir, "target" ); + + assertEquals( projectBuildDirectory.getAbsolutePath(), testProperties.getProperty( "project.build.directory" ) ); + assertEquals( projectBuildDirectory.getAbsolutePath(), testProperties.getProperty( "targetDirectoryFile" ) ); + assertEquals( "target", testProperties.getProperty( "targetDirectoryString" ) ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0089/plugin/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0089/plugin/pom.xml new file mode 100644 index 0000000000..eb16309431 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0089/plugin/pom.xml @@ -0,0 +1,24 @@ + + 4.0.0 + + org.apache.maven.its.it0089 + 1.0 + maven-it-it0089 + + org.apache.maven.plugins + maven-it0089-plugin + 1.0-SNAPSHOT + maven-plugin + + + checkstyle + checkstyle + 4.1 + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0089/plugin/src/main/java/org/apache/maven/plugins/it0089/Mojo.java b/its/maven-core-integration-tests/src/test/resources/it0089/plugin/src/main/java/org/apache/maven/plugins/it0089/Mojo.java new file mode 100644 index 0000000000..27617fbc7c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0089/plugin/src/main/java/org/apache/maven/plugins/it0089/Mojo.java @@ -0,0 +1,71 @@ +package org.apache.maven.plugins.it0089; + +import com.puppycrawl.tools.checkstyle.PackageNamesLoader; +import com.puppycrawl.tools.checkstyle.api.CheckstyleException; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.MojoFailureException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.io.Writer; + + +/** + * @goal test + */ +public class Mojo + extends AbstractMojo +{ + + /** + * @parameter default-value="${basedir}/target" + * @required + * @readonly + */ + private File outDir; + + public void execute() throws MojoExecutionException, MojoFailureException + { + try + { + PackageNamesLoader.loadModuleFactory(Thread.currentThread().getContextClassLoader()); + getLog().info( "Loaded checkstyle module factory."); + + outDir.mkdirs(); + + File output = new File( outDir, "output.txt" ); + Writer writer = null; + + try + { + writer = new FileWriter( output ); + writer.write( "Success." ); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Failed to write output file.", e ); + } + finally + { + if ( writer != null ) + { + try + { + writer.close(); + } + catch ( IOException e ) + { + } + } + } + } + catch ( CheckstyleException e ) + { + throw new MojoExecutionException( "Error loading checkstyle module factory.", e ); + } + } + +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0089/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0089/pom.xml new file mode 100644 index 0000000000..206b460a22 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0089/pom.xml @@ -0,0 +1,17 @@ + + 4.0.0 + Maven Integration Test :: it0089 + org.apache.maven.its.it0089 + maven-it-it0089 + Test that Checkstyle PackageNamesLoader.loadModuleFactory(..) method will complete as-is with + the context classloader available to the plugin. + + 1.0 + + pom + + + plugin + project + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0089/project/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0089/project/pom.xml new file mode 100644 index 0000000000..a642d8d18e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0089/project/pom.xml @@ -0,0 +1,25 @@ + + 4.0.0 + + org.apache.maven.its.it0089 + 1.0 + maven-it-it0089 + + project + Plugin Transitive Dependency Classloading Test + + + + maven-it0089-plugin + + + validate + + test + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0090/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0090/pom.xml new file mode 100644 index 0000000000..46da7cc267 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0090/pom.xml @@ -0,0 +1,44 @@ + + 4.0.0 + Maven Integration Test :: it0090 + org.apache.maven.its.it0090 + maven-it-it0090 + Test that ensures that envars are interpolated correctly into plugin + configurations. + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + src/main/resources + true + + + + + org.apache.maven.its.plugins + maven-it-plugin-generate-envar-properties + 1.0-SNAPSHOT + + + process-resources + + ${env.MAVEN_TEST_ENVAR} + + + generate-envar-properties + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0090/src/main/resources/test.properties b/its/maven-core-integration-tests/src/test/resources/it0090/src/main/resources/test.properties new file mode 100644 index 0000000000..658e54becd --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0090/src/main/resources/test.properties @@ -0,0 +1,2 @@ +# When we want to test the filtering of envars +maven.test.envar=${env.MAVEN_TEST_ENVAR} diff --git a/its/maven-core-integration-tests/src/test/resources/it0090/src/test/java/org/apache/maven/it0090/PomInterpolationTest.java b/its/maven-core-integration-tests/src/test/resources/it0090/src/test/java/org/apache/maven/it0090/PomInterpolationTest.java new file mode 100644 index 0000000000..a89e4cf145 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0090/src/test/java/org/apache/maven/it0090/PomInterpolationTest.java @@ -0,0 +1,35 @@ +package org.apache.maven.it0090; + +import junit.framework.TestCase; + +import java.util.Properties; +import java.io.File; +import java.io.FileInputStream; + +public class PomInterpolationTest + extends TestCase +{ + private String basedir; + + protected void setUp() + throws Exception + { + basedir = System.getProperty( "basedir" ); + } + + public void testProjectBuildDirectoryAfterForMojoExecution() + throws Exception + { + Properties testProperties = new Properties(); + + File testPropertiesFile = new File( basedir, "target/mojo-generated.properties" ); + + assertTrue( testPropertiesFile.exists() ); + + testProperties.load( new FileInputStream( testPropertiesFile ) ); + + File projectBuildDirectory = new File( basedir, "target" ); + + assertEquals( testProperties.getProperty( "maven.test.envar" ), "MAVEN_TEST_ENVAR_VALUE" ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0091/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0091/pom.xml new file mode 100644 index 0000000000..35c44daf79 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0091/pom.xml @@ -0,0 +1,41 @@ + + 4.0.0 + Maven Integration Test :: it0091 + org.apache.maven.its.it0091 + maven-it-it0091 + Test that currently demonstrates that properties are not correctly + interpolated into other areas in the POM. This may strictly be a boolean + problem: I captured the problem as it was reported. + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + true + jason + + + + + src/main/resources + true + + + + ${project.build.sourceDirectory} + true + + **/*.properties + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0091/src/main/java/source.properties b/its/maven-core-integration-tests/src/test/resources/it0091/src/main/java/source.properties new file mode 100644 index 0000000000..7673f9f83e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0091/src/main/java/source.properties @@ -0,0 +1 @@ +name=${name} diff --git a/its/maven-core-integration-tests/src/test/resources/it0091/src/main/resources/test.properties b/its/maven-core-integration-tests/src/test/resources/it0091/src/main/resources/test.properties new file mode 100644 index 0000000000..f951fd171d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0091/src/main/resources/test.properties @@ -0,0 +1,2 @@ +# When we want to test the filtering of envars +name=${name} diff --git a/its/maven-core-integration-tests/src/test/resources/it0091/src/test/java/org/apache/maven/it0091/PomInterpolationTest.java b/its/maven-core-integration-tests/src/test/resources/it0091/src/test/java/org/apache/maven/it0091/PomInterpolationTest.java new file mode 100644 index 0000000000..d97975017d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0091/src/test/java/org/apache/maven/it0091/PomInterpolationTest.java @@ -0,0 +1,51 @@ +package org.apache.maven.it0091; + +import junit.framework.TestCase; + +import java.util.Properties; +import java.io.File; +import java.io.FileInputStream; + +public class PomInterpolationTest + extends TestCase +{ + private String basedir; + + protected void setUp() + throws Exception + { + basedir = System.getProperty( "basedir" ); + } + + public void testProjectBuildDirectoryAfterForMojoExecution() + throws Exception + { + Properties testProperties = new Properties(); + + File testPropertiesFile = new File( basedir, "target/classes/test.properties" ); + + assertTrue( testPropertiesFile.exists() ); + + testProperties.load( new FileInputStream( testPropertiesFile ) ); + + File projectBuildDirectory = new File( basedir, "target" ); + + assertEquals( testProperties.getProperty( "name" ), "jason" ); + } + + public void testInterpolatedProjectSourceDirectory() + throws Exception + { + Properties testProperties = new Properties(); + + File testPropertiesFile = new File( basedir, "target/classes/source.properties" ); + + assertTrue( testPropertiesFile.exists() ); + + testProperties.load( new FileInputStream( testPropertiesFile ) ); + + File projectBuildDirectory = new File( basedir, "target" ); + + assertEquals( testProperties.getProperty( "name" ), "jason" ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0092/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0092/pom.xml new file mode 100644 index 0000000000..7264f48eb3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0092/pom.xml @@ -0,0 +1,22 @@ + + 4.0.0 + Maven Integration Test :: it0092 + org.apache.maven.its.it0092 + maven-it-it0092 + Test that legacy repositories with legacy snapshots download correctly. + 1.0 + + + org.apache.maven + maven-core-it-support + 1.0-SNAPSHOT + + + + + it0092 + file://localhost/${basedir}/repository + legacy + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0092/repository/org.apache.maven/jars/maven-core-it-support-1.0-SNAPSHOT.jar b/its/maven-core-integration-tests/src/test/resources/it0092/repository/org.apache.maven/jars/maven-core-it-support-1.0-SNAPSHOT.jar new file mode 100644 index 0000000000..dadf84f0d5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0092/repository/org.apache.maven/jars/maven-core-it-support-1.0-SNAPSHOT.jar @@ -0,0 +1 @@ +THIS IS NOT A JAR diff --git a/its/maven-core-integration-tests/src/test/resources/it0094/mojo/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0094/mojo/pom.xml new file mode 100644 index 0000000000..63c2f655cf --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0094/mojo/pom.xml @@ -0,0 +1,58 @@ + + 4.0.0 + org.apache.maven.its.it0094 + maven-it0094-plugin + maven-plugin + 1.0-SNAPSHOT + + + org.apache.maven + maven-plugin-api + 2.0 + + + org.apache.maven + maven-model + 2.0 + + + log4j + log4j + [1.2.9,] + + + org.codehaus.plexus + plexus-utils + 1.0.5 + + + xalan + xalan + 2.5.1 + compile + + + xerces + xercesImpl + 2.5.0 + compile + + + xml-apis + xml-apis + 2.0.0 + compile + + + + + + + + org.apache.maven.plugins + maven-plugin-plugin + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0094/mojo/src/main/java/org/codehaus/mojo/kodo/Enhance.java b/its/maven-core-integration-tests/src/test/resources/it0094/mojo/src/main/java/org/codehaus/mojo/kodo/Enhance.java new file mode 100644 index 0000000000..e57e4b3aee --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0094/mojo/src/main/java/org/codehaus/mojo/kodo/Enhance.java @@ -0,0 +1,173 @@ +/* + * Copyright 2005-2006 Brian Fox (brianefox@gmail.com) + * + * Licensed 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. + */ + +package org.codehaus.mojo.kodo; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.xerces.jaxp.SAXParserFactoryImpl; +import org.codehaus.classworlds.ClassRealm; + +import javax.xml.parsers.SAXParserFactory; +import java.lang.reflect.Field; +import java.net.URL; +import java.net.URLClassLoader; + +/** + * Goal that enhances persistant classes + * + * @requiresDependancyResolution test + * @goal enhance + * @phase compile + */ +public class Enhance + extends AbstractMojo + +{ + public Enhance() + { + super(); + } + + public void execute() + throws MojoExecutionException + { + printClassPath(); + + ClassLoader originalLoader = Thread.currentThread().getContextClassLoader(); + System.out.println( originalLoader.getClass() ); + + setupClassloader(); + originalLoader = Thread.currentThread().getContextClassLoader(); + System.out.println( originalLoader.getClass() ); + + SAXParserFactoryImpl spi = new SAXParserFactoryImpl(); + SAXParserFactory spf = SAXParserFactory.newInstance(); + this.getLog().info( spf.toString() ); + String t = "org/apache/xerces/jaxp/SAXParserFactoryImpl.class"; + this.getLog().info( t ); + URL url = originalLoader.getResource( t ); + //URL url = spf.getClass().getClassLoader().getResource("javax/xml/parsers/SAXParserFactory.class"); + this.getLog().info( "Loaded from: " + url.toString() ); + + } + + /** + * Adds nessessary items to the classloader. + * + * @return ClassLoader original Classloader. + * @throws MojoExecutionException + */ + public ClassLoader setupClassloader() + throws MojoExecutionException + { + + URLClassLoader loader = null; + ClassLoader originalLoader = Thread.currentThread().getContextClassLoader(); + this.getLog().info( "orig classloader:" ); + printURLClassPath( Thread.currentThread().getContextClassLoader(), "" ); + URL[] urls = new URL[0]; + loader = new URLClassLoader( urls, originalLoader ); + + Thread.currentThread().setContextClassLoader( loader ); + this.getLog().info( "new classloader:" ); + printURLClassPath( Thread.currentThread().getContextClassLoader(), "" ); + return originalLoader; + + } + + public void printURLClassPath( ClassLoader sysClassLoader, String s ) + throws MojoExecutionException + { + //Get the Classloader + //Get the URLs + URL[] urls; + if ( sysClassLoader instanceof URLClassLoader ) + { + urls = ( (URLClassLoader) sysClassLoader ).getURLs(); + } + else + { + try + { + Field f = sysClassLoader.getClass().getDeclaredField( "realm" ); + f.setAccessible( true ); + ClassRealm r = (ClassRealm) f.get( sysClassLoader ); + urls = r.getConstituents(); + } + catch ( NoSuchFieldException e ) + { + throw new MojoExecutionException( "mee ", e ); + } + catch ( IllegalAccessException e ) + { + throw new MojoExecutionException( "mee ", e ); + } + } + for ( int i = 0; i < urls.length; i++ ) + { + this.getLog().info( s + urls[i].getFile() ); + } + + if ( sysClassLoader.getParent() != null ) + { + printURLClassPath( sysClassLoader.getParent(), s + " " ); + } + } + + public void printClassPath() + { + ClassLoader sysClassLoader = Thread.currentThread().getContextClassLoader(); + URL[] urls = null; + Field field; + try + { + + field = sysClassLoader.getClass().getDeclaredField( "realm" ); + field.setAccessible( true ); + ClassRealm realm = (ClassRealm) field.get( sysClassLoader ); + + urls = realm.getConstituents(); + } + catch ( SecurityException e ) + { + // TODO Auto-generated catch block + e.printStackTrace(); + } + catch ( NoSuchFieldException e ) + { + // TODO Auto-generated catch block + e.printStackTrace(); + } + catch ( IllegalArgumentException e ) + { + // TODO Auto-generated catch block + e.printStackTrace(); + } + catch ( IllegalAccessException e ) + { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + //URL[] urls = ( (URLClassLoader) sysClassLoader ).getURLs(); + this.getLog().info( "Initial Classpath:" ); + for ( int i = 0; i < urls.length; i++ ) + { + this.getLog().info( urls[i].getFile() ); + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0094/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0094/pom.xml new file mode 100644 index 0000000000..9e9f92ac88 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0094/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + Maven Integration Test :: it0094 + org.apache.maven.its.it0094 + maven-it-it0094 + Test classloading issues with mojos after 2.0 (MNG-1898). + pom + 1.0-SNAPSHOT + + + mojo + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0094/test/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0094/test/pom.xml new file mode 100644 index 0000000000..79677ebbde --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0094/test/pom.xml @@ -0,0 +1,31 @@ + + + 4.0.0 + + org.apache.maven.its.it0094 + maven-it-it0094 + 1.0-SNAPSHOT + + test + + + + + + org.apache.maven.its.it0094 + maven-it0094-plugin + + + process-classes + process-classes + + enhance + + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0095/parent/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0095/parent/pom.xml new file mode 100644 index 0000000000..b4981bda7f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0095/parent/pom.xml @@ -0,0 +1,19 @@ + + 4.0.0 + org.apache.maven.its.it0095 + parent + 1 + pom + + scm:svn:https://svn.apache.org/repos/asf/maven/components/branches/maven-2.0.x/maven-core-it/it0095/parent + + + + website + scp://host/path/parent + + + + ../sub1 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0095/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0095/pom.xml new file mode 100644 index 0000000000..a98db9bd98 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0095/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + Maven Integration Test :: it0095 + org.apache.maven.its.it0095 + maven-it-it0095 + Test URL calculation when modules are in sibling dirs of parent. (MNG-2006) + 1 + + pom + + + parent + + + + integration-test + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0095/sub1/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0095/sub1/pom.xml new file mode 100644 index 0000000000..d855240a7c --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0095/sub1/pom.xml @@ -0,0 +1,41 @@ + + 4.0.0 + + org.apache.maven.its.it0095 + parent + 1 + ../parent + + sub1 + + integration-test + + + maven-help-plugin + + ${project.build.directory}/effective-pom.xml + + + + effective-pom + generate-resources + + effective-pom + + + + + + maven-verifier-plugin + + + verify + + verify + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0095/sub1/src/test/verifier/verifications.xml b/its/maven-core-integration-tests/src/test/resources/it0095/sub1/src/test/verifier/verifications.xml new file mode 100644 index 0000000000..21b8837751 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0095/sub1/src/test/verifier/verifications.xml @@ -0,0 +1,12 @@ + + + + target/effective-pom.xml + scp://host/path/parent/sub1 + + + target/effective-pom.xml + scm:svn:https://svn.apache.org/repos/asf/maven/components/branches/maven-2.0.x/maven-core-it/it0095/sub1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/plugin/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0096/plugin/pom.xml new file mode 100644 index 0000000000..d814b39a00 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/plugin/pom.xml @@ -0,0 +1,17 @@ + + 4.0.0 + + org.apache.maven.its.it0096 + maven-it-it0096 + 1 + + maven-it0096-plugin + maven-plugin + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java b/its/maven-core-integration-tests/src/test/resources/it0096/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java new file mode 100644 index 0000000000..a7d2ef8357 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java @@ -0,0 +1,56 @@ +package org.apache.maven.it0096; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +/** + * @goal it0096 + */ +public class It0096Mojo extends AbstractMojo +{ + + /** + * @parameter default-value="${project.build.directory}" + * @required + * @readonly + */ + private File targetDirectory; + + public void execute() throws MojoExecutionException + { + targetDirectory.mkdirs(); + + File myFile = new File( targetDirectory, "it0096-test.txt" ); + + if ( myFile.exists() ) + { + throw new MojoExecutionException( "This mojo has already been run, or the project wasn't cleaned." ); + } + else + { + FileWriter writer = null; + try + { + writer = new FileWriter( myFile ); + writer.write( "test" ); + writer.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Failed to write test file: " + myFile ); + } + finally + { + if ( writer != null ) + { + try{ writer.close(); } + catch( IOException e ) {} + } + } + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0096/pom.xml new file mode 100644 index 0000000000..f840c2c031 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + Maven Integration Test :: it0096 + org.apache.maven.its.it0096 + maven-it-it0096 + Test that plugin executions from >1 step of inheritance don't run multiple times. + 1 + pom + + + plugin + project + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/project/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0096/project/pom.xml new file mode 100644 index 0000000000..bc13feb68f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/project/pom.xml @@ -0,0 +1,32 @@ + + 4.0.0 + + org.apache.maven.its.it0096 + maven-it-it0096 + 1 + + project + pom + + project-level2 + + + + + org.apache.maven.its.it0096 + maven-it0096-plugin + 1 + + + it0096 + initialize + + it0096 + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/pom.xml new file mode 100644 index 0000000000..5e8d773458 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + + org.apache.maven.its.it0096 + project + 1 + + project-level2 + pom + + project-level3 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/pom.xml new file mode 100644 index 0000000000..035bd5723e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + + org.apache.maven.its.it0096 + project-level2 + 1 + + project-level3 + pom + + project-jar + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/pom.xml new file mode 100644 index 0000000000..6eff7bcdd3 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/pom.xml @@ -0,0 +1,33 @@ + + + org.apache.maven.its.it0096 + project-level3 + 1 + + 4.0.0 + project-jar + + + junit + junit + 3.8.1 + test + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/main/java/com/stchome/mavenTest/App.java b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/main/java/com/stchome/mavenTest/App.java new file mode 100644 index 0000000000..0e6d8e31a4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/main/java/com/stchome/mavenTest/App.java @@ -0,0 +1,13 @@ +package com.stchome.mavenTest; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/test/java/com/stchome/mavenTest/AppTest.java b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/test/java/com/stchome/mavenTest/AppTest.java new file mode 100644 index 0000000000..efb5aaa5b5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0096/project/project-level2/project-level3/project-jar/src/test/java/com/stchome/mavenTest/AppTest.java @@ -0,0 +1,38 @@ +package com.stchome.mavenTest; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/plugin/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/plugin/pom.xml new file mode 100644 index 0000000000..be9d38e47a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/plugin/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + org.apache.maven.its.it0097 + 1 + maven-it0097-plugin + maven-plugin + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java b/its/maven-core-integration-tests/src/test/resources/it0097/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java new file mode 100644 index 0000000000..b3b879edcc --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/plugin/src/main/java/org/apache/maven/it0096/It0096Mojo.java @@ -0,0 +1,56 @@ +package org.apache.maven.it0096; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +/** + * @goal it0097 + */ +public class It0096Mojo extends AbstractMojo +{ + + /** + * @parameter default-value="${project.build.directory}" + * @required + * @readonly + */ + private File targetDirectory; + + public void execute() throws MojoExecutionException + { + targetDirectory.mkdirs(); + + File myFile = new File( targetDirectory, "it0097.txt" ); + + if ( myFile.exists() ) + { + throw new MojoExecutionException( "This mojo has already been run, or the project wasn't cleaned." ); + } + else + { + FileWriter writer = null; + try + { + writer = new FileWriter( myFile ); + writer.write( "test" ); + writer.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Failed to write test file: " + myFile ); + } + finally + { + if ( writer != null ) + { + try{ writer.close(); } + catch( IOException e ) {} + } + } + } + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/pom.xml new file mode 100644 index 0000000000..389afe1845 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/pom.xml @@ -0,0 +1,16 @@ + + 4.0.0 + Maven Integration Test :: it0097 + org.apache.maven.its.it0097 + maven-it-it0097 + Test that the implied relative path for the parent POM works, even two + levels deep. + 1 + pom + + + plugin + project/project-level2/project-level3 + project/relative-project-level2/relative-project-level3/ + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/project/pom.xml new file mode 100644 index 0000000000..d436ee0cf8 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/pom.xml @@ -0,0 +1,29 @@ + + 4.0.0 + org.apache.maven.its.it0097 + 1 + project + pom + + project-level2 + + + + + org.apache.maven.its.it0097 + maven-it0097-plugin + 1 + + + it0097 + initialize + + it0097 + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/pom.xml new file mode 100644 index 0000000000..136ba6b155 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + + org.apache.maven.its.it0097 + project + 1 + + project-level2 + pom + + project-level3 + ../project-sibling-level2 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/pom.xml new file mode 100644 index 0000000000..0e5ce3a704 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/pom.xml @@ -0,0 +1,33 @@ + + + org.apache.maven.its.it0097 + project-level2 + 1 + + 4.0.0 + project-level3 + + + junit + junit + 3.8.1 + test + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/main/java/com/stchome/mavenTest/App.java b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/main/java/com/stchome/mavenTest/App.java new file mode 100644 index 0000000000..0e6d8e31a4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/main/java/com/stchome/mavenTest/App.java @@ -0,0 +1,13 @@ +package com.stchome.mavenTest; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/test/java/com/stchome/mavenTest/AppTest.java b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/test/java/com/stchome/mavenTest/AppTest.java new file mode 100644 index 0000000000..efb5aaa5b5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-level2/project-level3/src/test/java/com/stchome/mavenTest/AppTest.java @@ -0,0 +1,38 @@ +package com.stchome.mavenTest; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/pom.xml new file mode 100644 index 0000000000..9263eb50f6 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/pom.xml @@ -0,0 +1,34 @@ + + + org.apache.maven.its.it0097 + project-level2 + 1 + ../project-level2 + + 4.0.0 + project-sibling-level2 + + + junit + junit + 3.8.1 + test + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/main/java/com/stchome/mavenTest/App.java b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/main/java/com/stchome/mavenTest/App.java new file mode 100644 index 0000000000..0e6d8e31a4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/main/java/com/stchome/mavenTest/App.java @@ -0,0 +1,13 @@ +package com.stchome.mavenTest; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/test/java/com/stchome/mavenTest/AppTest.java b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/test/java/com/stchome/mavenTest/AppTest.java new file mode 100644 index 0000000000..efb5aaa5b5 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/project-sibling-level2/src/test/java/com/stchome/mavenTest/AppTest.java @@ -0,0 +1,38 @@ +package com.stchome.mavenTest; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/pom.xml new file mode 100644 index 0000000000..706048eb18 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + + org.apache.maven.its.it0097 + project + 1 + + relative-project-level2 + pom + + relative-project-level3 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/relative-project-level3/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/relative-project-level3/pom.xml new file mode 100644 index 0000000000..da6e2b76b4 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0097/project/relative-project-level2/relative-project-level3/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + + org.apache.maven.its.it0097 + relative-project-level2 + 1 + + relative-project-level3 + pom + + ../../project-sibling-level2 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0098/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0098/pom.xml new file mode 100644 index 0000000000..1ca8683cdd --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0098/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + Maven Integration Test :: it0098 + org.apache.maven.its.it0098 + maven-it-it0098 + Test that quoted system properties are processed correctly. [MNG-1415] + 1 + + + junit + junit + 3.8.1 + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0098/src/test/java/org/apache/maven/it/it0098/QuotedCLIPropertyTest.java b/its/maven-core-integration-tests/src/test/resources/it0098/src/test/java/org/apache/maven/it/it0098/QuotedCLIPropertyTest.java new file mode 100644 index 0000000000..60ad8899ed --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0098/src/test/java/org/apache/maven/it/it0098/QuotedCLIPropertyTest.java @@ -0,0 +1,14 @@ +package org.apache.maven.it.it0098; + +import junit.framework.TestCase; + +public class QuotedCLIPropertyTest + extends TestCase +{ + + public void testPropertyValue() + { + assertEquals( "Test Property", System.getProperty( "test.property" ) ); + } + +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0099/child/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0099/child/pom.xml new file mode 100644 index 0000000000..9b40f6c862 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0099/child/pom.xml @@ -0,0 +1,9 @@ + + 4.0.0 + + org.apache.maven.its.it0099 + maven-it-it0099 + 1 + + child + diff --git a/its/maven-core-integration-tests/src/test/resources/it0099/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0099/pom.xml new file mode 100644 index 0000000000..9d1cbb0bad --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0099/pom.xml @@ -0,0 +1,15 @@ + + 4.0.0 + Maven Integration Test :: it0099 + org.apache.maven.its.it0099 + maven-it-it0099 + Test that parent-POMs cached during a build are available as parents + to other POMs in the multimodule build. [MNG-2130] + 1 + + pom + + + child + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0100/parent/child/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0100/parent/child/pom.xml new file mode 100644 index 0000000000..3328b47797 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0100/parent/child/pom.xml @@ -0,0 +1,46 @@ + + + + parent + org.apache.maven.its.it0100 + 1.0 + + + 4.0.0 + child + child + + pom + + + + + maven-help-plugin + + + + target/effective-pom.txt + + initialize + + effective-pom + + + + + + maven-verifier-plugin + + + verify + + verify + + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0100/parent/child/src/test/verifier/verifications.xml b/its/maven-core-integration-tests/src/test/resources/it0100/parent/child/src/test/verifier/verifications.xml new file mode 100644 index 0000000000..43cb3f4e53 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0100/parent/child/src/test/verifier/verifications.xml @@ -0,0 +1,8 @@ + + + + target/effective-pom.txt + Parent: parent, project: child + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0100/parent/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0100/parent/pom.xml new file mode 100644 index 0000000000..c06f293a24 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0100/parent/pom.xml @@ -0,0 +1,32 @@ + + 4.0.0 + org.apache.maven.its.it0100 + parent + pom + 1.0 + parent + + + + + maven-antrun-plugin + + + validate + + + Parent: ${pom.parent.artifactId}, project: ${pom.artifactId} + Parent: ${parent.artifactId}, project: ${pom.artifactId} + + + + run + + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0100/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0100/pom.xml new file mode 100644 index 0000000000..c55ca22b8f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0100/pom.xml @@ -0,0 +1,13 @@ + + 4.0.0 + Maven Integration Test :: it0100 + org.apache.maven.its.it0100 + maven-it-it0100 + Test that ${parent.artifactId} resolves correctly. [MNG-2124] + pom + 1.0 + + parent/child + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0101/lib/test-dep.txt b/its/maven-core-integration-tests/src/test/resources/it0101/lib/test-dep.txt new file mode 100644 index 0000000000..b6745b109f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0101/lib/test-dep.txt @@ -0,0 +1 @@ +test dependency diff --git a/its/maven-core-integration-tests/src/test/resources/it0101/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0101/pom.xml new file mode 100644 index 0000000000..09a512ab2d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0101/pom.xml @@ -0,0 +1,21 @@ + + 4.0.0 + Maven Integration Test :: it0101 + org.apache.maven.its.it0101 + maven-it-it0101 + Test that properties defined in an active profile in the user's + settings are available for interpolation of systemPath in a dependency. + [MNG-2052] + 1.0 + + + + org.apache.maven.its.it0101 + test-dependency + 1 + system + ${basedir}/${libdir}/test-dep.txt + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0101/settings.xml b/its/maven-core-integration-tests/src/test/resources/it0101/settings.xml new file mode 100644 index 0000000000..28c348a54d --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0101/settings.xml @@ -0,0 +1,13 @@ + + + + test + + lib + + + + + test + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0102/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0102/pom.xml new file mode 100644 index 0000000000..e77fe42f60 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0102/pom.xml @@ -0,0 +1,68 @@ + + 4.0.0 + Maven Integration Test :: it0102 + org.apache.maven.its.it0102 + maven-it-it0102 + Test that <activeByDefault/> calculations for profile activation only + use profiles defined in the POM. [MNG-2136] + pom + 1.0 + + + + maven-help-plugin + + + output-pom + generate-resources + + target/effective-pom.txt + + + effective-pom + + + + + + maven-antrun-plugin + + + validate + + + value from external profile: ${profilesXmlValue} + test output: ${testOutput} + + + + run + + + + + + + + + + testInternal + + true + + + Failure + + + + testInternal2 + + user.name + + + Success + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0102/profiles.xml b/its/maven-core-integration-tests/src/test/resources/it0102/profiles.xml new file mode 100644 index 0000000000..090ea76e99 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0102/profiles.xml @@ -0,0 +1,14 @@ + + + + test + + Present + + + + + test + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0102/src/test/verifier/verifications.xml b/its/maven-core-integration-tests/src/test/resources/it0102/src/test/verifier/verifications.xml new file mode 100644 index 0000000000..af46897f46 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0102/src/test/verifier/verifications.xml @@ -0,0 +1,12 @@ + + + + target/effective-pom.txt + value from external profile: Present + + + target/effective-pom.txt + test output: Success + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/level3/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/level3/pom.xml new file mode 100644 index 0000000000..06277a11a9 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/level3/pom.xml @@ -0,0 +1,10 @@ + + 4.0.0 + + org.apache.maven.its.it0103 + level1 + 1 + + level3 + 1 + diff --git a/its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/pom.xml new file mode 100644 index 0000000000..71cc52d25a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0103/level1/level2/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + + org.apache.maven.its.it0103 + level1 + 1 + + level2 + pom + + + level3 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0103/level1/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0103/level1/pom.xml new file mode 100644 index 0000000000..0850a80cac --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0103/level1/pom.xml @@ -0,0 +1,13 @@ + + 4.0.0 + + org.apache.maven.its.it0103 + maven-it-it0103 + 1 + + level1 + pom + + level2 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0103/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0103/pom.xml new file mode 100644 index 0000000000..6e8666259e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0103/pom.xml @@ -0,0 +1,14 @@ + + 4.0.0 + Maven Integration Test :: it0103 + org.apache.maven.its.it0103 + maven-it-it0103 + Verify that multimodule builds where one project references another as + a parent can build, even if that parent is not correctly referenced by + <relativePath/> and is not in the local repository. [MNG-2196] + 1 + pom + + level1 + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0104/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0104/pom.xml new file mode 100644 index 0000000000..1160c9e21b --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0104/pom.xml @@ -0,0 +1,40 @@ + + 4.0.0 + Maven Integration Test :: it0104 + org.apache.maven.its.it0104 + maven-it-it0104 + Verify that plugin configurations are resolved correctly, particularly + when they contain ${project.build.directory} in the string value of a + Map.Entry. + jar + 1.0-SNAPSHOT + Maven Quick Start Archetype + http://maven.apache.org + + + junit + junit + 3.8.1 + test + + + + + + + + maven-surefire-plugin + + + + target.dir + ${project.build.directory} + + + + + + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0104/src/main/java/org/apache/maven/it/App.java b/its/maven-core-integration-tests/src/test/resources/it0104/src/main/java/org/apache/maven/it/App.java new file mode 100644 index 0000000000..2659fcfc52 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0104/src/main/java/org/apache/maven/it/App.java @@ -0,0 +1,13 @@ +package org.apache.maven.it; + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0104/src/test/java/org/apache/maven/it/AppTest.java b/its/maven-core-integration-tests/src/test/resources/it0104/src/test/java/org/apache/maven/it/AppTest.java new file mode 100644 index 0000000000..572ec8e470 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0104/src/test/java/org/apache/maven/it/AppTest.java @@ -0,0 +1,29 @@ +package org.apache.maven.it; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +import java.io.File; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + + /** + * Rigourous Test :-) + */ + public void testApp() + { + + String targetDir = System.getProperty( "target.dir" ); + + System.out.println( "Got 'target.dir' of: '" + targetDir + "'" ); + + assertNotNull( "System property 'target.dir' is not present.", targetDir ); + assertTrue( "System property 'target.dir' was not resolved correctly.", targetDir.indexOf( "${" ) < 0 ); + } +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0105/filter.properties b/its/maven-core-integration-tests/src/test/resources/it0105/filter.properties new file mode 100644 index 0000000000..e69de29bb2 diff --git a/its/maven-core-integration-tests/src/test/resources/it0105/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0105/pom.xml new file mode 100644 index 0000000000..61985dbb0a --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0105/pom.xml @@ -0,0 +1,36 @@ + + 4.0.0 + Maven Integration Test :: it0105 + org.apache.maven.its.it0105 + maven-it-it0105 + MRESOURCES-18 + 1.0 + + + junit + junit + 3.8.1 + jar + test + + + + + + + + src/main/resources + true + + + + + + foo + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0105/src/main/resources/test.properties b/its/maven-core-integration-tests/src/test/resources/it0105/src/main/resources/test.properties new file mode 100644 index 0000000000..79c6bf306e --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0105/src/main/resources/test.properties @@ -0,0 +1,3 @@ +systemProperty=${java.version} +param=${param} +pom.property=${my.property} diff --git a/its/maven-core-integration-tests/src/test/resources/it0105/src/test/java/org/apache/maven/it0105/FilterTest.java b/its/maven-core-integration-tests/src/test/resources/it0105/src/test/java/org/apache/maven/it0105/FilterTest.java new file mode 100644 index 0000000000..398fb8dd1f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0105/src/test/java/org/apache/maven/it0105/FilterTest.java @@ -0,0 +1,49 @@ +package org.apache.maven.it0105; + +import junit.framework.TestCase; + +import java.util.Properties; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; + +public class FilterTest + extends TestCase +{ + private String basedir; + + private Properties properties; + + protected void setUp() + throws Exception + { + basedir = System.getProperty( "basedir" ); + + properties = new Properties(); + + File testPropertiesFile = new File( basedir, "target/classes/test.properties" ); + + assertTrue( testPropertiesFile.exists() ); + + properties.load( new FileInputStream( testPropertiesFile ) ); + } + + public void testSystemPropertyInterpolation() + throws IOException + { + assertEquals( "System property", System.getProperty( "java.version" ), properties.getProperty( "systemProperty" ) ); + } + + public void testParameterInterpolation() + throws IOException + { + assertEquals( "Parameter", System.getProperty( "parameter" ), properties.getProperty( "parameter" ) ); + } + + public void testPomPropertyInterpolation() + throws IOException + { + assertEquals( "Pom Property", "foo", properties.getProperty( "pom.property" ) ); + } + +} diff --git a/its/maven-core-integration-tests/src/test/resources/it0106/A/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0106/A/pom.xml new file mode 100644 index 0000000000..5e7288852f --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0106/A/pom.xml @@ -0,0 +1,28 @@ + + + + + + 4.0.0 + org.apache.maven.its.it0106 + A + 1 + pom + A + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0106/C/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0106/C/pom.xml new file mode 100644 index 0000000000..65a6cc8bba --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0106/C/pom.xml @@ -0,0 +1,31 @@ + + + + + + 4.0.0 + + + org.apache.maven.its.it0106 + B + 1 + + C + pom + C + diff --git a/its/maven-core-integration-tests/src/test/resources/it0106/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0106/pom.xml new file mode 100644 index 0000000000..f9c4a16395 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0106/pom.xml @@ -0,0 +1,39 @@ + + + + + + 4.0.0 + + + org.apache.maven.test.it0106 + A + 1 + A/pom.xml + + + maven-it-it0106 + When a project has modules and its parent is not preinstalled [MNG-2318] + pom + B + + + C + + + diff --git a/its/maven-core-integration-tests/src/test/resources/it0107/pom.xml b/its/maven-core-integration-tests/src/test/resources/it0107/pom.xml new file mode 100644 index 0000000000..a16134d6bd --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/it0107/pom.xml @@ -0,0 +1,32 @@ + + 4.0.0 + Maven Integration Test :: it0107 + org.apache.maven.its.it0107 + maven-it-it0107 + Verify that default implementation of an implementation for a complex object works as + expected [MNG-2293] + pom + 3.8.1 + + + + org.apache.maven.its.plugins + maven-it-plugin-parameter-implementation + 1.0-SNAPSHOT + + param-implementation + + + foobar + class org.apache.maven.plugin.coreit.sub.MyBla-foobar + + + + + + + apache.snapshots + http://people.apache.org/maven-snapshot-repository + + + diff --git a/its/maven-core-integration-tests/src/test/resources/pom.xml b/its/maven-core-integration-tests/src/test/resources/pom.xml new file mode 100644 index 0000000000..f24db45d14 --- /dev/null +++ b/its/maven-core-integration-tests/src/test/resources/pom.xml @@ -0,0 +1,123 @@ + + 4.0.0 + org.apache.maven.its + maven-its + pom + 1.0-SNAPSHOT + + it0000 + it0001 + it0002 + it0003 + it0004 + it0005 + it0006 + it0007 + it0008 + it0009 + it0010 + it0011 + it0012 + it0013 + it0014 + it0016 + it0017 + it0018 + it0019 + it0020 + it0021 + it0022 + it0023 + it0024 + it0025 + it0026 + it0027 + it0028 + it0029 + it0030 + it0031 + it0032 + it0033 + it0034 + it0035 + it0036 + it0037 + it0038 + + it0040 + it0041 + it0042 + + it0044 + it0045 + it0046 + it0047 + it0048 + it0049 + it0050 + it0051 + it0052 + it0053 + it0054 + it0055 + it0056 + it0057 + it0058 + it0059 + it0060 + it0061 + it0062 + it0063 + it0064 + it0065 + + it0067 + it0068 + it0069 + it0070 + it0071 + it0072 + it0073 + it0074 + it0075 + it0076 + it0077 + it0078 + it0079 + it0080 + it0081 + it0082 + it0083 + it0084 + it0085 + it0086 + it0087 + it0088 + it0089 + + + it0092 + it0094 + it0095 + + + + it0099 + it0100 + it0101 + it0102 + it0103 + + + + + + diff --git a/its/maven-core-it-support/1.0/pom.xml b/its/maven-core-it-support/1.0/pom.xml new file mode 100644 index 0000000000..c2906cb933 --- /dev/null +++ b/its/maven-core-it-support/1.0/pom.xml @@ -0,0 +1,33 @@ + + + + + + 4.0.0 + org.apache.maven + maven-core-it-support + jar + 1.0 + + + repo1 + Maven Central Repository + scp://repo1.maven.org/home/projects/maven/repository-staging/to-ibiblio/maven2 + + + diff --git a/its/maven-core-it-support/1.0/src/main/java/org/apache/maven/it/Support.java b/its/maven-core-it-support/1.0/src/main/java/org/apache/maven/it/Support.java new file mode 100644 index 0000000000..84b1906c73 --- /dev/null +++ b/its/maven-core-it-support/1.0/src/main/java/org/apache/maven/it/Support.java @@ -0,0 +1,5 @@ +package org.apache.maven.it; + +public class Support +{ +} diff --git a/its/maven-core-it-support/1.1-old-location/pom.xml b/its/maven-core-it-support/1.1-old-location/pom.xml new file mode 100644 index 0000000000..84f182a078 --- /dev/null +++ b/its/maven-core-it-support/1.1-old-location/pom.xml @@ -0,0 +1,37 @@ + + + + + + 4.0.0 + org.apache.maven + maven-core-it-support-old-location + jar + 1.1 + + + repo1 + Maven Central Repository + scp://repo1.maven.org/home/projects/maven/repository-staging/to-ibiblio/maven2 + + + maven-core-it-support + Testing + + + diff --git a/its/maven-core-it-support/1.1/pom.xml b/its/maven-core-it-support/1.1/pom.xml new file mode 100644 index 0000000000..a711c8dd28 --- /dev/null +++ b/its/maven-core-it-support/1.1/pom.xml @@ -0,0 +1,33 @@ + + + + + + 4.0.0 + org.apache.maven + maven-core-it-support + jar + 1.1 + + + repo1 + Maven Central Repository + scp://repo1.maven.org/home/projects/maven/repository-staging/to-ibiblio/maven2 + + + diff --git a/its/maven-core-it-support/1.1/src/main/java/org/apache/maven/it/Support.java b/its/maven-core-it-support/1.1/src/main/java/org/apache/maven/it/Support.java new file mode 100644 index 0000000000..84b1906c73 --- /dev/null +++ b/its/maven-core-it-support/1.1/src/main/java/org/apache/maven/it/Support.java @@ -0,0 +1,5 @@ +package org.apache.maven.it; + +public class Support +{ +} diff --git a/its/maven-core-it-support/1.2/pom.xml b/its/maven-core-it-support/1.2/pom.xml new file mode 100644 index 0000000000..bdf750ce95 --- /dev/null +++ b/its/maven-core-it-support/1.2/pom.xml @@ -0,0 +1,43 @@ + + + + + + 4.0.0 + org.apache.maven + maven-core-it-support + coreit-packaging + 1.2 + + + repo1 + Maven Central Repository + scp://repo1.maven.org/home/projects/maven/repository-staging/to-ibiblio/maven2 + + + + + + org.apache.maven.plugins + maven-core-it-plugin + 1.0 + true + + + + diff --git a/its/maven-core-it-support/1.2/src/main/java/org/apache/maven/it/Support.java b/its/maven-core-it-support/1.2/src/main/java/org/apache/maven/it/Support.java new file mode 100644 index 0000000000..84b1906c73 --- /dev/null +++ b/its/maven-core-it-support/1.2/src/main/java/org/apache/maven/it/Support.java @@ -0,0 +1,5 @@ +package org.apache.maven.it; + +public class Support +{ +} diff --git a/its/maven-core-it-support/1.3/pom.xml b/its/maven-core-it-support/1.3/pom.xml new file mode 100644 index 0000000000..ec123a5556 --- /dev/null +++ b/its/maven-core-it-support/1.3/pom.xml @@ -0,0 +1,56 @@ + + + + + + 4.0.0 + org.apache.maven + maven-core-it-support + jar + 1.3 + + + repo1 + Maven Central Repository + scp://repo1.maven.org/home/projects/maven/repository-staging/to-ibiblio/maven2 + + + + + + org.apache.maven.plugins + maven-core-it-plugin + 1.0 + true + + + + + + commons-lang + commons-lang + 1.0 + + + junit + junit + + + + + diff --git a/its/maven-core-it-support/1.3/src/main/java/org/apache/maven/it/Support.java b/its/maven-core-it-support/1.3/src/main/java/org/apache/maven/it/Support.java new file mode 100644 index 0000000000..84b1906c73 --- /dev/null +++ b/its/maven-core-it-support/1.3/src/main/java/org/apache/maven/it/Support.java @@ -0,0 +1,5 @@ +package org.apache.maven.it; + +public class Support +{ +} diff --git a/its/maven-core-it-support/1.4/pom.xml b/its/maven-core-it-support/1.4/pom.xml new file mode 100644 index 0000000000..090e6e3a12 --- /dev/null +++ b/its/maven-core-it-support/1.4/pom.xml @@ -0,0 +1,50 @@ + + + + + + 4.0.0 + org.apache.maven + maven-core-it-support + jar + 1.4 + + + repo1 + Maven Central Repository + scp://repo1.maven.org/home/projects/maven/repository-staging/to-ibiblio/maven2 + + + + + + org.apache.maven.plugins + maven-core-it-plugin + 1.0 + true + + + + + + commons-io + commons-io + 1.0 + + + diff --git a/its/maven-core-it-support/1.4/src/main/java/org/apache/maven/it/Support.java b/its/maven-core-it-support/1.4/src/main/java/org/apache/maven/it/Support.java new file mode 100644 index 0000000000..84b1906c73 --- /dev/null +++ b/its/maven-core-it-support/1.4/src/main/java/org/apache/maven/it/Support.java @@ -0,0 +1,5 @@ +package org.apache.maven.it; + +public class Support +{ +} diff --git a/its/maven-it-plugins/maven-it-plugin-context-passing/pom.xml b/its/maven-it-plugins/maven-it-plugin-context-passing/pom.xml new file mode 100644 index 0000000000..7ff9e74347 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-context-passing/pom.xml @@ -0,0 +1,39 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-context-passing + maven-plugin + Maven Integration Test Plugin :: Context Passing + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/CatchMojo.java b/its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/CatchMojo.java new file mode 100644 index 0000000000..01b437f575 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/CatchMojo.java @@ -0,0 +1,78 @@ +package org.apache.maven.plugin.coreit; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.io.Writer; + +/** + * "Catch" a parameter "thrown" by the ThrowMojo through the plugin context, and + * write a file based on it's value to the build output directory. + * + * @goal catch + */ +public class CatchMojo + extends AbstractMojo +{ + + /** + * @parameter expression="${project.build.directory}" + * @required + * @readonly + */ + private File outDir; + + public File getOutDir() + { + return outDir; + } + + public void setOutDir( File outDir ) + { + this.outDir = outDir; + } + + public void execute() + throws MojoExecutionException + { + String value = (String) getPluginContext().get( ThrowMojo.THROWN_PARAMETER ); + + if ( !outDir.exists() ) + { + outDir.mkdirs(); + } + + File outfile = new File( outDir, value ); + + Writer writer = null; + try + { + writer = new FileWriter( outfile ); + + writer.write( value ); + + writer.flush(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Cannot write output file: " + outfile, e ); + } + finally + { + if ( writer != null ) + { + try + { + writer.close(); + } + catch ( IOException e ) + { + } + } + } + } + +} diff --git a/its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/ThrowMojo.java b/its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/ThrowMojo.java new file mode 100644 index 0000000000..d002a9565d --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-context-passing/src/main/java/org/apache/maven/plugin/coreit/ThrowMojo.java @@ -0,0 +1,39 @@ +package org.apache.maven.plugin.coreit; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +/** + * "Throw" a parameter into the plugin context, for the "catch" mojo to + * pickup and process. + * + * @goal throw + */ +public class ThrowMojo + extends AbstractMojo +{ + + public static final String THROWN_PARAMETER = "throw-parameter"; + + /** + * @parameter expression="${value}" default-value="thrown" + */ + private String value; + + public void setValue( String value ) + { + this.value = value; + } + + public String getValue() + { + return value; + } + + public void execute() + throws MojoExecutionException + { + getPluginContext().put( THROWN_PARAMETER, value ); + } + +} diff --git a/its/maven-it-plugins/maven-it-plugin-fork/pom.xml b/its/maven-it-plugins/maven-it-plugin-fork/pom.xml new file mode 100644 index 0000000000..70d7ce83af --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-fork/pom.xml @@ -0,0 +1,44 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-fork + maven-plugin + Maven Integration Test Plugin :: Fork + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + org.apache.maven + maven-project + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItForkerMojo.java b/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItForkerMojo.java new file mode 100644 index 0000000000..cafffad13a --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItForkerMojo.java @@ -0,0 +1,54 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.project.MavenProject; + +/** + * @goal fork + * + * @execute phase="generate-sources" lifecycle="foo" + */ +public class CoreItForkerMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project}" + */ + private MavenProject project; + + /** + * @parameter expression="${executedProject}" + */ + private MavenProject executedProject; + + public void execute() + throws MojoExecutionException + { + if ( !executedProject.getBuild().getFinalName().equals( "coreitified" ) ) + { + throw new MojoExecutionException( "Unexpected result, final name of executed project is " + executedProject.getBuild().getFinalName() ); + } + + if ( project.getBuild().getFinalName().equals( "coreitified" ) ) + { + throw new MojoExecutionException( "forked project was polluted" ); + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItGoalForkerMojo.java b/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItGoalForkerMojo.java new file mode 100644 index 0000000000..1cabc42ec0 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItGoalForkerMojo.java @@ -0,0 +1,54 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.project.MavenProject; + +/** + * @goal fork-goal + * + * @execute goal="touch" + */ +public class CoreItGoalForkerMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project}" + */ + private MavenProject project; + + /** + * @parameter expression="${executedProject}" + */ + private MavenProject executedProject; + + public void execute() + throws MojoExecutionException + { + if ( !executedProject.getBuild().getFinalName().equals( "coreitified" ) ) + { + throw new MojoExecutionException( "Unexpected result, final name of executed project is " + executedProject.getBuild().getFinalName() ); + } + + if ( project.getBuild().getFinalName().equals( "coreitified" ) ) + { + throw new MojoExecutionException( "forked project was polluted" ); + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java b/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java new file mode 100644 index 0000000000..504a3b5a8e --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-fork/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java @@ -0,0 +1,151 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.artifact.Artifact; +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.project.MavenProject; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.Map; + +/** + * @goal touch + * + * @phase process-sources + * + * @description Goal which cleans the build + */ +public class CoreItMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project}" + */ + private MavenProject project; + + /** + * @parameter expression="${project.build.directory}" + * @required + */ + private String outputDirectory; + + /** Test setting of plugin-artifacts on the PluginDescriptor instance. + * @parameter expression="${plugin.artifactMap}" + * @required + */ + private Map pluginArtifacts; + + /** + * @parameter expression="target/test-basedir-alignment" + */ + private File basedirAlignmentDirectory; + + /** + * @parameter alias="pluginFile" + */ + private String pluginItem = "foo"; + + /** + * @parameter + */ + private String goalItem = "bar"; + + /** + * @parameter expression="${artifactToFile}" + */ + private String artifactToFile; + + /** + * @parameter expression="${fail}" + */ + private boolean fail = false; + + public void execute() + throws MojoExecutionException + { + if ( fail ) + { + throw new MojoExecutionException( "Failing per \'fail\' parameter (specified in pom or system properties)" ); + } + + touch( new File( outputDirectory ), "touch.txt" ); + + // This parameter should be aligned to the basedir as the parameter type is specified + // as java.io.File + + if ( basedirAlignmentDirectory.getPath().equals( "target/test-basedir-alignment" ) ) + { + throw new MojoExecutionException( "basedirAlignmentDirectory not aligned" ); + } + + touch( basedirAlignmentDirectory, "touch.txt" ); + + File outDir = new File( outputDirectory ); + + // Test parameter setting + if ( pluginItem != null ) + { + touch( outDir, pluginItem ); + } + + if ( goalItem != null ) + { + touch( outDir, goalItem ); + } + + if ( artifactToFile != null ) + { + Artifact artifact = (Artifact) pluginArtifacts.get( artifactToFile ); + + File artifactFile = artifact.getFile(); + + String filename = artifactFile.getAbsolutePath().replace('/', '_').replace(':', '_') + ".txt"; + + touch( outDir, filename ); + } + + project.getBuild().setFinalName( "coreitified" ); + } + + private static void touch( File dir, String file ) + throws MojoExecutionException + { + try + { + if ( !dir.exists() ) + { + dir.mkdirs(); + } + + File touch = new File( dir, file ); + + FileWriter w = new FileWriter( touch ); + + w.write( file ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error touching file", e ); + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-fork/src/main/resources/META-INF/maven/lifecycle.xml b/its/maven-it-plugins/maven-it-plugin-fork/src/main/resources/META-INF/maven/lifecycle.xml new file mode 100644 index 0000000000..9504c71e0c --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-fork/src/main/resources/META-INF/maven/lifecycle.xml @@ -0,0 +1,28 @@ + + + foo + + + generate-sources + + + + ${project.build.directory}/forked + + + touch + + + + + ${project.build.directory}/forked2 + + + touch + + + + + + + diff --git a/its/maven-it-plugins/maven-it-plugin-generate-envar-properties/pom.xml b/its/maven-it-plugins/maven-it-plugin-generate-envar-properties/pom.xml new file mode 100644 index 0000000000..1e892fbef3 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-generate-envar-properties/pom.xml @@ -0,0 +1,39 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-generate-envar-properties + maven-plugin + Maven Integration Test Plugin :: Envar + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-generate-envar-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedEnvarConfigurationMojo.java b/its/maven-it-plugins/maven-it-plugin-generate-envar-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedEnvarConfigurationMojo.java new file mode 100644 index 0000000000..88b9bb1be2 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-generate-envar-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedEnvarConfigurationMojo.java @@ -0,0 +1,52 @@ +package org.apache.maven.plugin.coreit; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.util.Properties; +import java.io.FileOutputStream; +import java.io.File; + +/** + * Interpolate some envars that are embedded in the POM and make sure they pass through + * the system. + * + * @goal generate-envar-properties + */ +public class InterpolatedEnvarConfigurationMojo + extends AbstractMojo +{ + /** + * @parameter expression="${basedir}" + */ + private String basedir; + + /** + * @parameter expression="${mavenTestEnvar}" + */ + private String mavenTestEnvar; + + public void execute() + throws MojoExecutionException + { + if ( mavenTestEnvar == null ) + { + throw new MojoExecutionException( "The mavenTestEnvar field should not be null! You must run this using the maven-core-it scripts! "); + } + + try + { + Properties mojoGeneratedPropeties = new Properties(); + + mojoGeneratedPropeties.put( "maven.test.envar", mavenTestEnvar ); + + FileOutputStream fos = new FileOutputStream( new File( basedir, "target/mojo-generated.properties" ) ); + + mojoGeneratedPropeties.store( fos, "# Properties generated by the execution of a mojo that uses interpolated envar values." ); + } + catch( Exception e ) + { + getLog().error( "Error creating mojo generated properties.", e ); + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-generate-properties/pom.xml b/its/maven-it-plugins/maven-it-plugin-generate-properties/pom.xml new file mode 100644 index 0000000000..6600581c9b --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-generate-properties/pom.xml @@ -0,0 +1,39 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-generate-properties + maven-plugin + Maven Integration Test Plugin :: Interpolated POM Configuration + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-generate-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedPomConfigurationMojo.java b/its/maven-it-plugins/maven-it-plugin-generate-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedPomConfigurationMojo.java new file mode 100644 index 0000000000..04e791edc4 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-generate-properties/src/main/java/org/apache/maven/plugin/coreit/InterpolatedPomConfigurationMojo.java @@ -0,0 +1,65 @@ +package org.apache.maven.plugin.coreit; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.util.Properties; +import java.io.FileOutputStream; +import java.io.File; + +/** + * Take some configuration values that use interpolated POM values and write them to a properties file + * to make sure they are passing through the system properly. We have reports (MNG-1927) that we're + * + * @goal generate-properties + */ +public class InterpolatedPomConfigurationMojo + extends AbstractMojo +{ + /** + * @parameter expression="${basedir}" + */ + private String basedir; + + /** + * @parameter expression="${projectBuildDirectory}" + */ + private String projectBuildDirectory; + + /** + * @parameter expression="${targetDirectoryString}" + */ + private String targetDirectoryString; + + /** + * @parameter expression="${targetDirectoryFile}" + */ + private File targetDirectoryFile; + + public void execute() + throws MojoExecutionException + { + try + { + Properties mojoGeneratedPropeties = new Properties(); + + mojoGeneratedPropeties.put( "project.build.directory", projectBuildDirectory ); + if ( targetDirectoryString != null ) + { + mojoGeneratedPropeties.put( "targetDirectoryString", targetDirectoryString ); + } + if ( targetDirectoryFile != null ) + { + mojoGeneratedPropeties.put( "targetDirectoryFile", targetDirectoryFile.getAbsolutePath() ); + } + + FileOutputStream fos = new FileOutputStream( new File( basedir, "target/mojo-generated.properties" ) ); + + mojoGeneratedPropeties.store( fos, "# Properties generated by the execution of a mojo that uses interpolated POM values for configuration." ); + } + catch( Exception e ) + { + getLog().error( "Error creating mojo generated properties.", e ); + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-loadable/pom.xml b/its/maven-it-plugins/maven-it-plugin-loadable/pom.xml new file mode 100644 index 0000000000..2edd0ec5a9 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-loadable/pom.xml @@ -0,0 +1,44 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-loadable + maven-plugin + Maven Integration Test Plugin :: Loadable + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + bsh + bsh + 1.3.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-loadable/src/main/java/org/apache/maven/plugin/coreit/LoadableMojo.java b/its/maven-it-plugins/maven-it-plugin-loadable/src/main/java/org/apache/maven/plugin/coreit/LoadableMojo.java new file mode 100644 index 0000000000..a8752e5635 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-loadable/src/main/java/org/apache/maven/plugin/coreit/LoadableMojo.java @@ -0,0 +1,59 @@ +package org.apache.maven.plugin.coreit; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoFailureException; + +/** + * @goal loadable + * @requiresDependencyResolution test + */ +public class LoadableMojo + extends AbstractMojo +{ + /** + * @parameter + * @required + */ + private String className; + + public void execute() throws MojoFailureException + { + if ( !load( true ) || !load( false ) ) + { + throw new MojoFailureException( this, "Class-loading test failed..", "Failed to load class: " + className + " using one or more methods." ); + } + } + + private boolean load( boolean useContextClassloader ) throws MojoFailureException + { + getLog().info( "Executing in java version: " + System.getProperty( "java.version" ) ); + + ClassLoader cl; + if ( useContextClassloader ) + { + cl = Thread.currentThread().getContextClassLoader(); + } + else + { + cl = this.getClass().getClassLoader(); + } + + getLog().info( "Attepting to load: " + className + " from: " + cl + (useContextClassloader ? " (context classloader)" : "" ) ); + + try + { + Class result = cl.loadClass( className ); + + getLog().info( "Load succeeded." ); + + return true; + } + catch ( ClassNotFoundException e ) + { + getLog().info( "Failed to load class: " + className + + (useContextClassloader ? " using context classloader" : "") ); + + return false; + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-no-project/pom.xml b/its/maven-it-plugins/maven-it-plugin-no-project/pom.xml new file mode 100644 index 0000000000..881407feca --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-no-project/pom.xml @@ -0,0 +1,39 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-no-project + maven-plugin + Maven Core Integration Test Plugin + 1.1-SNAPSHOT + 2001 + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-no-project/src/main/java/org/apache/maven/plugin/coreit/NoProjectMojo.java b/its/maven-it-plugins/maven-it-plugin-no-project/src/main/java/org/apache/maven/plugin/coreit/NoProjectMojo.java new file mode 100644 index 0000000000..d36cc6e1c7 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-no-project/src/main/java/org/apache/maven/plugin/coreit/NoProjectMojo.java @@ -0,0 +1,79 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.Map; + +/** + * Mojo which touches a file without requiring a project. + * + * @goal light-touch + * @requiresProject false + * + */ +public class NoProjectMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project.build.directory}" + * @required + */ + private String outputDirectory; + + /** + * @parameter expression="target/test-basedir-alignment" + */ + private File basedirAlignmentDirectory; + + public void execute() + throws MojoExecutionException + { + touch( new File( outputDirectory ), "touch.txt" ); + } + + private void touch( File dir, String file ) + throws MojoExecutionException + { + try + { + if ( !dir.exists() ) + { + dir.mkdirs(); + } + + File touch = new File( dir, file ); + + getLog().info( "Touching: " + touch ); + + FileWriter w = new FileWriter( touch ); + + w.write( file ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error touching file", e ); + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-packaging/pom.xml b/its/maven-it-plugins/maven-it-plugin-packaging/pom.xml new file mode 100644 index 0000000000..8326e7679e --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-packaging/pom.xml @@ -0,0 +1,54 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-packaging + maven-plugin + Maven Integration Test Plugin :: Packaging + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + org.apache.maven + maven-project + 2.0 + + + org.apache.maven + maven-artifact + 2.0 + + + org.apache.maven + maven-archiver + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-packaging/src/main/java/org/apache/maven/plugin/coreit/PackagingMojo.java b/its/maven-it-plugins/maven-it-plugin-packaging/src/main/java/org/apache/maven/plugin/coreit/PackagingMojo.java new file mode 100644 index 0000000000..8347fa7324 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-packaging/src/main/java/org/apache/maven/plugin/coreit/PackagingMojo.java @@ -0,0 +1,81 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2005 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.archiver.MavenArchiver; +import org.apache.maven.archiver.MavenArchiveConfiguration; +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.project.MavenProject; +import org.codehaus.plexus.archiver.jar.JarArchiver; + +import java.io.File; + +/** + * @author Brett Porter + * @version $Id$ + * @goal package + */ +public class PackagingMojo + extends AbstractMojo +{ + + /** + * @parameter expression="${project}" + * @required + */ + private MavenProject project; + + /** + * @parameter expression="${project.build.finalName}" + * @required + */ + private String finalName; + + /** + * @parameter expression="${project.build.directory}" + * @required + * @readonly + */ + private String outputDirectory; + + public void execute() + throws MojoExecutionException + { + File jarFile = new File( outputDirectory, finalName + "-it.jar" ); + + MavenArchiver archiver = new MavenArchiver(); + + archiver.setArchiver( new JarArchiver() ); + + archiver.setOutputFile( jarFile ); + + try + { + archiver.createArchive( project, new MavenArchiveConfiguration() ); + } + catch ( Exception e ) + { + // TODO: improve error handling + throw new MojoExecutionException( "Error assembling JAR", e ); + } + + project.getArtifact().setFile( jarFile ); + } + +} + diff --git a/its/maven-it-plugins/maven-it-plugin-packaging/src/main/resources/META-INF/plexus/components.xml b/its/maven-it-plugins/maven-it-plugin-packaging/src/main/resources/META-INF/plexus/components.xml new file mode 100644 index 0000000000..a89159d4c5 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-packaging/src/main/resources/META-INF/plexus/components.xml @@ -0,0 +1,27 @@ + + + + org.apache.maven.lifecycle.mapping.LifecycleMapping + it-packaging + org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping + + + org.apache.maven.its.plugins:maven-it-plugin-packaging:package + org.apache.maven.plugins:maven-install-plugin:install + org.apache.maven.plugins:maven-deploy-plugin:deploy + + + + + org.apache.maven.artifact.handler.ArtifactHandler + it-artifact + org.apache.maven.artifact.handler.DefaultArtifactHandler + + it-artifact + jar + it-packaging + it + + + + diff --git a/its/maven-it-plugins/maven-it-plugin-parameter-implementation/pom.xml b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/pom.xml new file mode 100644 index 0000000000..bdda15ca46 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/pom.xml @@ -0,0 +1,39 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-parameter-implementation + maven-plugin + Maven Integration Test Plugin :: Parameter Implementation + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/Bla.java b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/Bla.java new file mode 100644 index 0000000000..98f472755e --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/Bla.java @@ -0,0 +1,7 @@ +package org.apache.maven.plugin.coreit; + +/** + */ +public interface Bla +{ +} diff --git a/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/ParameterImplementationMojo.java b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/ParameterImplementationMojo.java new file mode 100644 index 0000000000..40cfad5901 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/ParameterImplementationMojo.java @@ -0,0 +1,42 @@ +package org.apache.maven.plugin.coreit; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +/** + * Check that we correctly use the implementation parameter. See MNG-2293 + * + * @goal param-implementation + * @description Prints out the name of the implementation of the bla field. + */ +public class ParameterImplementationMojo + extends AbstractMojo +{ + + /** + * @parameter implementation="org.apache.maven.plugin.coreit.sub.MyBla" + * @required + */ + private Bla bla; + + /** + * The expected value of bla.toString(). + * + * @parameter + * @required + */ + private String expected; + + public void execute() + throws MojoExecutionException + { + + getLog().info( "bla: " + bla ); + + if ( ! expected.equals( bla.toString() ) ) + { + throw new MojoExecutionException( "Expected '" + expected + "'; found '" + bla + "'" ); + } + } + +} diff --git a/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/sub/MyBla.java b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/sub/MyBla.java new file mode 100644 index 0000000000..b4328404df --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-parameter-implementation/src/main/java/org/apache/maven/plugin/coreit/sub/MyBla.java @@ -0,0 +1,26 @@ +package org.apache.maven.plugin.coreit.sub; + +import org.apache.maven.plugin.coreit.Bla; + +/** + */ +public class MyBla + implements Bla +{ + private String field; + + public String getField() + { + return field; + } + + public void setField( String field ) + { + this.field = field; + } + + public String toString() + { + return getClass() + "-" + field; + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-setter/pom.xml b/its/maven-it-plugins/maven-it-plugin-setter/pom.xml new file mode 100644 index 0000000000..454f384273 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-setter/pom.xml @@ -0,0 +1,39 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-setter + maven-plugin + Maven Integration Test Plugin :: Setter + 1.0-SNAPSHOT + 2006 + + + org.apache.maven + maven-plugin-api + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-setter/src/main/java/org/apache/maven/plugin/coreit/CoreItMojoWithSetters.java b/its/maven-it-plugins/maven-it-plugin-setter/src/main/java/org/apache/maven/plugin/coreit/CoreItMojoWithSetters.java new file mode 100644 index 0000000000..c2c5f3b7d0 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-setter/src/main/java/org/apache/maven/plugin/coreit/CoreItMojoWithSetters.java @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2005 Your Corporation. All Rights Reserved. + */ +package org.apache.maven.plugin.coreit; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + +/** + * @goal setter-touch + * + * @description Goal which cleans the build + */ +public class CoreItMojoWithSetters + extends AbstractMojo +{ + /** + * @parameter + * property="outputDirectory" + * expression="${project.build.directory}" + * @required + */ + private String outputDirectoryValue; + + /** + * @parameter property="foo" + */ + private String fooValue; + + /** + * @parameter + */ + private String bar; + + // ---------------------------------------------------------------------- + // Setters + // ---------------------------------------------------------------------- + + public void setOutputDirectory( String outputDirectory ) + { + this.outputDirectoryValue = outputDirectory; + } + + boolean setFooSetterExecuted; + + public void setFoo( String fooValue ) + { + this.fooValue = fooValue; + + setFooSetterExecuted = true; + } + + boolean setBarSetterExecuted; + + public void setBar( String barValue ) + { + this.bar = barValue + ".baz"; + + setBarSetterExecuted = true; + } + + // ---------------------------------------------------------------------- + // + // ---------------------------------------------------------------------- + + + public void execute() + throws MojoExecutionException + { + touch( new File( outputDirectoryValue ), "touch.txt" ); + + File outDir = new File( outputDirectoryValue ); + + // Test parameter setting + if ( fooValue != null && setFooSetterExecuted ) + { + touch( outDir, fooValue ); + } + + if ( bar != null && setBarSetterExecuted ) + { + touch( outDir, bar ); + } + } + + private static void touch( File dir, String file ) + throws MojoExecutionException + { + try + { + if ( !dir.exists() ) + { + dir.mkdirs(); + } + + File touch = new File( dir, file ); + + FileWriter w = new FileWriter( touch ); + + w.write( file ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error touching file", e ); + } + } +} diff --git a/its/maven-it-plugins/maven-it-plugin-touch/pom.xml b/its/maven-it-plugins/maven-it-plugin-touch/pom.xml new file mode 100644 index 0000000000..2dcb1e75d8 --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-touch/pom.xml @@ -0,0 +1,54 @@ + + + + + + + maven-it-plugins + org.apache.maven.its.plugins + 1-SNAPSHOT + + 4.0.0 + maven-it-plugin-touch + maven-plugin + Maven Integration Test Plugin :: Touch + 1.0-SNAPSHOT + 2001 + + + org.apache.maven + maven-plugin-api + 2.0 + + + org.apache.maven + maven-project + 2.0 + + + org.apache.maven + maven-artifact + 2.0 + + + org.apache.maven + maven-archiver + 2.0 + + + diff --git a/its/maven-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java b/its/maven-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java new file mode 100644 index 0000000000..504a3b5a8e --- /dev/null +++ b/its/maven-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java @@ -0,0 +1,151 @@ +package org.apache.maven.plugin.coreit; + +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + +import org.apache.maven.artifact.Artifact; +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.project.MavenProject; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.Map; + +/** + * @goal touch + * + * @phase process-sources + * + * @description Goal which cleans the build + */ +public class CoreItMojo + extends AbstractMojo +{ + /** + * @parameter expression="${project}" + */ + private MavenProject project; + + /** + * @parameter expression="${project.build.directory}" + * @required + */ + private String outputDirectory; + + /** Test setting of plugin-artifacts on the PluginDescriptor instance. + * @parameter expression="${plugin.artifactMap}" + * @required + */ + private Map pluginArtifacts; + + /** + * @parameter expression="target/test-basedir-alignment" + */ + private File basedirAlignmentDirectory; + + /** + * @parameter alias="pluginFile" + */ + private String pluginItem = "foo"; + + /** + * @parameter + */ + private String goalItem = "bar"; + + /** + * @parameter expression="${artifactToFile}" + */ + private String artifactToFile; + + /** + * @parameter expression="${fail}" + */ + private boolean fail = false; + + public void execute() + throws MojoExecutionException + { + if ( fail ) + { + throw new MojoExecutionException( "Failing per \'fail\' parameter (specified in pom or system properties)" ); + } + + touch( new File( outputDirectory ), "touch.txt" ); + + // This parameter should be aligned to the basedir as the parameter type is specified + // as java.io.File + + if ( basedirAlignmentDirectory.getPath().equals( "target/test-basedir-alignment" ) ) + { + throw new MojoExecutionException( "basedirAlignmentDirectory not aligned" ); + } + + touch( basedirAlignmentDirectory, "touch.txt" ); + + File outDir = new File( outputDirectory ); + + // Test parameter setting + if ( pluginItem != null ) + { + touch( outDir, pluginItem ); + } + + if ( goalItem != null ) + { + touch( outDir, goalItem ); + } + + if ( artifactToFile != null ) + { + Artifact artifact = (Artifact) pluginArtifacts.get( artifactToFile ); + + File artifactFile = artifact.getFile(); + + String filename = artifactFile.getAbsolutePath().replace('/', '_').replace(':', '_') + ".txt"; + + touch( outDir, filename ); + } + + project.getBuild().setFinalName( "coreitified" ); + } + + private static void touch( File dir, String file ) + throws MojoExecutionException + { + try + { + if ( !dir.exists() ) + { + dir.mkdirs(); + } + + File touch = new File( dir, file ); + + FileWriter w = new FileWriter( touch ); + + w.write( file ); + + w.close(); + } + catch ( IOException e ) + { + throw new MojoExecutionException( "Error touching file", e ); + } + } +} diff --git a/its/maven-it-plugins/pom.xml b/its/maven-it-plugins/pom.xml new file mode 100644 index 0000000000..99d48a9d61 --- /dev/null +++ b/its/maven-it-plugins/pom.xml @@ -0,0 +1,24 @@ + + + integration-tests + org.apache.maven.its + 1-SNAPSHOT + + 4.0.0 + org.apache.maven.its.plugins + maven-it-plugins + 1-SNAPSHOT + pom + + maven-it-plugin-context-passing + maven-it-plugin-fork + maven-it-plugin-generate-envar-properties + maven-it-plugin-generate-properties + maven-it-plugin-loadable + maven-it-plugin-no-project + maven-it-plugin-packaging + maven-it-plugin-parameter-implementation + maven-it-plugin-setter + maven-it-plugin-touch + + diff --git a/its/maven-it-plugins/used.txt b/its/maven-it-plugins/used.txt new file mode 100644 index 0000000000..a6b7a9368c --- /dev/null +++ b/its/maven-it-plugins/used.txt @@ -0,0 +1,8 @@ +it0071 touch +it0073 context-passing +it0082 touch +it0086 loadable +it0087 loadable +it0088 generate-properties +it0090 interpolated-pom-configuration +it0107 parameter-implementation diff --git a/its/mavenexecute.pl b/its/mavenexecute.pl new file mode 100644 index 0000000000..2b9b4427b4 --- /dev/null +++ b/its/mavenexecute.pl @@ -0,0 +1,331 @@ +#!/usr/bin/perl + +# DO NOT EXECUTE THIS SCRIPT!!!!!! +# This script was used to generate the new IT structure and we're leaving it around for safe keeping +# but the transfer to the new mechanism has been made. + +use File::Path; +use strict; + +my $dirname = "maven-core-it"; +my $newITs = "maven-core-integration-tests"; +my $newITsResources = "$newITs/src/test/resources"; + + +open( FILE, "$dirname/integration-tests-descriptions.txt" ) or die; +undef $/; +my $readme = ; +close( FILE ); + +$/ = "\n"; + +my @descriptions = $readme =~ m/(it\d+\: .*?)(?=\nit\d+\:|$)/gsx; +my %comment; +for my $desc (@descriptions) { + my ($name, $value) = ($desc =~ m/^(it\d+)\: (.*)$/s); + chomp ($value); + $comment{$name} = $value; +} + +rmtree($newITs); +mkpath($newITs); + +open (POM, "> $newITs/pom.xml" ); +print POM < + 4.0.0 + org.apache.maven.integrationtests + maven-core-integrationtests + 1.0-SNAPSHOT + Maven Integration Tests + + + + org.apache.maven.plugins + maven-surefire-plugin + + + **/IntegrationTestSuite.java + + never + + + + + + + org.apache.maven.shared + maven-verifier + 1.0-SNAPSHOT + + + junit + junit + 3.8.1 + test + + + +END + +close POM; + +my $suiteRoot = "$newITs/src/test/java/org/apache/maven/integrationtests"; +mkpath($suiteRoot); +mkpath($newITsResources); + +open( SUITE, "> $suiteRoot/IntegrationTestSuite.java" ); +print SUITE </\>/gs; + if (-e $testPomFile) { + my $testPom; + { + local( $/, *TESTPOM ); + open (TESTPOM, "<$testPomFile"); + $testPom = ; + close TESTPOM; + } + # drop the existing description, if there is one + $testPom =~ s!.*?!!s; + # insert the test description into the POM + $testPom =~ s^(?!.*)(\s+)<^\1$testDescriptionEscaped\1<^sx; + my $testDescriptionMatcher = quotemeta($testDescriptionEscaped); + die "failed to insert description in $testProjectDirectory/pom.xml " unless ($testPom =~ m/$testDescriptionMatcher/s); + open (TESTPOM, ">$testPomFile"); + print TESTPOM $testPom; + close TESTPOM; + } + unlink("$testProjectDirectory/cli-options.txt"); + unlink("$testProjectDirectory/system.properties"); + unlink("$testProjectDirectory/verifier.properties"); + unlink("$testProjectDirectory/goals.txt"); + unlink("$testProjectDirectory/expected-results.txt"); + unlink("$testProjectDirectory/prebuild-hook.txt"); + unlink("$testProjectDirectory/log.txt"); + + open( T, "> $testFile") or die; + print $filename . "\n"; + print T <) { + if ($line =~ /^(rm|rmdir) (.*)/) { + my ($cmd, $path) = ($1, $2); + + if ($cmd eq "rm") { + if ($path =~ m/^\$\{artifact:([^:]*?):([^:]*?):([^:]*?):([^:]*?)\}$/) { + print T "verifier.deleteArtifact(\"$1\", \"$2\", \"$3\", \"$4\");\n"; + } else { + print T "FileUtils.deleteFile(new File(basedir, \"$path\"));\n"; + } + } elsif ($cmd eq "rmdir") { + print T "FileUtils.deleteDirectory(new File(basedir, \"$path\"));\n"; + } else { + die ("wtf? $line\n"); + } + } + else { + die ("unexpected command: $line\n"); + } + } + close FILE; + } + + if (-e "$fileCliOptions") { + open(FILE, $fileCliOptions); + my $cliOptions = ; + chomp ($cliOptions); + $cliOptions =~ s/"/\\"/g; + print T "List cliOptions = new ArrayList();\n"; + print T "cliOptions.add(\"$cliOptions\");\n"; + print T "verifier.setCliOptions(cliOptions);\n"; + close FILE; + } + if (-e "$fileSystemProperties") { + open(FILE, $fileSystemProperties); + print T "Properties systemProperties = new Properties();\n"; + while (my $line = ) { + next if ($line =~ m/^\s*\#/); + my ($name, $value) = ($line =~ m/^([^=]*)=(.*)/); + print T "systemProperties.put(\"$name\", \"$value\");\n"; + } + print T "verifier.setSystemProperties(systemProperties);\n"; + close FILE; + } + if (-e "$fileVerifierProperties") { + open(FILE, $fileVerifierProperties); + print T "Properties verifierProperties = new Properties();\n"; + while (my $line = ) { + next if ($line =~ m/^\s*\#/); + my ($name, $value) = ($line =~ m/^([^=]*)=(.*)/); + if ($name eq "failOnErrorOutput" and $value eq "false") { + $failOnErrorOutput = 0; + } + print T "verifierProperties.put(\"$name\", \"$value\");\n"; + } + print T "verifier.setVerifierProperties(verifierProperties);\n"; + close FILE; + } + + open (FILE, $fileGoals) or die "Couldn't open $fileGoals: $!\n"; + + my @goals = (); + while (my $line = ) { + next if ($line =~ m/^\s*$/); + chomp ($line); + push (@goals, $line); + } + if (scalar(@goals) == 1) { + print T "verifier.executeGoal(\"$goals[0]\");\n"; + } else { + print T "List goals = Arrays.asList(new String[] {"; + for (my $i = 0; $i < @goals; $i++) { + print T "\"$goals[$i]\""; + print T ", " if ($i != scalar(@goals) -1); + } + print T "});\n"; + print T "verifier.executeGoals(goals);\n"; + } + + close FILE; + + if (-e $fileExpectedResults) { + + open (FILE, $fileExpectedResults) or die "Couldn't open $fileExpectedResults: $!\n"; + + while (my $line = ) { + chomp ($line); + #print T ("OLDLINE: $line\n"); + if ($line =~ /^\#(.*)/) { + print T "//$1\n"; + next; + } + if ($line =~ m/^\!\$\{artifact:([^:]*?):([^:]*?):([^:]*?):([^:]*?)\}$/) { + print T "verifier.assertArtifactNotPresent(\"$1\", \"$2\", \"$3\", \"$4\");\n"; + } elsif ($line =~ m/^\$\{artifact:([^:]*?):([^:]*?):([^:]*?):([^:]*?)\}$/) { + print T "verifier.assertArtifactPresent(\"$1\", \"$2\", \"$3\", \"$4\");\n"; + } elsif ($line =~ m/^\!(.*)/) { + print T "verifier.assertFileNotPresent(\"$1\");\n"; + } else { + print T "verifier.assertFilePresent(\"$line\");\n"; + } + } + close FILE; + } + + if ($failOnErrorOutput) { + print T "verifier.verifyErrorFreeLog();\n"; + } else { + print T "// don't verify error free log\n"; + } + print T "verifier.resetStreams();\n"; + print T "System.out.println(\"PASS\");\n"; + print T "}}\n\n"; + +} + +# DGF end of the suite +print SUITE < + 4.0.0 + + org.apache.maven + maven-parent + 1 + ../pom/maven/pom.xml + + org.apache.maven.its + integration-tests + 1-SNAPSHOT + Maven Integration Testing + pom + http://maven.apache.org + + scm:svn:http://svn.apache.org/repos/asf/maven/integration-tests/trunk + scm:svn:https://svn.apache.org/repos/asf/maven/integration-tests/trunk + http://svn.apache.org/viewcvs.cgi/maven/integration-tests/trunk + + + jira + http://jira.codehaus.org/browse/MNG + + + + Maven User List + users-subscribe@maven.apache.org + users-unsubscribe@maven.apache.org + users@maven.apache.org + http://mail-archives.apache.org/mod_mbox/maven-users + + http://www.mail-archive.com/users@maven.apache.org/ + http://www.nabble.com/Maven---Users-f178.html + + + + Maven Developer List + dev-subscribe@maven.apache.org + dev-unsubscribe@maven.apache.org + dev@maven.apache.org + http://mail-archives.apache.org/mod_mbox/maven-dev + + + Maven Commits List + commits-subscribe@maven.apache.org + commits-unsubscribe@maven.apache.org + commits@maven.apache.org + http://mail-archives.apache.org/mod_mbox/maven-dev + + + + maven-it-plugins + + diff --git a/its/pom.xml.release b/its/pom.xml.release new file mode 100644 index 0000000000..ce0af1bf55 --- /dev/null +++ b/its/pom.xml.release @@ -0,0 +1,54 @@ + + 4.0.0 + + org.apache.maven + maven-parent + 1 + ../pom/maven/pom.xml + + org.apache.maven.its + integration-tests + 1 + Maven Integration Testing + pom + http://maven.apache.org + + scm:svn:http://svn.apache.org/repos/asf/maven/integration-tests/tags/integration-tests-1 + scm:svn:https://svn.apache.org/repos/asf/maven/integration-tests/tags/integration-tests-1 + http://svn.apache.org/viewcvs.cgi/maven/integration-tests/tags/integration-tests-1 + + + jira + http://jira.codehaus.org/browse/MNG + + + + Maven User List + users-subscribe@maven.apache.org + users-unsubscribe@maven.apache.org + users@maven.apache.org + http://mail-archives.apache.org/mod_mbox/maven-users + + http://www.mail-archive.com/users@maven.apache.org/ + http://www.nabble.com/Maven---Users-f178.html + + + + Maven Developer List + dev-subscribe@maven.apache.org + dev-unsubscribe@maven.apache.org + dev@maven.apache.org + http://mail-archives.apache.org/mod_mbox/maven-dev + + + Maven Commits List + commits-subscribe@maven.apache.org + commits-unsubscribe@maven.apache.org + commits@maven.apache.org + http://mail-archives.apache.org/mod_mbox/maven-dev + + + + maven-it-plugins + + diff --git a/its/run.sh b/its/run.sh new file mode 100755 index 0000000000..95fd4ebb54 --- /dev/null +++ b/its/run.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +m2Versions="2.0.1 2.0.2 2.0.3 2.0.4" + +for i in $m2Versions +do + echo "Testing against version $i" + M2_HOME=$HOME/maven-${i} + mvn clean test +done