ParentSandboxInvocationExecution

public class ParentSandboxInvocationExecution
extends InvocationExecution

java.lang.Object
   ↳ com.android.tradefed.invoker.InvocationExecution
     ↳ com.android.tradefed.invoker.sandbox.ParentSandboxInvocationExecution


Version of InvocationExecution for the parent invocation special actions when running a sandbox.

Summary

Public constructors

ParentSandboxInvocationExecution()

Public methods

void doCleanUp(IInvocationContext context, IConfiguration config, Throwable exception)

Execute the target_preparer and multi_target_preparer cleanUp step.

void doSetup(TestInformation testInfo, IConfiguration config, ITestLogger listener)

Execute the target_preparer and multi_target_preparer setUp step.

void doTeardown(TestInformation testInfo, IConfiguration config, ITestLogger logger, Throwable exception)

Execute the target_preparer and multi_target_preparer teardown step.

boolean fetchBuild(TestInformation testInfo, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener listener)

Execute the build_provider step of the invocation.

void reportLogs(ITestDevice device, ITestLogger logger, TestInvocation.Stage stage)

Report some device logs at different stage of the invocation.

void runDevicePostInvocationTearDown(IInvocationContext context, IConfiguration config, Throwable exception)

Invoke the ITestDevice#postInvocationTearDown(Throwable) for each device part of the invocation.

void runDevicePreInvocationSetup(IInvocationContext context, IConfiguration config, ITestLogger logger)

Invoke the ERROR(ITestDevice#preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice#preInvocationSetup(IBuildInfo)) for each device part of the invocation.

void runTests(TestInformation info, IConfiguration config, ITestInvocationListener listener)

Runs the test.

Protected methods

IConfigurationFactory getFactory()

Returns the IConfigurationFactory used to created configurations.

getLabPreparersToRun(IConfiguration config, String deviceName)

Retrieve a list of lab preparers to run on this device.

IRunUtil getRunUtil()
getTargetPreparersToRun(IConfiguration config, String deviceName)

Retrieve a list of target preparers to run on this device.

boolean prepareAndRunSandbox(TestInformation info, IConfiguration config, ITestInvocationListener listener)

Returns the result status of running the sandbox.

Public constructors

ParentSandboxInvocationExecution

public ParentSandboxInvocationExecution ()

Public methods

doCleanUp

public void doCleanUp (IInvocationContext context, 
                IConfiguration config, 
                Throwable exception)

Execute the target_preparer and multi_target_preparer cleanUp step. Does the devices clean up.

Parameters
context IInvocationContext: the IInvocationContext of the invocation.

config IConfiguration: the IConfiguration of this test run.

exception Throwable: the original exception thrown by the test running.

doSetup

public void doSetup (TestInformation testInfo, 
                IConfiguration config, 
                ITestLogger listener)

Execute the target_preparer and multi_target_preparer setUp step. Does all the devices setup required for the test to run.

Parameters
testInfo TestInformation: the TestInformation of the invocation.

config IConfiguration: the IConfiguration of this test run.

listener ITestLogger: the ITestLogger to report setup failures logs.

Throws
BuildError
DeviceNotAvailableException
TargetSetupError

doTeardown

public void doTeardown (TestInformation testInfo, 
                IConfiguration config, 
                ITestLogger logger, 
                Throwable exception)

Execute the target_preparer and multi_target_preparer teardown step. Does the devices tear down associated with the setup.

Parameters
testInfo TestInformation: the TestInformation of the invocation.

config IConfiguration: the IConfiguration of this test run.

logger ITestLogger: the ITestLogger to report logs.

exception Throwable: the original exception thrown by the test running.

fetchBuild

public boolean fetchBuild (TestInformation testInfo, 
                IConfiguration config, 
                IRescheduler rescheduler, 
                ITestInvocationListener listener)

Execute the build_provider step of the invocation.

Parameters
testInfo TestInformation: the TestInformation of the invocation.

config IConfiguration: the IConfiguration of this test run.

rescheduler IRescheduler: the IRescheduler, for rescheduling portions of the invocation for execution on another resource(s)

listener ITestInvocationListener: the ITestInvocation to report build download failures.

Returns
boolean True if we successfully downloaded the build, false otherwise.

Throws
BuildRetrievalError
DeviceNotAvailableException

reportLogs

public void reportLogs (ITestDevice device, 
                ITestLogger logger, 
                TestInvocation.Stage stage)

Report some device logs at different stage of the invocation. For example: logcat.

Parameters
device ITestDevice: The device to report logs from.

logger ITestLogger: The logger for the logs.

stage TestInvocation.Stage: The stage of the invocation we are at.

runDevicePostInvocationTearDown

public void runDevicePostInvocationTearDown (IInvocationContext context, 
                IConfiguration config, 
                Throwable exception)

Invoke the ITestDevice#postInvocationTearDown(Throwable) for each device part of the invocation.

Parameters
context IInvocationContext: the IInvocationContext of the invocation.

config IConfiguration: the IConfiguration of this test run.

exception Throwable: the original exception thrown by the test running if any.

runDevicePreInvocationSetup

public void runDevicePreInvocationSetup (IInvocationContext context, 
                IConfiguration config, 
                ITestLogger logger)

Invoke the ERROR(ITestDevice#preInvocationSetup(IBuildInfo)/com.android.tradefed.device.ITestDevice#preInvocationSetup(com.android.tradefed.build.IBuildInfo) ITestDevice#preInvocationSetup(IBuildInfo)) for each device part of the invocation.

Parameters
context IInvocationContext: the IInvocationContext of the invocation.

config IConfiguration: the IConfiguration of this test run.

logger ITestLogger: the ITestLogger to report logs.

Throws
DeviceNotAvailableException
TargetSetupError

runTests

public void runTests (TestInformation info, 
                IConfiguration config, 
                ITestInvocationListener listener)

Runs the test.

Parameters
info TestInformation: the TestInformation to run tests with.

config IConfiguration: the IConfiguration to run

listener ITestInvocationListener: the ITestInvocationListener of test results

Protected methods

getFactory

protected IConfigurationFactory getFactory ()

Returns the IConfigurationFactory used to created configurations.

Returns
IConfigurationFactory

getLabPreparersToRun

protected  getLabPreparersToRun (IConfiguration config, 
                String deviceName)

Retrieve a list of lab preparers to run on this device.

Overridden in sandbox classes to restrict lab preparers from being run inside the sandbox child

Parameters
config IConfiguration

deviceName String

Returns

getRunUtil

protected IRunUtil getRunUtil ()

Returns
IRunUtil

getTargetPreparersToRun

protected  getTargetPreparersToRun (IConfiguration config, 
                String deviceName)

Retrieve a list of target preparers to run on this device.

Overridden in sandbox classes to restrict lab preparers from being run inside the sandbox child

Parameters
config IConfiguration

deviceName String

Returns

prepareAndRunSandbox

protected boolean prepareAndRunSandbox (TestInformation info, 
                IConfiguration config, 
                ITestInvocationListener listener)

Returns the result status of running the sandbox.

Parameters
info TestInformation

config IConfiguration

listener ITestInvocationListener

Returns
boolean