| package org.apache.maven.surefire.api.provider; |
| |
| /* |
| * 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 org.apache.maven.surefire.api.cli.CommandLineOption; |
| import org.apache.maven.surefire.api.report.ConsoleStream; |
| import org.apache.maven.surefire.api.report.ReporterConfiguration; |
| import org.apache.maven.surefire.api.report.ReporterFactory; |
| import org.apache.maven.surefire.api.testset.DirectoryScannerParameters; |
| import org.apache.maven.surefire.api.testset.TestArtifactInfo; |
| import org.apache.maven.surefire.api.testset.TestRequest; |
| import org.apache.maven.surefire.api.util.DirectoryScanner; |
| import org.apache.maven.surefire.api.util.RunOrderCalculator; |
| import org.apache.maven.surefire.api.util.ScanResult; |
| |
| import java.util.List; |
| import java.util.Map; |
| |
| /** |
| * Injected into the providers upon provider construction. Allows the provider to request services and data it needs. |
| * <br> |
| * NOTE: This class is part of the proposed public api for surefire providers from 2.7 and up. It may |
| * still be subject to changes, even for minor revisions. |
| * <br> |
| * The api covers this interface and all the types reachable from it. And nothing else. |
| * |
| * @author Kristian Rosenvold |
| */ |
| public interface ProviderParameters |
| { |
| /** |
| * Provides a directory scanner that enforces the includes/excludes parameters that were passed to surefire. |
| * See #getDirectoryScannerParameters for details |
| * |
| * @return The directory scanner |
| * @deprecated Use scanresult instead, as of version 2.12.2. Will be removed in next major version. |
| */ |
| @Deprecated |
| DirectoryScanner getDirectoryScanner(); |
| |
| /** |
| * Provides the result of the directory scan performed in the plugin |
| * |
| * @return The scan result |
| */ |
| ScanResult getScanResult(); |
| |
| |
| /** |
| * Provides a service to calculate run order of tests. Applied after directory scanning. |
| * |
| * @return A RunOrderCalculator |
| */ |
| RunOrderCalculator getRunOrderCalculator(); |
| |
| /** |
| * Provides features for creating reporting objects |
| * |
| * @return A ReporterFactory that allows the creation of one or more ReporterManagers |
| */ |
| ReporterFactory getReporterFactory(); |
| |
| /** |
| * Gets a logger intended for console output. |
| * <br> |
| * This output is intended for provider-oriented messages that are not attached to a single test-set |
| * and will normally be written to something console-like immediately. |
| * |
| * @return A console stream logger |
| */ |
| ConsoleStream getConsoleLogger(); |
| |
| /** |
| * The raw parameters used in creating the directory scanner |
| * |
| * @return The parameters |
| * @deprecated Use scanresult instead, as of version 2.12.2. Will be removed in next major version. |
| */ |
| @Deprecated |
| DirectoryScannerParameters getDirectoryScannerParameters(); |
| |
| /** |
| * The raw parameters used in creating the ReporterManagerFactory |
| * |
| * @return The reporter configuration |
| */ |
| ReporterConfiguration getReporterConfiguration(); |
| |
| /** |
| * Contains information about requested test suites or individual tests from the command line. |
| * |
| * @return The testRequest |
| */ |
| |
| TestRequest getTestRequest(); |
| |
| /** |
| * The class loader for the tests |
| * |
| * @return the classloader |
| */ |
| ClassLoader getTestClassLoader(); |
| |
| /** |
| * The per-provider specific properties that may come all the way from the plugin's properties setting. |
| * |
| * @return the provider specific properties |
| */ |
| Map<String, String> getProviderProperties(); |
| |
| /** |
| * Artifact info about the artifact used to autodetect provider |
| * |
| * @return The artifactinfo, or null if autodetect was not used. |
| */ |
| TestArtifactInfo getTestArtifactInfo(); |
| |
| List<CommandLineOption> getMainCliOptions(); |
| |
| /** |
| * @return Defaults to 0. Configured with parameter {@code skipAfterFailureCount} in POM. |
| */ |
| int getSkipAfterFailureCount(); |
| |
| /** |
| * @return {@code true} if test provider appears in forked jvm; Otherwise {@code false} means |
| * in-plugin provider. |
| */ |
| boolean isInsideFork(); |
| |
| Integer getSystemExitTimeout(); |
| |
| CommandChainReader getCommandReader(); |
| } |