blob: cf7c5a02a9076aed2e7218a4ef0417b1a98b7228 [file] [log] [blame]
package org.jboss.testharness.api;
import java.util.List;
import org.jboss.testharness.spi.Containers;
import org.jboss.testharness.spi.StandaloneContainers;
/**
* The configuration of the TCK.
*
* The TCK may be configured using system properties or placed in a properties
* file called META-INF/web-beans-tck.properties.
*
* Porting package property names are the FQCN of the SPI class. Other property
* names (one for each non-porting package SPI configuration option) are
* specified here. The defaults are also listed here.
*
* The TCK may also be configured programatically through this interface
*
* <p>
* Modified by Google.
* <ul>
* <li>Removed references to TestLauncher</li>
* <li>Removed revernces to the output dir.</li>
* <ul>
*
* @author Pete Muir
*
*/
public interface Configuration
{
public static final String OUTPUT_DIRECTORY_PROPERTY_NAME = "org.jboss.testharness.outputDirectory";
public static final String STANDALONE_PROPERTY_NAME = "org.jboss.testharness.standalone";
public static final String RUN_INTEGRATION_TESTS_PROPERTY_NAME = "org.jboss.testharness.runIntegrationTests";
public static final String CONNECT_TIMEOUT_PROPERTY_NAME = "org.jboss.testharness.connectTimeout";
public static final String LIBRARY_DIRECTORY_PROPERTY_NAME = "org.jboss.testharness.libraryDirectory";
public static final String HOST_PROPERTY_NAME = "org.jboss.testharness.host";
public static final String TEST_PACKAGE_PROPERTY_NAME = "org.jboss.testharness.testPackage";
public static final boolean DEFAULT_STANDALONE = true;
public static final boolean DEFAULT_RUN_INTEGRATION_TESTS = false;
public static final int DEFAULT_CONNECT_DELAY = 5000;
public static final boolean DEFAULT_WRITE_DEPLOYED_ARCHIVES_TO_DISK = false;
public static final String DEFAULT_LIBRARY_DIRECTORY = null;
public static final String DEFAULT_HOST = "localhost:8080";
/**
* The output directory to put TCK specific output. The TestNG output
* directory is configured via TestNG.
*
* By default set to ${tmp}/jsr-299-tck
*/
public String getOutputDirectory();
/**
* Whether the TCK is in standalone mode or not.
*
* By default true
*/
public boolean isStandalone();
/**
* When the TCK is running in container tests it will attempt to connect to
* the server every 200ms until the timeout is reached.
*
* By default 5000ms
*/
public int getConnectTimeout();
/**
* The TCK allows additional libraries to be put in the deployed test
* artifacts (for example the porting package for the implementation). Any
* jars in this directory will be added to the deployed artifact.
*
* By default no directory is used.
*/
public String getLibraryDirectory();
/**
* The TCK test launcher
*
* @see TestLauncher
*
*/
public Object getInContainerTestLauncher();
/**
* The implementation of {@link Containers} in use.
*/
public Containers getContainers();
/**
* Whether to run integration tests, by default false.
*/
public boolean isRunIntegrationTests();
public void setOutputDirectory(String outputDirectory);
public void setStandalone(boolean standalone);
public void setConnectTimeout(int connectTimeout);
public void setLibraryDirectory(String libraryDir);
public void setInContainerTestLauncher(Object testLauncher);
public void setContainers(Containers containers);
/**
* The implementation of {@link StandaloneContainers} in use.
*/
public StandaloneContainers getStandaloneContainers();
public void setStandaloneContainers(StandaloneContainers standaloneContainers);
public void setRunIntegrationTests(boolean runIntegrationTests);
/**
* The TCK will use this as the remote host to connect to run in container
* tests. By default localhost:8080
*
*/
public String getHost();
public void setHost(String host);
public List<String> getExtraPackages();
public List<ResourceDescriptor> getExtraResources();
public List<String> getExtraDeploymentProperties();
public String getTestPackage();
public void setTestPackage(String packageName);
}