@Incubating interface DeviceTestRunInput : Serializable

Interface that represents input into the Instrumented Test Task, created by a DeviceTestRunConfigureAction, to be consumed by the DeviceTestRunTaskAction.

This interface should be implemented for use with a Custom Managed Device Registration. The implementation of this class is used as an input into the Managed Device Test Task. Therefore, all properities on the implementation of this interface must be marked with Input, Nested or Internal to ensure proper caching of test results.

Additionally, making the type compatible with ObjectFactory.newInstance makes implementing the DeviceTestRunConfigureAction easier. See: DeviceTestRunConfureAction

Example Implementation:

abstract class CustomInput: DeviceTestRunInput {
/** name of device from DSL */
@get: Input
abstract val deviceName: Property<String>

/** Id of device in a device farm, for example*/
@get: Input
abstract val deviceId: Property<Int>

@get: Internal
abstract val timeoutSeconds: Property<Int>