TestInvocation
  public
  
  
  
  class
  TestInvocation
  
    extends Object
  
  
  
  
  
      implements
      
        ITestInvocation
      
  
  
| java.lang.Object | |
| ↳ | com.android.tradefed.invoker.TestInvocation | 
Default implementation of ITestInvocation.
 
IConfiguration
   - retrieves build
   - prepares target
   - runs tests
   - reports results
Summary
| Constants | |
|---|---|
| long | AVAILABILITY_CHECK_TIMEOUT
 | 
| Fields | |
|---|---|
| 
    public
    static
    final
    String | COMMAND_ARGS_KEYKey of the command line args attributes | 
| 
    public
    static
    final
    String | INVOCATION_EXTERNAL_DEPENDENCIES
 | 
| 
    public
    static
    final
    String | TRADEFED_CONFIG_NAME
 | 
| 
    public
    static
    final
    String | TRADEFED_END_HOST_LOG
 | 
| 
    public
    static
    final
    String | TRADEFED_INVOC_COMPLETE_HOST_LOG
 | 
| 
    public
    static
    final
    String | TRADEFED_LOG_NAME
 | 
| Public constructors | |
|---|---|
| 
      TestInvocation()
       | |
| Public methods | |
|---|---|
| 
        
        
        static
        
        
        IBuildInfo | 
      backFillBuildInfoForReporting(String commandLine)
      Helper that use the command line to backfill a  | 
| 
        
        
        static
        
        
        FailureDescription | 
      createFailureFromException(Throwable exception, TestRecordProto.FailureStatus defaultStatus)
      Create a  | 
| 
        
        
        
        
        
        IInvocationExecution | 
      createInvocationExec(TestInvocation.RunMode mode)
      Create the invocation path that should be followed. | 
| 
        
        
        static
        
        
        String | 
      getDeviceLogName(TestInvocation.Stage stage)
       | 
| 
        
        
        static
        
        
        String | 
      getEmulatorLogName(TestInvocation.Stage stage)
       | 
| 
        
        
        
        
        
        ITestInvocation.ExitInformation | 
      getExitInfo()
      The exit information of the given invocation. | 
| 
        
        
        
        
        
        void | 
      invoke(IInvocationContext context, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener... extraListeners)
      Perform the test invocation. | 
| 
        
        
        static
        
        
        boolean | 
      isSubprocess(IConfiguration config)
      Returns true if the invocation is currently within a subprocess scope. | 
| 
        
        
        
        
        
        void | 
      notifyInvocationForceStopped(String message, ErrorIdentifier errorId)
      Notify the  | 
| 
        
        
        
        
        
        void | 
      notifyInvocationStopped(String message)
      Notify the  | 
| 
        
        
        static
        
        
        void | 
      printStageDelimiter(TestInvocation.Stage phase, boolean end)
      Prints a delimiter for a given Stage of the invocation. | 
| 
        
        
        
        
        
        void | 
      registerExecutionFiles(ExecutionFiles executionFiles)
       | 
| 
        
        
        
        
        
        void | 
      setClearcutClient(ClearcutClient client)
      Forward the clearcut client to report metrics. | 
| 
        
        
        static
        
        
        boolean | 
      shouldSkipBugreportError(Throwable t)
      Helper method that identifies errors when the bugreport should be skipped | 
| 
        
        
        
        
        
        String | 
      toString()
       | 
| Protected methods | |
|---|---|
| 
        
        
        
        
        
        void | 
      addInvocationMetric(InvocationMetricLogger.InvocationMetricKey key, String value)
       | 
| 
        
        
        
        
        
        void | 
      addInvocationMetric(InvocationMetricLogger.InvocationMetricKey key, long value)
       | 
| 
        
        
        
        
        
        void | 
      applyAutomatedReporters(IConfiguration config)
       | 
| 
        
        
        
        
        
        void | 
      setExitCode(CommandRunner.ExitCode code, Throwable stack)
      Helper to set the exit code. | 
Constants
AVAILABILITY_CHECK_TIMEOUT
public static final long AVAILABILITY_CHECK_TIMEOUT
Constant Value: 180000 (0x000000000002bf20)
Fields
COMMAND_ARGS_KEY
public static final String COMMAND_ARGS_KEY
Key of the command line args attributes
INVOCATION_EXTERNAL_DEPENDENCIES
public static final String INVOCATION_EXTERNAL_DEPENDENCIES
TRADEFED_CONFIG_NAME
public static final String TRADEFED_CONFIG_NAME
TRADEFED_END_HOST_LOG
public static final String TRADEFED_END_HOST_LOG
TRADEFED_INVOC_COMPLETE_HOST_LOG
public static final String TRADEFED_INVOC_COMPLETE_HOST_LOG
TRADEFED_LOG_NAME
public static final String TRADEFED_LOG_NAME
Public constructors
TestInvocation
public TestInvocation ()
Public methods
backFillBuildInfoForReporting
public static IBuildInfo backFillBuildInfoForReporting (String commandLine)
Helper that use the command line to backfill a IBuildInfo for reporting in case of
 download failure.
