public abstract class PlatformTestCase extends CascadingTestCase
TestPlatform
interface each test can be run against all supported platform like Hadoop or Cascading local mode.
It is strongly recommended users look at the source of FieldedPipesPlatformTest
or related tests to see how
this class is used.
This test case uses the PlatformRunner
to inject the available platform providers which implement the
TestPlatform base class.
By default the PlatformRunner looks for "cascading/platform/platform.properties" file in the classpath, and
instantiates the class specified by the "platform.classname" property. If more than one "platform.properties"
resource is found, each class is instantiated and the whole suite of tests will be run against each instance.
To limit this, setting the system property "platform.includes" to list the platform names that should be run will
cause the PlatformRunner to ignore any unlisted platforms. Thus setting platform.includes=local
, only
local mode will run even if the "hadoop" platform was found in the classpath.
To pass custom properties to each test to be used by the FlowConnector
, create
system properties prefixed by "platform.". These properties, minus the "platform." prefix in the property name,
will override any defaults.
Subclasses of PlatformTestCase can set "useCluster
to true
on the constructor if the underlying
platform can boot a cluster for testing. By setting the system property "test.cluster.enabled" to false, this
can be deactivated in order to temporarily speed test execution. By default useCluster
is false
,
typically user tests don't need to have a cluster running to test their functionality so leaving the default is
reasonable.name, ROOT_OUTPUT_PATH, ROOT_PLAN_PATH, TEST_TRACEPLAN_ENABLED
Modifier | Constructor and Description |
---|---|
protected |
PlatformTestCase() |
protected |
PlatformTestCase(boolean useCluster) |
protected |
PlatformTestCase(boolean useCluster,
int numMapTasks,
int numGatherPartitions) |
Modifier and Type | Method and Description |
---|---|
protected void |
copyFromLocal(java.lang.String inputFile) |
protected java.util.Map<java.lang.Object,java.lang.Object> |
disableDebug() |
java.lang.String |
getOutputPath(java.lang.String path) |
protected java.lang.String[] |
getOutputPathElements() |
protected java.lang.String[] |
getPlanPathElements() |
TestPlatform |
getPlatform() |
java.lang.String |
getPlatformName() |
java.util.Map<java.lang.Object,java.lang.Object> |
getProperties() |
void |
installPlatform(TestPlatform platform) |
protected java.lang.String |
makeOutputPath(java.lang.String path) |
void |
setUp() |
void |
tearDown() |
asCollection, asCollection, asCollection, asCollection, asList, asList, asSet, asSet, getOutputPath, getPlanPath, getSinkAsList, getSourceAsList, getTestCaseName, getTestName, getTestOutputRoot, getTestPlanRoot, invokeAggregator, invokeAggregator, invokeAggregator, invokeAggregator, invokeAggregator, invokeAggregator, invokeBuffer, invokeBuffer, invokeBuffer, invokeBuffer, invokeBuffer, invokeBuffer, invokeFilter, invokeFilter, invokeFilter, invokeFilter, invokeFilter, invokeFilter, invokeFilter, invokeFilter, invokeFunction, invokeFunction, invokeFunction, invokeFunction, invokeFunction, invokeFunction, invokeFunction, invokeFunction, validateLength, validateLength, validateLength, validateLength, validateLength, validateLength, validateLength, validateLength, validateLength, validateLength
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, countTestCases, createResult, fail, fail, failNotEquals, failNotSame, failSame, format, getName, run, run, runBare, runTest, setName, toString
protected PlatformTestCase(boolean useCluster)
protected PlatformTestCase(boolean useCluster, int numMapTasks, int numGatherPartitions)
protected PlatformTestCase()
public void installPlatform(TestPlatform platform)
public TestPlatform getPlatform()
protected java.lang.String[] getOutputPathElements()
getOutputPathElements
in class CascadingTestCase
protected java.lang.String[] getPlanPathElements()
getPlanPathElements
in class CascadingTestCase
public java.lang.String getOutputPath(java.lang.String path)
protected java.lang.String makeOutputPath(java.lang.String path)
public java.lang.String getPlatformName()
public void setUp() throws java.lang.Exception
setUp
in class CascadingTestCase
java.lang.Exception
public java.util.Map<java.lang.Object,java.lang.Object> getProperties()
protected void copyFromLocal(java.lang.String inputFile) throws java.io.IOException
java.io.IOException
protected java.util.Map<java.lang.Object,java.lang.Object> disableDebug()
public void tearDown() throws java.lang.Exception
tearDown
in class CascadingTestCase
java.lang.Exception
Copyright © 2007-2015 Xplenty, Inc. All Rights Reserved.