src/it/projects/full-reporting/verify.groovy (65 lines of code) (raw):

/* * 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. */ assert new File( basedir, 'target/surefire-reports' ).exists(); assert new File( basedir, 'target/surefire-reports/org.apache.maven.plugins.site.its.AppTest.txt' ).exists(); content = new File( basedir, 'target/surefire-reports/org.apache.maven.plugins.site.its.AppTest.txt' ).text; assert content.contains( 'Test set: org.apache.maven.plugins.site.its.AppTest' ); assert content.contains( 'Tests run: 1, Failures: 0, Errors: 0, Skipped: 0' ); sitedir = new File( basedir, 'target/site' ); assert new File( sitedir, 'surefire-report.html' ).exists(); assert new File( sitedir, 'index.html' ).exists(); assert new File( sitedir, 'checkstyle.html' ).exists(); assert new File( sitedir, 'cpd.html' ).exists(); assert new File( sitedir, 'apidocs/index.html' ).exists(); assert new File( sitedir, 'apidocs/org/apache/maven/plugins/site/its/App.html' ).exists(); //assert new File( sitedir, 'cobertura/index.html' ).exists(); assert new File( sitedir, 'xref/index.html' ).exists(); assert new File( sitedir, 'xref-test/index.html' ).exists(); assert new File( sitedir, 'taglist.html' ).exists(); assert new File( sitedir, 'team.html' ).exists(); assert new File( sitedir, 'dependencies.html' ).exists(); content = new File( sitedir, 'dependencies.html' ).text; assert content.contains( 'junit:junit:jar:4.13.2' ); // check reports order String[] reports = [ 'index', // <report>index</report> 'summary', // <report>summary</report> 'licenses', // <report>licenses</report> 'team', // <report>team</report> 'scm', // <report>scm</report> 'issue-management', // <report>issue-management</report> 'mailing-lists', // <report>mailing-lists</report> 'dependencies', // <report>dependencies</report> 'ci-management', // <report>ci-management</report> 'plugin-management', // <report>plugin-management</report> 'plugins' // <report>plugins</report> ]; String info = new File( sitedir, 'project-info.html' ).text; int index1 = 10; int index2 = 10; String previousReportLink; for ( String report : reports ) { File reportFile = new File( sitedir, report + ".html" ); if ( !reportFile.isFile() ) { println "Report file not existent: $reportFile"; return false; } String link = "<a href=\"" + reportFile.getName() + "\""; int i1 = info.indexOf( link ); int i2 = info.indexOf( link, i1 + 1 ); if ( i1 < index1 ) { println "Wrong order for first report link: expected $previousReportLink -> $link, but found $i1 < $index1"; println " previous report link: " + info.substring( index1 - 10, index1 + 70 ); println " actual report link: " + info.substring( i1 - 10, i1 + 70 ); return false; } if ( i2 < index2 ) { println "Wrong order for second report link: expected $previousReportLink -> $link, but found $i2 < $index2"; println " previous report link: " + info.substring( index2 - 10, index2 + 70 ); println " actual report link: " + info.substring( i2 - 10, i2 + 70 ); return false; } index1 = i1; index2 = i2; previousReportLink = link; } return true;