This is an automated email from the ASF dual-hosted git repository. slachiewicz pushed a commit to branch MCHECKSTYLE-99 in repository https://gitbox.apache.org/repos/asf/maven-checkstyle-plugin.git
commit 2f45933ff9ce22413dcededc5be9a8f48b9942df Author: Stefan Paal <[email protected]> AuthorDate: Sun Jul 12 20:20:29 2020 +0200 [MCHECKSTYLE-99] <includeTestSourceDirectory> should use default test sources xref output dir: ${project.reporting.outputDirectory}/xref-test - add parameter xrefTestLocation - use xrefTestLocation to create jxr report links for test source file - add integration tests - do not use StringUtils.isEmpty but explicitly evaluate the string content Closes #34 --- .../invoker.properties | 18 +++++ .../pom.xml | 73 +++++++++++++++++++ .../src/main/java/com/example/App.java | 32 ++++++++ .../src/test/java/com/example/AppTest.java | 57 +++++++++++++++ .../verify.groovy | 26 +++++++ src/it/MCHECKSTYLE-99/invoker.properties | 18 +++++ src/it/MCHECKSTYLE-99/pom.xml | 72 ++++++++++++++++++ .../src/main/java/com/example/App.java | 32 ++++++++ .../src/test/java/com/example/AppTest.java | 57 +++++++++++++++ src/it/MCHECKSTYLE-99/verify.groovy | 26 +++++++ .../checkstyle/AbstractCheckstyleReport.java | 85 ++++++++++++++++------ .../checkstyle/CheckstyleReportGenerator.java | 55 +++++++++++++- src/test/plugin-configs/custom-plugin-config.xml | 1 + .../dep-resolution-exception-plugin-config.xml | 1 + .../plugin-configs/fail-on-error-plugin-config.xml | 1 + src/test/plugin-configs/min-plugin-config.xml | 1 + src/test/plugin-configs/multi-plugin-config.xml | 1 + src/test/plugin-configs/no-files-plugin-config.xml | 1 + src/test/plugin-configs/no-rules-plugin-config.xml | 1 + .../plugin-configs/no-severity-plugin-config.xml | 1 + .../plugin-configs/no-source-plugin-config.xml | 1 + .../test-source-directory-plugin-config.xml | 1 + src/test/plugin-configs/useFile-plugin-config.xml | 1 + 23 files changed, 536 insertions(+), 26 deletions(-) diff --git a/src/it/MCHECKSTYLE-99-custom-xref-test-location/invoker.properties b/src/it/MCHECKSTYLE-99-custom-xref-test-location/invoker.properties new file mode 100644 index 0000000..4adad81 --- /dev/null +++ b/src/it/MCHECKSTYLE-99-custom-xref-test-location/invoker.properties @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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. + +invoker.goals=clean checkstyle:checkstyle diff --git a/src/it/MCHECKSTYLE-99-custom-xref-test-location/pom.xml b/src/it/MCHECKSTYLE-99-custom-xref-test-location/pom.xml new file mode 100644 index 0000000..2c3839f --- /dev/null +++ b/src/it/MCHECKSTYLE-99-custom-xref-test-location/pom.xml @@ -0,0 +1,73 @@ +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>com.example</groupId> + <artifactId>checkstyle-new</artifactId> + <packaging>jar</packaging> + <version>1.0-SNAPSHOT</version> + <name>checkstyle-new</name> + <url>http://maven.apache.org</url> + <properties> + <checkstyleVersion>@pom.version@</checkstyleVersion> + <jxrPluginVersion>3.0.0</jxrPluginVersion> + </properties> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>@pom.version@</version> + <configuration> + <configLocation>https://raw.githubusercontent.com/checkstyle/checkstyle/checkstyle-8.28/src/main/resources/sun_checks.xml</configLocation> + <includeTestSourceDirectory>true</includeTestSourceDirectory> + <xrefTestLocation>custom-xref-test-location</xrefTestLocation> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jxr-plugin</artifactId> + <version>${jxrPluginVersion}</version> + </plugin> + </plugins> + </pluginManagement> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jxr-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + </plugin> + </plugins> + </reporting> +</project> diff --git a/src/it/MCHECKSTYLE-99-custom-xref-test-location/src/main/java/com/example/App.java b/src/it/MCHECKSTYLE-99-custom-xref-test-location/src/main/java/com/example/App.java new file mode 100644 index 0000000..498f612 --- /dev/null +++ b/src/it/MCHECKSTYLE-99-custom-xref-test-location/src/main/java/com/example/App.java @@ -0,0 +1,32 @@ +package com.example; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/src/it/MCHECKSTYLE-99-custom-xref-test-location/src/test/java/com/example/AppTest.java b/src/it/MCHECKSTYLE-99-custom-xref-test-location/src/test/java/com/example/AppTest.java new file mode 100644 index 0000000..0d6c5ab --- /dev/null +++ b/src/it/MCHECKSTYLE-99-custom-xref-test-location/src/test/java/com/example/AppTest.java @@ -0,0 +1,57 @@ +package com.example; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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 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/src/it/MCHECKSTYLE-99-custom-xref-test-location/verify.groovy b/src/it/MCHECKSTYLE-99-custom-xref-test-location/verify.groovy new file mode 100644 index 0000000..c0e8435 --- /dev/null +++ b/src/it/MCHECKSTYLE-99-custom-xref-test-location/verify.groovy @@ -0,0 +1,26 @@ + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ + +site = new File( basedir, 'target/site/checkstyle.html' ) +assert site.exists(); +assert site.text.contains( '<a href="./xref/com/example/App.html#L26">' ) +assert site.text.contains( '<a href="./custom-xref-test-location/com/example/AppTest.html#L32">' ) + +return true; diff --git a/src/it/MCHECKSTYLE-99/invoker.properties b/src/it/MCHECKSTYLE-99/invoker.properties new file mode 100644 index 0000000..4adad81 --- /dev/null +++ b/src/it/MCHECKSTYLE-99/invoker.properties @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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. + +invoker.goals=clean checkstyle:checkstyle diff --git a/src/it/MCHECKSTYLE-99/pom.xml b/src/it/MCHECKSTYLE-99/pom.xml new file mode 100644 index 0000000..450f13c --- /dev/null +++ b/src/it/MCHECKSTYLE-99/pom.xml @@ -0,0 +1,72 @@ +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you 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. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>com.example</groupId> + <artifactId>checkstyle-new</artifactId> + <packaging>jar</packaging> + <version>1.0-SNAPSHOT</version> + <name>checkstyle-new</name> + <url>http://maven.apache.org</url> + <properties> + <checkstyleVersion>@pom.version@</checkstyleVersion> + <jxrPluginVersion>3.0.0</jxrPluginVersion> + </properties> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>@pom.version@</version> + <configuration> + <configLocation>https://raw.githubusercontent.com/checkstyle/checkstyle/checkstyle-8.28/src/main/resources/sun_checks.xml</configLocation> + <includeTestSourceDirectory>true</includeTestSourceDirectory> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jxr-plugin</artifactId> + <version>${jxrPluginVersion}</version> + </plugin> + </plugins> + </pluginManagement> + </build> + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jxr-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + </plugin> + </plugins> + </reporting> +</project> diff --git a/src/it/MCHECKSTYLE-99/src/main/java/com/example/App.java b/src/it/MCHECKSTYLE-99/src/main/java/com/example/App.java new file mode 100644 index 0000000..498f612 --- /dev/null +++ b/src/it/MCHECKSTYLE-99/src/main/java/com/example/App.java @@ -0,0 +1,32 @@ +package com.example; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ + +/** + * Hello world! + * + */ +public class App +{ + public static void main( String[] args ) + { + System.out.println( "Hello World!" ); + } +} diff --git a/src/it/MCHECKSTYLE-99/src/test/java/com/example/AppTest.java b/src/it/MCHECKSTYLE-99/src/test/java/com/example/AppTest.java new file mode 100644 index 0000000..0d6c5ab --- /dev/null +++ b/src/it/MCHECKSTYLE-99/src/test/java/com/example/AppTest.java @@ -0,0 +1,57 @@ +package com.example; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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 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/src/it/MCHECKSTYLE-99/verify.groovy b/src/it/MCHECKSTYLE-99/verify.groovy new file mode 100644 index 0000000..1567552 --- /dev/null +++ b/src/it/MCHECKSTYLE-99/verify.groovy @@ -0,0 +1,26 @@ + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ + +site = new File( basedir, 'target/site/checkstyle.html' ) +assert site.exists(); +assert site.text.contains( '<a href="./xref/com/example/App.html#L26">' ) +assert site.text.contains( '<a href="./xref-test/com/example/AppTest.html#L32">' ) + +return true; diff --git a/src/main/java/org/apache/maven/plugins/checkstyle/AbstractCheckstyleReport.java b/src/main/java/org/apache/maven/plugins/checkstyle/AbstractCheckstyleReport.java index 3b958ff..f2e4aa0 100644 --- a/src/main/java/org/apache/maven/plugins/checkstyle/AbstractCheckstyleReport.java +++ b/src/main/java/org/apache/maven/plugins/checkstyle/AbstractCheckstyleReport.java @@ -389,6 +389,12 @@ public abstract class AbstractCheckstyleReport private File xrefLocation; /** + * Location of the XrefTests to link to. + */ + @Parameter( defaultValue = "${project.reporting.outputDirectory}/xref-test" ) + private File xrefTestLocation; + + /** * When using custom treeWalkers, specify their names here so the checks * inside the treeWalker end up the the rule-summary. * @@ -743,35 +749,19 @@ public abstract class AbstractCheckstyleReport generator.setCheckstyleConfig( results.getConfiguration() ); if ( linkXRef ) { - String relativePath = PathTool.getRelativePath( getOutputDirectory(), xrefLocation.getAbsolutePath() ); - if ( StringUtils.isEmpty( relativePath ) ) - { - relativePath = "."; - } - relativePath = relativePath + "/" + xrefLocation.getName(); - if ( xrefLocation.exists() ) - { - // XRef was already generated by manual execution of a lifecycle - // binding - generator.setXrefLocation( relativePath ); - } - else + initializeXrefLocation( generator ); + if ( generator.getXrefLocation() == null && results.getFileCount() > 0 ) { - // Not yet generated - check if the report is on its way - for ( ReportPlugin report : (Iterable<ReportPlugin>) getProject().getReportPlugins() ) - { - String artifactId = report.getArtifactId(); - if ( "maven-jxr-plugin".equals( artifactId ) || "jxr-maven-plugin".equals( artifactId ) ) - { - generator.setXrefLocation( relativePath ); - } - } + getLog().warn( "Unable to locate Source XRef to link to - DISABLED" ); } - if ( generator.getXrefLocation() == null && results.getFileCount() > 0 ) + initializeXrefTestLocation( generator ); + if ( generator.getXrefTestLocation() == null && results.getFileCount() > 0 ) { - getLog().warn( "Unable to locate Source XRef to link to - DISABLED" ); + getLog().warn( "Unable to locate Test Source XRef to link to - DISABLED" ); } + + generator.setTestSourceDirectories( getTestSourceDirectories() ); } if ( treeWalkerNames != null ) { @@ -780,6 +770,53 @@ public abstract class AbstractCheckstyleReport generator.generateReport( results ); } + private void initializeXrefLocation( CheckstyleReportGenerator generator ) + { + String relativePath = determineRelativePath( xrefLocation ); + if ( xrefLocation.exists() || checkMavenJxrPluginIsConfigured() ) + { + // XRef was already generated by manual execution of a lifecycle binding + // the report is on its way + generator.setXrefLocation( relativePath ); + } + } + + private void initializeXrefTestLocation( CheckstyleReportGenerator generator ) + { + String relativePath = determineRelativePath( xrefTestLocation ); + if ( xrefTestLocation.exists() || checkMavenJxrPluginIsConfigured() ) + { + // XRef was already generated by manual execution of a lifecycle binding + // the report is on its way + generator.setXrefTestLocation( relativePath ); + } + } + + private String determineRelativePath( File location ) + { + String relativePath = PathTool.getRelativePath( getOutputDirectory(), location.getAbsolutePath() ); + if ( relativePath == null || relativePath.trim().isEmpty() ) + { + relativePath = "."; + } + + return relativePath + "/" + location.getName(); + } + + private boolean checkMavenJxrPluginIsConfigured() + { + for ( ReportPlugin report : (Iterable<ReportPlugin>) getProject().getReportPlugins() ) + { + String artifactId = report.getArtifactId(); + if ( "maven-jxr-plugin".equals( artifactId ) || "jxr-maven-plugin".equals( artifactId ) ) + { + return true; + } + } + + return false; + } + private static ResourceBundle getBundle( Locale locale ) { return ResourceBundle.getBundle( "checkstyle-report", locale, AbstractCheckstyleReport.class.getClassLoader() ); diff --git a/src/main/java/org/apache/maven/plugins/checkstyle/CheckstyleReportGenerator.java b/src/main/java/org/apache/maven/plugins/checkstyle/CheckstyleReportGenerator.java index aae277d..4f97b48 100644 --- a/src/main/java/org/apache/maven/plugins/checkstyle/CheckstyleReportGenerator.java +++ b/src/main/java/org/apache/maven/plugins/checkstyle/CheckstyleReportGenerator.java @@ -71,6 +71,10 @@ public class CheckstyleReportGenerator private String xrefLocation; + private String xrefTestLocation; + + private List<File> testSourceDirectories = new ArrayList<>(); + private List<String> treeWalkerNames = Collections.singletonList( "TreeWalker" ); private final IconTool iconTool; @@ -673,9 +677,10 @@ public class CheckstyleReportGenerator sink.tableCell(); int line = event.getLine(); - if ( getXrefLocation() != null && line != 0 ) + String effectiveXrefLocation = getEffectiveXrefLocation( eventList ); + if ( effectiveXrefLocation != null && line != 0 ) { - sink.link( getXrefLocation() + "/" + filename.replaceAll( "\\.java$", ".html" ) + "#L" + sink.link( effectiveXrefLocation + "/" + filename.replaceAll( "\\.java$", ".html" ) + "#L" + line ); sink.text( String.valueOf( line ) ); sink.link_(); @@ -690,6 +695,32 @@ public class CheckstyleReportGenerator } } + private String getEffectiveXrefLocation( List<AuditEvent> eventList ) + { + String absoluteFilename = eventList.get( 0 ).getFileName(); + if ( isTestSource( absoluteFilename ) ) + { + return getXrefTestLocation(); + } + else + { + return getXrefLocation(); + } + } + + private boolean isTestSource( final String absoluteFilename ) + { + for ( File testSourceDirectory : testSourceDirectories ) + { + if ( absoluteFilename.startsWith( testSourceDirectory.getAbsolutePath() ) ) + { + return true; + } + } + + return false; + } + public SeverityLevel getSeverityLevel() { return severityLevel; @@ -750,6 +781,26 @@ public class CheckstyleReportGenerator this.xrefLocation = xrefLocation; } + public String getXrefTestLocation() + { + return xrefTestLocation; + } + + public void setXrefTestLocation( String xrefTestLocation ) + { + this.xrefTestLocation = xrefTestLocation; + } + + public List<File> getTestSourceDirectories() + { + return testSourceDirectories; + } + + public void setTestSourceDirectories( List<File> testSourceDirectories ) + { + this.testSourceDirectories = testSourceDirectories; + } + public Configuration getCheckstyleConfig() { return checkstyleConfig; diff --git a/src/test/plugin-configs/custom-plugin-config.xml b/src/test/plugin-configs/custom-plugin-config.xml index 8b232a1..309762e 100644 --- a/src/test/plugin-configs/custom-plugin-config.xml +++ b/src/test/plugin-configs/custom-plugin-config.xml @@ -43,6 +43,7 @@ under the License. <linkXRef>true</linkXRef> <!-- value not really important, just point to an existing dir --> <xrefLocation>${basedir}/target/test-harness/checkstyle/custom</xrefLocation> + <xrefTestLocation>${basedir}/target/test-harness/checkstyle/custom</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/dep-resolution-exception-plugin-config.xml b/src/test/plugin-configs/dep-resolution-exception-plugin-config.xml index b24f49c..d2c0218 100644 --- a/src/test/plugin-configs/dep-resolution-exception-plugin-config.xml +++ b/src/test/plugin-configs/dep-resolution-exception-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/fail-on-error-plugin-config.xml b/src/test/plugin-configs/fail-on-error-plugin-config.xml index be98088..06853a1 100644 --- a/src/test/plugin-configs/fail-on-error-plugin-config.xml +++ b/src/test/plugin-configs/fail-on-error-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/min-plugin-config.xml b/src/test/plugin-configs/min-plugin-config.xml index ad4af9a..a151bdb 100644 --- a/src/test/plugin-configs/min-plugin-config.xml +++ b/src/test/plugin-configs/min-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/multi-plugin-config.xml b/src/test/plugin-configs/multi-plugin-config.xml index 9504a3c..4f3d4f2 100644 --- a/src/test/plugin-configs/multi-plugin-config.xml +++ b/src/test/plugin-configs/multi-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/no-files-plugin-config.xml b/src/test/plugin-configs/no-files-plugin-config.xml index be550b8..ad5e125 100644 --- a/src/test/plugin-configs/no-files-plugin-config.xml +++ b/src/test/plugin-configs/no-files-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/no-rules-plugin-config.xml b/src/test/plugin-configs/no-rules-plugin-config.xml index 3f2a1e6..b189c75 100644 --- a/src/test/plugin-configs/no-rules-plugin-config.xml +++ b/src/test/plugin-configs/no-rules-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/no-severity-plugin-config.xml b/src/test/plugin-configs/no-severity-plugin-config.xml index b1e0e8e..91d5fae 100644 --- a/src/test/plugin-configs/no-severity-plugin-config.xml +++ b/src/test/plugin-configs/no-severity-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/no-source-plugin-config.xml b/src/test/plugin-configs/no-source-plugin-config.xml index 6da6307..37a110e 100644 --- a/src/test/plugin-configs/no-source-plugin-config.xml +++ b/src/test/plugin-configs/no-source-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/test-source-directory-plugin-config.xml b/src/test/plugin-configs/test-source-directory-plugin-config.xml index 4b06152..2f6defe 100644 --- a/src/test/plugin-configs/test-source-directory-plugin-config.xml +++ b/src/test/plugin-configs/test-source-directory-plugin-config.xml @@ -45,6 +45,7 @@ under the License. <consoleOutput>false</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <encoding>UTF-8</encoding> </configuration> </plugin> diff --git a/src/test/plugin-configs/useFile-plugin-config.xml b/src/test/plugin-configs/useFile-plugin-config.xml index 49bc07e..b488964 100644 --- a/src/test/plugin-configs/useFile-plugin-config.xml +++ b/src/test/plugin-configs/useFile-plugin-config.xml @@ -42,6 +42,7 @@ under the License. <consoleOutput>true</consoleOutput> <linkXRef>true</linkXRef> <xrefLocation>${basedir}/target/site/xref</xrefLocation> + <xrefTestLocation>${basedir}/target/site/xref-test</xrefTestLocation> <useFile>${basedir}/target/test-harness/checkstyle/useFile/checkstyle-output.txt</useFile> <encoding>UTF-8</encoding> </configuration>