| Parameters | |
|---|---|
| commandLine | String | 
| Returns | |
|---|---|
| IBuildInfo | |
createFailureFromException
public static FailureDescription createFailureFromException (Throwable exception, TestRecordProto.FailureStatus defaultStatus)
Create a FailureDescription from an invocation exception.
| Parameters | |
|---|---|
| exception | Throwable: The exception to convert | 
| defaultStatus | TestRecordProto.FailureStatus: The status to use by default if the exception is not aIHarnessException. | 
| Returns | |
|---|---|
| FailureDescription | |
createInvocationExec
public IInvocationExecution createInvocationExec (TestInvocation.RunMode mode)
Create the invocation path that should be followed.
| Parameters | |
|---|---|
| mode | TestInvocation.RunMode: The mode we are currently running as. | 
| Returns | |
|---|---|
| IInvocationExecution | The IInvocationExecutiondescribing the invocation. | 
getDeviceLogName
public static String getDeviceLogName (TestInvocation.Stage stage)
| Parameters | |
|---|---|
| stage | TestInvocation.Stage | 
| Returns | |
|---|---|
| String | |
getEmulatorLogName
public static String getEmulatorLogName (TestInvocation.Stage stage)
| Parameters | |
|---|---|
| stage | TestInvocation.Stage | 
| Returns | |
|---|---|
| String | |
getExitInfo
public ITestInvocation.ExitInformation getExitInfo ()
The exit information of the given invocation.
| Returns | |
|---|---|
| ITestInvocation.ExitInformation | |
invoke
public void invoke (IInvocationContext context, IConfiguration config, IRescheduler rescheduler, ITestInvocationListener... extraListeners)
Perform the test invocation.
| Parameters | |
|---|---|
| context | IInvocationContext: theIInvocationContextto perform tests. | 
| config | IConfiguration: theIConfigurationof this test run. | 
| rescheduler | IRescheduler: theIRescheduler, for rescheduling portions of the invocation for
        execution on another resource(s) | 
| extraListeners | ITestInvocationListener:ITestInvocationListeners to notify, in addition to those in
        config | 
| Throws | |
|---|---|
| DeviceNotAvailableException | |
isSubprocess
public static boolean isSubprocess (IConfiguration config)
Returns true if the invocation is currently within a subprocess scope.
| Parameters | |
|---|---|
| config | IConfiguration | 
| Returns | |
|---|---|
| boolean | |
notifyInvocationForceStopped
public void notifyInvocationForceStopped (String message, 
                ErrorIdentifier errorId)Notify the TestInvocation that TradeFed has been requested to stop.
| Parameters | |
|---|---|
| message | String: The message associated with stopping the invocation | 
| errorId | ErrorIdentifier: Identifier associated with the forced stop | 
notifyInvocationStopped
public void notifyInvocationStopped (String message)
Notify the TestInvocation that TradeFed will eventually shutdown.
| Parameters | |
|---|---|
| message | String: The message associated with stopping the invocation | 
printStageDelimiter
public static void printStageDelimiter (TestInvocation.Stage phase, boolean end)
Prints a delimiter for a given Stage of the invocation.
| Parameters | |
|---|---|
| phase | TestInvocation.Stage | 
| end | boolean | 
registerExecutionFiles
public void registerExecutionFiles (ExecutionFiles executionFiles)
| Parameters | |
|---|---|
| executionFiles | ExecutionFiles | 
setClearcutClient
public void setClearcutClient (ClearcutClient client)
Forward the clearcut client to report metrics.
| Parameters | |
|---|---|
| client | ClearcutClient | 
shouldSkipBugreportError
public static boolean shouldSkipBugreportError (Throwable t)
Helper method that identifies errors when the bugreport should be skipped
| Parameters | |
|---|---|
| t | Throwable | 
| Returns | |
|---|---|
| boolean | |
toString
public String toString ()
| Returns | |
|---|---|
| String | |
Protected methods
addInvocationMetric
protected void addInvocationMetric (InvocationMetricLogger.InvocationMetricKey key, String value)
| Parameters | |
|---|---|
| key | InvocationMetricLogger.InvocationMetricKey | 
| value | String | 
addInvocationMetric
protected void addInvocationMetric (InvocationMetricLogger.InvocationMetricKey key, long value)
| Parameters | |
|---|---|
| key | InvocationMetricLogger.InvocationMetricKey | 
| value | long | 
applyAutomatedReporters
protected void applyAutomatedReporters (IConfiguration config)
| Parameters | |
|---|---|
| config | IConfiguration | 
setExitCode
protected void setExitCode (CommandRunner.ExitCode code, Throwable stack)
Helper to set the exit code. Exposed for testing.
| Parameters | |
|---|---|
| code | CommandRunner.ExitCode | 
| stack | Throwable | 
