/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace DeviceFarm { namespace Model { /** *

Represents a test run on a set of devices with a given app package, test * parameters, and so on.

See Also:

AWS API * Reference

*/ class AWS_DEVICEFARM_API Run { public: Run(); Run(Aws::Utils::Json::JsonView jsonValue); Run& operator=(Aws::Utils::Json::JsonView jsonValue); Aws::Utils::Json::JsonValue Jsonize() const; /** *

The run's ARN.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The run's ARN.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The run's ARN.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The run's ARN.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The run's ARN.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The run's ARN.

*/ inline Run& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The run's ARN.

*/ inline Run& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The run's ARN.

*/ inline Run& WithArn(const char* value) { SetArn(value); return *this;} /** *

The run's name.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The run's name.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The run's name.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The run's name.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The run's name.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The run's name.

*/ inline Run& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The run's name.

*/ inline Run& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The run's name.

*/ inline Run& WithName(const char* value) { SetName(value); return *this;} /** *

The run's type.

Must be one of the following values:

  • *

    BUILTIN_FUZZ

  • BUILTIN_EXPLORER

    For Android, an * app explorer that traverses an Android app, interacting with it and capturing * screenshots at the same time.

  • APPIUM_JAVA_JUNIT

    *
  • APPIUM_JAVA_TESTNG

  • APPIUM_PYTHON

  • *

    APPIUM_NODE

  • APPIUM_RUBY

  • *

    APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • *

    APPIUM_WEB_PYTHON

  • APPIUM_WEB_NODE

  • *

    APPIUM_WEB_RUBY

  • CALABASH

  • *

    INSTRUMENTATION

  • UIAUTOMATION

  • *

    UIAUTOMATOR

  • XCTEST

  • XCTEST_UI

  • *
*/ inline const TestType& GetType() const{ return m_type; } /** *

The run's type.

Must be one of the following values:

  • *

    BUILTIN_FUZZ

  • BUILTIN_EXPLORER

    For Android, an * app explorer that traverses an Android app, interacting with it and capturing * screenshots at the same time.

  • APPIUM_JAVA_JUNIT

    *
  • APPIUM_JAVA_TESTNG

  • APPIUM_PYTHON

  • *

    APPIUM_NODE

  • APPIUM_RUBY

  • *

    APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • *

    APPIUM_WEB_PYTHON

  • APPIUM_WEB_NODE

  • *

    APPIUM_WEB_RUBY

  • CALABASH

  • *

    INSTRUMENTATION

  • UIAUTOMATION

  • *

    UIAUTOMATOR

  • XCTEST

  • XCTEST_UI

  • *
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The run's type.

Must be one of the following values:

  • *

    BUILTIN_FUZZ

  • BUILTIN_EXPLORER

    For Android, an * app explorer that traverses an Android app, interacting with it and capturing * screenshots at the same time.

  • APPIUM_JAVA_JUNIT

    *
  • APPIUM_JAVA_TESTNG

  • APPIUM_PYTHON

  • *

    APPIUM_NODE

  • APPIUM_RUBY

  • *

    APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • *

    APPIUM_WEB_PYTHON

  • APPIUM_WEB_NODE

  • *

    APPIUM_WEB_RUBY

  • CALABASH

  • *

    INSTRUMENTATION

  • UIAUTOMATION

  • *

    UIAUTOMATOR

  • XCTEST

  • XCTEST_UI

  • *
*/ inline void SetType(const TestType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The run's type.

Must be one of the following values:

  • *

    BUILTIN_FUZZ

  • BUILTIN_EXPLORER

    For Android, an * app explorer that traverses an Android app, interacting with it and capturing * screenshots at the same time.

  • APPIUM_JAVA_JUNIT

    *
  • APPIUM_JAVA_TESTNG

  • APPIUM_PYTHON

  • *

    APPIUM_NODE

  • APPIUM_RUBY

  • *

    APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • *

    APPIUM_WEB_PYTHON

  • APPIUM_WEB_NODE

  • *

    APPIUM_WEB_RUBY

  • CALABASH

  • *

    INSTRUMENTATION

  • UIAUTOMATION

  • *

    UIAUTOMATOR

  • XCTEST

  • XCTEST_UI

  • *
*/ inline void SetType(TestType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The run's type.

Must be one of the following values:

  • *

    BUILTIN_FUZZ

  • BUILTIN_EXPLORER

    For Android, an * app explorer that traverses an Android app, interacting with it and capturing * screenshots at the same time.

  • APPIUM_JAVA_JUNIT

    *
  • APPIUM_JAVA_TESTNG

  • APPIUM_PYTHON

  • *

    APPIUM_NODE

  • APPIUM_RUBY

  • *

    APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • *

    APPIUM_WEB_PYTHON

  • APPIUM_WEB_NODE

  • *

    APPIUM_WEB_RUBY

  • CALABASH

  • *

    INSTRUMENTATION

  • UIAUTOMATION

  • *

    UIAUTOMATOR

  • XCTEST

  • XCTEST_UI

  • *
*/ inline Run& WithType(const TestType& value) { SetType(value); return *this;} /** *

The run's type.

Must be one of the following values:

  • *

    BUILTIN_FUZZ

  • BUILTIN_EXPLORER

    For Android, an * app explorer that traverses an Android app, interacting with it and capturing * screenshots at the same time.

  • APPIUM_JAVA_JUNIT

    *
  • APPIUM_JAVA_TESTNG

  • APPIUM_PYTHON

  • *

    APPIUM_NODE

  • APPIUM_RUBY

  • *

    APPIUM_WEB_JAVA_JUNIT

  • APPIUM_WEB_JAVA_TESTNG

  • *

    APPIUM_WEB_PYTHON

  • APPIUM_WEB_NODE

  • *

    APPIUM_WEB_RUBY

  • CALABASH

  • *

    INSTRUMENTATION

  • UIAUTOMATION

  • *

    UIAUTOMATOR

  • XCTEST

  • XCTEST_UI

  • *
*/ inline Run& WithType(TestType&& value) { SetType(std::move(value)); return *this;} /** *

The run's platform.

Allowed values include:

  • *

    ANDROID

  • IOS

*/ inline const DevicePlatform& GetPlatform() const{ return m_platform; } /** *

The run's platform.

Allowed values include:

  • *

    ANDROID

  • IOS

*/ inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; } /** *

The run's platform.

Allowed values include:

  • *

    ANDROID

  • IOS

*/ inline void SetPlatform(const DevicePlatform& value) { m_platformHasBeenSet = true; m_platform = value; } /** *

The run's platform.

Allowed values include:

  • *

    ANDROID

  • IOS

*/ inline void SetPlatform(DevicePlatform&& value) { m_platformHasBeenSet = true; m_platform = std::move(value); } /** *

The run's platform.

Allowed values include:

  • *

    ANDROID

  • IOS

*/ inline Run& WithPlatform(const DevicePlatform& value) { SetPlatform(value); return *this;} /** *

The run's platform.

Allowed values include:

  • *

    ANDROID

  • IOS

*/ inline Run& WithPlatform(DevicePlatform&& value) { SetPlatform(std::move(value)); return *this;} /** *

When the run was created.

*/ inline const Aws::Utils::DateTime& GetCreated() const{ return m_created; } /** *

When the run was created.

*/ inline bool CreatedHasBeenSet() const { return m_createdHasBeenSet; } /** *

When the run was created.

*/ inline void SetCreated(const Aws::Utils::DateTime& value) { m_createdHasBeenSet = true; m_created = value; } /** *

When the run was created.

*/ inline void SetCreated(Aws::Utils::DateTime&& value) { m_createdHasBeenSet = true; m_created = std::move(value); } /** *

When the run was created.

*/ inline Run& WithCreated(const Aws::Utils::DateTime& value) { SetCreated(value); return *this;} /** *

When the run was created.

*/ inline Run& WithCreated(Aws::Utils::DateTime&& value) { SetCreated(std::move(value)); return *this;} /** *

The run's status.

Allowed values include:

  • PENDING

    *
  • PENDING_CONCURRENCY

  • PENDING_DEVICE

  • *
  • PROCESSING

  • SCHEDULING

  • PREPARING

    *
  • RUNNING

  • COMPLETED

  • STOPPING

    *
*/ inline const ExecutionStatus& GetStatus() const{ return m_status; } /** *

The run's status.

Allowed values include:

  • PENDING

    *
  • PENDING_CONCURRENCY

  • PENDING_DEVICE

  • *
  • PROCESSING

  • SCHEDULING

  • PREPARING

    *
  • RUNNING

  • COMPLETED

  • STOPPING

    *
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The run's status.

Allowed values include:

  • PENDING

    *
  • PENDING_CONCURRENCY

  • PENDING_DEVICE

  • *
  • PROCESSING

  • SCHEDULING

  • PREPARING

    *
  • RUNNING

  • COMPLETED

  • STOPPING

    *
*/ inline void SetStatus(const ExecutionStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The run's status.

Allowed values include:

  • PENDING

    *
  • PENDING_CONCURRENCY

  • PENDING_DEVICE

  • *
  • PROCESSING

  • SCHEDULING

  • PREPARING

    *
  • RUNNING

  • COMPLETED

  • STOPPING

    *
*/ inline void SetStatus(ExecutionStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The run's status.

Allowed values include:

  • PENDING

    *
  • PENDING_CONCURRENCY

  • PENDING_DEVICE

  • *
  • PROCESSING

  • SCHEDULING

  • PREPARING

    *
  • RUNNING

  • COMPLETED

  • STOPPING

    *
*/ inline Run& WithStatus(const ExecutionStatus& value) { SetStatus(value); return *this;} /** *

The run's status.

Allowed values include:

  • PENDING

    *
  • PENDING_CONCURRENCY

  • PENDING_DEVICE

  • *
  • PROCESSING

  • SCHEDULING

  • PREPARING

    *
  • RUNNING

  • COMPLETED

  • STOPPING

    *
*/ inline Run& WithStatus(ExecutionStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The run's result.

Allowed values include:

  • PENDING

    *
  • PASSED

  • WARNED

  • FAILED

  • *
  • SKIPPED

  • ERRORED

  • STOPPED

  • *
*/ inline const ExecutionResult& GetResult() const{ return m_result; } /** *

The run's result.

Allowed values include:

  • PENDING

    *
  • PASSED

  • WARNED

  • FAILED

  • *
  • SKIPPED

  • ERRORED

  • STOPPED

  • *
*/ inline bool ResultHasBeenSet() const { return m_resultHasBeenSet; } /** *

The run's result.

Allowed values include:

  • PENDING

    *
  • PASSED

  • WARNED

  • FAILED

  • *
  • SKIPPED

  • ERRORED

  • STOPPED

  • *
*/ inline void SetResult(const ExecutionResult& value) { m_resultHasBeenSet = true; m_result = value; } /** *

The run's result.

Allowed values include:

  • PENDING

    *
  • PASSED

  • WARNED

  • FAILED

  • *
  • SKIPPED

  • ERRORED

  • STOPPED

  • *
*/ inline void SetResult(ExecutionResult&& value) { m_resultHasBeenSet = true; m_result = std::move(value); } /** *

The run's result.

Allowed values include:

  • PENDING

    *
  • PASSED

  • WARNED

  • FAILED

  • *
  • SKIPPED

  • ERRORED

  • STOPPED

  • *
*/ inline Run& WithResult(const ExecutionResult& value) { SetResult(value); return *this;} /** *

The run's result.

Allowed values include:

  • PENDING

    *
  • PASSED

  • WARNED

  • FAILED

  • *
  • SKIPPED

  • ERRORED

  • STOPPED

  • *
*/ inline Run& WithResult(ExecutionResult&& value) { SetResult(std::move(value)); return *this;} /** *

The run's start time.

*/ inline const Aws::Utils::DateTime& GetStarted() const{ return m_started; } /** *

The run's start time.

*/ inline bool StartedHasBeenSet() const { return m_startedHasBeenSet; } /** *

The run's start time.

*/ inline void SetStarted(const Aws::Utils::DateTime& value) { m_startedHasBeenSet = true; m_started = value; } /** *

The run's start time.

*/ inline void SetStarted(Aws::Utils::DateTime&& value) { m_startedHasBeenSet = true; m_started = std::move(value); } /** *

The run's start time.

*/ inline Run& WithStarted(const Aws::Utils::DateTime& value) { SetStarted(value); return *this;} /** *

The run's start time.

*/ inline Run& WithStarted(Aws::Utils::DateTime&& value) { SetStarted(std::move(value)); return *this;} /** *

The run's stop time.

*/ inline const Aws::Utils::DateTime& GetStopped() const{ return m_stopped; } /** *

The run's stop time.

*/ inline bool StoppedHasBeenSet() const { return m_stoppedHasBeenSet; } /** *

The run's stop time.

*/ inline void SetStopped(const Aws::Utils::DateTime& value) { m_stoppedHasBeenSet = true; m_stopped = value; } /** *

The run's stop time.

*/ inline void SetStopped(Aws::Utils::DateTime&& value) { m_stoppedHasBeenSet = true; m_stopped = std::move(value); } /** *

The run's stop time.

*/ inline Run& WithStopped(const Aws::Utils::DateTime& value) { SetStopped(value); return *this;} /** *

The run's stop time.

*/ inline Run& WithStopped(Aws::Utils::DateTime&& value) { SetStopped(std::move(value)); return *this;} /** *

The run's result counters.

*/ inline const Counters& GetCounters() const{ return m_counters; } /** *

The run's result counters.

*/ inline bool CountersHasBeenSet() const { return m_countersHasBeenSet; } /** *

The run's result counters.

*/ inline void SetCounters(const Counters& value) { m_countersHasBeenSet = true; m_counters = value; } /** *

The run's result counters.

*/ inline void SetCounters(Counters&& value) { m_countersHasBeenSet = true; m_counters = std::move(value); } /** *

The run's result counters.

*/ inline Run& WithCounters(const Counters& value) { SetCounters(value); return *this;} /** *

The run's result counters.

*/ inline Run& WithCounters(Counters&& value) { SetCounters(std::move(value)); return *this;} /** *

A message about the run's result.

*/ inline const Aws::String& GetMessage() const{ return m_message; } /** *

A message about the run's result.

*/ inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; } /** *

A message about the run's result.

*/ inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; } /** *

A message about the run's result.

*/ inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); } /** *

A message about the run's result.

*/ inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); } /** *

A message about the run's result.

*/ inline Run& WithMessage(const Aws::String& value) { SetMessage(value); return *this;} /** *

A message about the run's result.

*/ inline Run& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;} /** *

A message about the run's result.

*/ inline Run& WithMessage(const char* value) { SetMessage(value); return *this;} /** *

The total number of jobs for the run.

*/ inline int GetTotalJobs() const{ return m_totalJobs; } /** *

The total number of jobs for the run.

*/ inline bool TotalJobsHasBeenSet() const { return m_totalJobsHasBeenSet; } /** *

The total number of jobs for the run.

*/ inline void SetTotalJobs(int value) { m_totalJobsHasBeenSet = true; m_totalJobs = value; } /** *

The total number of jobs for the run.

*/ inline Run& WithTotalJobs(int value) { SetTotalJobs(value); return *this;} /** *

The total number of completed jobs.

*/ inline int GetCompletedJobs() const{ return m_completedJobs; } /** *

The total number of completed jobs.

*/ inline bool CompletedJobsHasBeenSet() const { return m_completedJobsHasBeenSet; } /** *

The total number of completed jobs.

*/ inline void SetCompletedJobs(int value) { m_completedJobsHasBeenSet = true; m_completedJobs = value; } /** *

The total number of completed jobs.

*/ inline Run& WithCompletedJobs(int value) { SetCompletedJobs(value); return *this;} /** *

Specifies the billing method for a test run: metered or * unmetered. If the parameter is not specified, the default value is * metered.

If you have unmetered device slots, you must * set this to unmetered to use them. Otherwise, the run is counted * toward metered device minutes.

*/ inline const BillingMethod& GetBillingMethod() const{ return m_billingMethod; } /** *

Specifies the billing method for a test run: metered or * unmetered. If the parameter is not specified, the default value is * metered.

If you have unmetered device slots, you must * set this to unmetered to use them. Otherwise, the run is counted * toward metered device minutes.

*/ inline bool BillingMethodHasBeenSet() const { return m_billingMethodHasBeenSet; } /** *

Specifies the billing method for a test run: metered or * unmetered. If the parameter is not specified, the default value is * metered.

If you have unmetered device slots, you must * set this to unmetered to use them. Otherwise, the run is counted * toward metered device minutes.

*/ inline void SetBillingMethod(const BillingMethod& value) { m_billingMethodHasBeenSet = true; m_billingMethod = value; } /** *

Specifies the billing method for a test run: metered or * unmetered. If the parameter is not specified, the default value is * metered.

If you have unmetered device slots, you must * set this to unmetered to use them. Otherwise, the run is counted * toward metered device minutes.

*/ inline void SetBillingMethod(BillingMethod&& value) { m_billingMethodHasBeenSet = true; m_billingMethod = std::move(value); } /** *

Specifies the billing method for a test run: metered or * unmetered. If the parameter is not specified, the default value is * metered.

If you have unmetered device slots, you must * set this to unmetered to use them. Otherwise, the run is counted * toward metered device minutes.

*/ inline Run& WithBillingMethod(const BillingMethod& value) { SetBillingMethod(value); return *this;} /** *

Specifies the billing method for a test run: metered or * unmetered. If the parameter is not specified, the default value is * metered.

If you have unmetered device slots, you must * set this to unmetered to use them. Otherwise, the run is counted * toward metered device minutes.

*/ inline Run& WithBillingMethod(BillingMethod&& value) { SetBillingMethod(std::move(value)); return *this;} /** *

Represents the total (metered or unmetered) minutes used by the test run.

*/ inline const DeviceMinutes& GetDeviceMinutes() const{ return m_deviceMinutes; } /** *

Represents the total (metered or unmetered) minutes used by the test run.

*/ inline bool DeviceMinutesHasBeenSet() const { return m_deviceMinutesHasBeenSet; } /** *

Represents the total (metered or unmetered) minutes used by the test run.

*/ inline void SetDeviceMinutes(const DeviceMinutes& value) { m_deviceMinutesHasBeenSet = true; m_deviceMinutes = value; } /** *

Represents the total (metered or unmetered) minutes used by the test run.

*/ inline void SetDeviceMinutes(DeviceMinutes&& value) { m_deviceMinutesHasBeenSet = true; m_deviceMinutes = std::move(value); } /** *

Represents the total (metered or unmetered) minutes used by the test run.

*/ inline Run& WithDeviceMinutes(const DeviceMinutes& value) { SetDeviceMinutes(value); return *this;} /** *

Represents the total (metered or unmetered) minutes used by the test run.

*/ inline Run& WithDeviceMinutes(DeviceMinutes&& value) { SetDeviceMinutes(std::move(value)); return *this;} /** *

The network profile being used for a test run.

*/ inline const NetworkProfile& GetNetworkProfile() const{ return m_networkProfile; } /** *

The network profile being used for a test run.

*/ inline bool NetworkProfileHasBeenSet() const { return m_networkProfileHasBeenSet; } /** *

The network profile being used for a test run.

*/ inline void SetNetworkProfile(const NetworkProfile& value) { m_networkProfileHasBeenSet = true; m_networkProfile = value; } /** *

The network profile being used for a test run.

*/ inline void SetNetworkProfile(NetworkProfile&& value) { m_networkProfileHasBeenSet = true; m_networkProfile = std::move(value); } /** *

The network profile being used for a test run.

*/ inline Run& WithNetworkProfile(const NetworkProfile& value) { SetNetworkProfile(value); return *this;} /** *

The network profile being used for a test run.

*/ inline Run& WithNetworkProfile(NetworkProfile&& value) { SetNetworkProfile(std::move(value)); return *this;} /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline const Aws::String& GetParsingResultUrl() const{ return m_parsingResultUrl; } /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline bool ParsingResultUrlHasBeenSet() const { return m_parsingResultUrlHasBeenSet; } /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline void SetParsingResultUrl(const Aws::String& value) { m_parsingResultUrlHasBeenSet = true; m_parsingResultUrl = value; } /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline void SetParsingResultUrl(Aws::String&& value) { m_parsingResultUrlHasBeenSet = true; m_parsingResultUrl = std::move(value); } /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline void SetParsingResultUrl(const char* value) { m_parsingResultUrlHasBeenSet = true; m_parsingResultUrl.assign(value); } /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline Run& WithParsingResultUrl(const Aws::String& value) { SetParsingResultUrl(value); return *this;} /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline Run& WithParsingResultUrl(Aws::String&& value) { SetParsingResultUrl(std::move(value)); return *this;} /** *

Read-only URL for an object in an S3 bucket where you can get the parsing * results of the test package. If the test package doesn't parse, the reason why * it doesn't parse appears in the file that this URL points to.

*/ inline Run& WithParsingResultUrl(const char* value) { SetParsingResultUrl(value); return *this;} /** *

Supporting field for the result field. Set only if result is * SKIPPED. PARSING_FAILED if the result is skipped * because of test package parsing failure.

*/ inline const ExecutionResultCode& GetResultCode() const{ return m_resultCode; } /** *

Supporting field for the result field. Set only if result is * SKIPPED. PARSING_FAILED if the result is skipped * because of test package parsing failure.

*/ inline bool ResultCodeHasBeenSet() const { return m_resultCodeHasBeenSet; } /** *

Supporting field for the result field. Set only if result is * SKIPPED. PARSING_FAILED if the result is skipped * because of test package parsing failure.

*/ inline void SetResultCode(const ExecutionResultCode& value) { m_resultCodeHasBeenSet = true; m_resultCode = value; } /** *

Supporting field for the result field. Set only if result is * SKIPPED. PARSING_FAILED if the result is skipped * because of test package parsing failure.

*/ inline void SetResultCode(ExecutionResultCode&& value) { m_resultCodeHasBeenSet = true; m_resultCode = std::move(value); } /** *

Supporting field for the result field. Set only if result is * SKIPPED. PARSING_FAILED if the result is skipped * because of test package parsing failure.

*/ inline Run& WithResultCode(const ExecutionResultCode& value) { SetResultCode(value); return *this;} /** *

Supporting field for the result field. Set only if result is * SKIPPED. PARSING_FAILED if the result is skipped * because of test package parsing failure.

*/ inline Run& WithResultCode(ExecutionResultCode&& value) { SetResultCode(std::move(value)); return *this;} /** *

For fuzz tests, this is a seed to use for randomizing the UI fuzz test. Using * the same seed value between tests ensures identical event sequences.

*/ inline int GetSeed() const{ return m_seed; } /** *

For fuzz tests, this is a seed to use for randomizing the UI fuzz test. Using * the same seed value between tests ensures identical event sequences.

*/ inline bool SeedHasBeenSet() const { return m_seedHasBeenSet; } /** *

For fuzz tests, this is a seed to use for randomizing the UI fuzz test. Using * the same seed value between tests ensures identical event sequences.

*/ inline void SetSeed(int value) { m_seedHasBeenSet = true; m_seed = value; } /** *

For fuzz tests, this is a seed to use for randomizing the UI fuzz test. Using * the same seed value between tests ensures identical event sequences.

*/ inline Run& WithSeed(int value) { SetSeed(value); return *this;} /** *

An app to upload or that has been uploaded.

*/ inline const Aws::String& GetAppUpload() const{ return m_appUpload; } /** *

An app to upload or that has been uploaded.

*/ inline bool AppUploadHasBeenSet() const { return m_appUploadHasBeenSet; } /** *

An app to upload or that has been uploaded.

*/ inline void SetAppUpload(const Aws::String& value) { m_appUploadHasBeenSet = true; m_appUpload = value; } /** *

An app to upload or that has been uploaded.

*/ inline void SetAppUpload(Aws::String&& value) { m_appUploadHasBeenSet = true; m_appUpload = std::move(value); } /** *

An app to upload or that has been uploaded.

*/ inline void SetAppUpload(const char* value) { m_appUploadHasBeenSet = true; m_appUpload.assign(value); } /** *

An app to upload or that has been uploaded.

*/ inline Run& WithAppUpload(const Aws::String& value) { SetAppUpload(value); return *this;} /** *

An app to upload or that has been uploaded.

*/ inline Run& WithAppUpload(Aws::String&& value) { SetAppUpload(std::move(value)); return *this;} /** *

An app to upload or that has been uploaded.

*/ inline Run& WithAppUpload(const char* value) { SetAppUpload(value); return *this;} /** *

For fuzz tests, this is the number of events, between 1 and 10000, that the * UI fuzz test should perform.

*/ inline int GetEventCount() const{ return m_eventCount; } /** *

For fuzz tests, this is the number of events, between 1 and 10000, that the * UI fuzz test should perform.

*/ inline bool EventCountHasBeenSet() const { return m_eventCountHasBeenSet; } /** *

For fuzz tests, this is the number of events, between 1 and 10000, that the * UI fuzz test should perform.

*/ inline void SetEventCount(int value) { m_eventCountHasBeenSet = true; m_eventCount = value; } /** *

For fuzz tests, this is the number of events, between 1 and 10000, that the * UI fuzz test should perform.

*/ inline Run& WithEventCount(int value) { SetEventCount(value); return *this;} /** *

The number of minutes the job executes before it times out.

*/ inline int GetJobTimeoutMinutes() const{ return m_jobTimeoutMinutes; } /** *

The number of minutes the job executes before it times out.

*/ inline bool JobTimeoutMinutesHasBeenSet() const { return m_jobTimeoutMinutesHasBeenSet; } /** *

The number of minutes the job executes before it times out.

*/ inline void SetJobTimeoutMinutes(int value) { m_jobTimeoutMinutesHasBeenSet = true; m_jobTimeoutMinutes = value; } /** *

The number of minutes the job executes before it times out.

*/ inline Run& WithJobTimeoutMinutes(int value) { SetJobTimeoutMinutes(value); return *this;} /** *

The ARN of the device pool for the run.

*/ inline const Aws::String& GetDevicePoolArn() const{ return m_devicePoolArn; } /** *

The ARN of the device pool for the run.

*/ inline bool DevicePoolArnHasBeenSet() const { return m_devicePoolArnHasBeenSet; } /** *

The ARN of the device pool for the run.

*/ inline void SetDevicePoolArn(const Aws::String& value) { m_devicePoolArnHasBeenSet = true; m_devicePoolArn = value; } /** *

The ARN of the device pool for the run.

*/ inline void SetDevicePoolArn(Aws::String&& value) { m_devicePoolArnHasBeenSet = true; m_devicePoolArn = std::move(value); } /** *

The ARN of the device pool for the run.

*/ inline void SetDevicePoolArn(const char* value) { m_devicePoolArnHasBeenSet = true; m_devicePoolArn.assign(value); } /** *

The ARN of the device pool for the run.

*/ inline Run& WithDevicePoolArn(const Aws::String& value) { SetDevicePoolArn(value); return *this;} /** *

The ARN of the device pool for the run.

*/ inline Run& WithDevicePoolArn(Aws::String&& value) { SetDevicePoolArn(std::move(value)); return *this;} /** *

The ARN of the device pool for the run.

*/ inline Run& WithDevicePoolArn(const char* value) { SetDevicePoolArn(value); return *this;} /** *

Information about the locale that is used for the run.

*/ inline const Aws::String& GetLocale() const{ return m_locale; } /** *

Information about the locale that is used for the run.

*/ inline bool LocaleHasBeenSet() const { return m_localeHasBeenSet; } /** *

Information about the locale that is used for the run.

*/ inline void SetLocale(const Aws::String& value) { m_localeHasBeenSet = true; m_locale = value; } /** *

Information about the locale that is used for the run.

*/ inline void SetLocale(Aws::String&& value) { m_localeHasBeenSet = true; m_locale = std::move(value); } /** *

Information about the locale that is used for the run.

*/ inline void SetLocale(const char* value) { m_localeHasBeenSet = true; m_locale.assign(value); } /** *

Information about the locale that is used for the run.

*/ inline Run& WithLocale(const Aws::String& value) { SetLocale(value); return *this;} /** *

Information about the locale that is used for the run.

*/ inline Run& WithLocale(Aws::String&& value) { SetLocale(std::move(value)); return *this;} /** *

Information about the locale that is used for the run.

*/ inline Run& WithLocale(const char* value) { SetLocale(value); return *this;} /** *

Information about the radio states for the run.

*/ inline const Radios& GetRadios() const{ return m_radios; } /** *

Information about the radio states for the run.

*/ inline bool RadiosHasBeenSet() const { return m_radiosHasBeenSet; } /** *

Information about the radio states for the run.

*/ inline void SetRadios(const Radios& value) { m_radiosHasBeenSet = true; m_radios = value; } /** *

Information about the radio states for the run.

*/ inline void SetRadios(Radios&& value) { m_radiosHasBeenSet = true; m_radios = std::move(value); } /** *

Information about the radio states for the run.

*/ inline Run& WithRadios(const Radios& value) { SetRadios(value); return *this;} /** *

Information about the radio states for the run.

*/ inline Run& WithRadios(Radios&& value) { SetRadios(std::move(value)); return *this;} /** *

Information about the location that is used for the run.

*/ inline const Location& GetLocation() const{ return m_location; } /** *

Information about the location that is used for the run.

*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *

Information about the location that is used for the run.

*/ inline void SetLocation(const Location& value) { m_locationHasBeenSet = true; m_location = value; } /** *

Information about the location that is used for the run.

*/ inline void SetLocation(Location&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *

Information about the location that is used for the run.

*/ inline Run& WithLocation(const Location& value) { SetLocation(value); return *this;} /** *

Information about the location that is used for the run.

*/ inline Run& WithLocation(Location&& value) { SetLocation(std::move(value)); return *this;} /** *

Output CustomerArtifactPaths object for the test run.

*/ inline const CustomerArtifactPaths& GetCustomerArtifactPaths() const{ return m_customerArtifactPaths; } /** *

Output CustomerArtifactPaths object for the test run.

*/ inline bool CustomerArtifactPathsHasBeenSet() const { return m_customerArtifactPathsHasBeenSet; } /** *

Output CustomerArtifactPaths object for the test run.

*/ inline void SetCustomerArtifactPaths(const CustomerArtifactPaths& value) { m_customerArtifactPathsHasBeenSet = true; m_customerArtifactPaths = value; } /** *

Output CustomerArtifactPaths object for the test run.

*/ inline void SetCustomerArtifactPaths(CustomerArtifactPaths&& value) { m_customerArtifactPathsHasBeenSet = true; m_customerArtifactPaths = std::move(value); } /** *

Output CustomerArtifactPaths object for the test run.

*/ inline Run& WithCustomerArtifactPaths(const CustomerArtifactPaths& value) { SetCustomerArtifactPaths(value); return *this;} /** *

Output CustomerArtifactPaths object for the test run.

*/ inline Run& WithCustomerArtifactPaths(CustomerArtifactPaths&& value) { SetCustomerArtifactPaths(std::move(value)); return *this;} /** *

The Device Farm console URL for the recording of the run.

*/ inline const Aws::String& GetWebUrl() const{ return m_webUrl; } /** *

The Device Farm console URL for the recording of the run.

*/ inline bool WebUrlHasBeenSet() const { return m_webUrlHasBeenSet; } /** *

The Device Farm console URL for the recording of the run.

*/ inline void SetWebUrl(const Aws::String& value) { m_webUrlHasBeenSet = true; m_webUrl = value; } /** *

The Device Farm console URL for the recording of the run.

*/ inline void SetWebUrl(Aws::String&& value) { m_webUrlHasBeenSet = true; m_webUrl = std::move(value); } /** *

The Device Farm console URL for the recording of the run.

*/ inline void SetWebUrl(const char* value) { m_webUrlHasBeenSet = true; m_webUrl.assign(value); } /** *

The Device Farm console URL for the recording of the run.

*/ inline Run& WithWebUrl(const Aws::String& value) { SetWebUrl(value); return *this;} /** *

The Device Farm console URL for the recording of the run.

*/ inline Run& WithWebUrl(Aws::String&& value) { SetWebUrl(std::move(value)); return *this;} /** *

The Device Farm console URL for the recording of the run.

*/ inline Run& WithWebUrl(const char* value) { SetWebUrl(value); return *this;} /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline bool GetSkipAppResign() const{ return m_skipAppResign; } /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline bool SkipAppResignHasBeenSet() const { return m_skipAppResignHasBeenSet; } /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline void SetSkipAppResign(bool value) { m_skipAppResignHasBeenSet = true; m_skipAppResign = value; } /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline Run& WithSkipAppResign(bool value) { SetSkipAppResign(value); return *this;} /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline const Aws::String& GetTestSpecArn() const{ return m_testSpecArn; } /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline bool TestSpecArnHasBeenSet() const { return m_testSpecArnHasBeenSet; } /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline void SetTestSpecArn(const Aws::String& value) { m_testSpecArnHasBeenSet = true; m_testSpecArn = value; } /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline void SetTestSpecArn(Aws::String&& value) { m_testSpecArnHasBeenSet = true; m_testSpecArn = std::move(value); } /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline void SetTestSpecArn(const char* value) { m_testSpecArnHasBeenSet = true; m_testSpecArn.assign(value); } /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline Run& WithTestSpecArn(const Aws::String& value) { SetTestSpecArn(value); return *this;} /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline Run& WithTestSpecArn(Aws::String&& value) { SetTestSpecArn(std::move(value)); return *this;} /** *

The ARN of the YAML-formatted test specification for the run.

*/ inline Run& WithTestSpecArn(const char* value) { SetTestSpecArn(value); return *this;} /** *

The results of a device filter used to select the devices for a test run.

*/ inline const DeviceSelectionResult& GetDeviceSelectionResult() const{ return m_deviceSelectionResult; } /** *

The results of a device filter used to select the devices for a test run.

*/ inline bool DeviceSelectionResultHasBeenSet() const { return m_deviceSelectionResultHasBeenSet; } /** *

The results of a device filter used to select the devices for a test run.

*/ inline void SetDeviceSelectionResult(const DeviceSelectionResult& value) { m_deviceSelectionResultHasBeenSet = true; m_deviceSelectionResult = value; } /** *

The results of a device filter used to select the devices for a test run.

*/ inline void SetDeviceSelectionResult(DeviceSelectionResult&& value) { m_deviceSelectionResultHasBeenSet = true; m_deviceSelectionResult = std::move(value); } /** *

The results of a device filter used to select the devices for a test run.

*/ inline Run& WithDeviceSelectionResult(const DeviceSelectionResult& value) { SetDeviceSelectionResult(value); return *this;} /** *

The results of a device filter used to select the devices for a test run.

*/ inline Run& WithDeviceSelectionResult(DeviceSelectionResult&& value) { SetDeviceSelectionResult(std::move(value)); return *this;} private: Aws::String m_arn; bool m_arnHasBeenSet; Aws::String m_name; bool m_nameHasBeenSet; TestType m_type; bool m_typeHasBeenSet; DevicePlatform m_platform; bool m_platformHasBeenSet; Aws::Utils::DateTime m_created; bool m_createdHasBeenSet; ExecutionStatus m_status; bool m_statusHasBeenSet; ExecutionResult m_result; bool m_resultHasBeenSet; Aws::Utils::DateTime m_started; bool m_startedHasBeenSet; Aws::Utils::DateTime m_stopped; bool m_stoppedHasBeenSet; Counters m_counters; bool m_countersHasBeenSet; Aws::String m_message; bool m_messageHasBeenSet; int m_totalJobs; bool m_totalJobsHasBeenSet; int m_completedJobs; bool m_completedJobsHasBeenSet; BillingMethod m_billingMethod; bool m_billingMethodHasBeenSet; DeviceMinutes m_deviceMinutes; bool m_deviceMinutesHasBeenSet; NetworkProfile m_networkProfile; bool m_networkProfileHasBeenSet; Aws::String m_parsingResultUrl; bool m_parsingResultUrlHasBeenSet; ExecutionResultCode m_resultCode; bool m_resultCodeHasBeenSet; int m_seed; bool m_seedHasBeenSet; Aws::String m_appUpload; bool m_appUploadHasBeenSet; int m_eventCount; bool m_eventCountHasBeenSet; int m_jobTimeoutMinutes; bool m_jobTimeoutMinutesHasBeenSet; Aws::String m_devicePoolArn; bool m_devicePoolArnHasBeenSet; Aws::String m_locale; bool m_localeHasBeenSet; Radios m_radios; bool m_radiosHasBeenSet; Location m_location; bool m_locationHasBeenSet; CustomerArtifactPaths m_customerArtifactPaths; bool m_customerArtifactPathsHasBeenSet; Aws::String m_webUrl; bool m_webUrlHasBeenSet; bool m_skipAppResign; bool m_skipAppResignHasBeenSet; Aws::String m_testSpecArn; bool m_testSpecArnHasBeenSet; DeviceSelectionResult m_deviceSelectionResult; bool m_deviceSelectionResultHasBeenSet; }; } // namespace Model } // namespace DeviceFarm } // namespace Aws