/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the devicefarm-2015-06-23.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.DeviceFarm.Model
{
///
/// Represents a test run on a set of devices with a given app package, test parameters,
/// and so on.
///
public partial class Run
{
private string _appUpload;
private string _arn;
private BillingMethod _billingMethod;
private int? _completedJobs;
private Counters _counters;
private DateTime? _created;
private CustomerArtifactPaths _customerArtifactPaths;
private DeviceMinutes _deviceMinutes;
private string _devicePoolArn;
private DeviceSelectionResult _deviceSelectionResult;
private int? _eventCount;
private int? _jobTimeoutMinutes;
private string _locale;
private Location _location;
private string _message;
private string _name;
private NetworkProfile _networkProfile;
private string _parsingResultUrl;
private DevicePlatform _platform;
private Radios _radios;
private ExecutionResult _result;
private ExecutionResultCode _resultCode;
private int? _seed;
private bool? _skipAppResign;
private DateTime? _started;
private ExecutionStatus _status;
private DateTime? _stopped;
private string _testSpecArn;
private int? _totalJobs;
private TestType _type;
private VpcConfig _vpcConfig;
private string _webUrl;
///
/// Gets and sets the property AppUpload.
///
/// An app to upload or that has been uploaded.
///
///
[AWSProperty(Min=32, Max=1011)]
public string AppUpload
{
get { return this._appUpload; }
set { this._appUpload = value; }
}
// Check to see if AppUpload property is set
internal bool IsSetAppUpload()
{
return this._appUpload != null;
}
///
/// Gets and sets the property Arn.
///
/// The run's ARN.
///
///
[AWSProperty(Min=32, Max=1011)]
public string Arn
{
get { return this._arn; }
set { this._arn = value; }
}
// Check to see if Arn property is set
internal bool IsSetArn()
{
return this._arn != null;
}
///
/// Gets and sets the property 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.
///
///
///
public BillingMethod BillingMethod
{
get { return this._billingMethod; }
set { this._billingMethod = value; }
}
// Check to see if BillingMethod property is set
internal bool IsSetBillingMethod()
{
return this._billingMethod != null;
}
///
/// Gets and sets the property CompletedJobs.
///
/// The total number of completed jobs.
///
///
public int CompletedJobs
{
get { return this._completedJobs.GetValueOrDefault(); }
set { this._completedJobs = value; }
}
// Check to see if CompletedJobs property is set
internal bool IsSetCompletedJobs()
{
return this._completedJobs.HasValue;
}
///
/// Gets and sets the property Counters.
///
/// The run's result counters.
///
///
public Counters Counters
{
get { return this._counters; }
set { this._counters = value; }
}
// Check to see if Counters property is set
internal bool IsSetCounters()
{
return this._counters != null;
}
///
/// Gets and sets the property Created.
///
/// When the run was created.
///
///
public DateTime Created
{
get { return this._created.GetValueOrDefault(); }
set { this._created = value; }
}
// Check to see if Created property is set
internal bool IsSetCreated()
{
return this._created.HasValue;
}
///
/// Gets and sets the property CustomerArtifactPaths.
///
/// Output CustomerArtifactPaths
object for the test run.
///
///
public CustomerArtifactPaths CustomerArtifactPaths
{
get { return this._customerArtifactPaths; }
set { this._customerArtifactPaths = value; }
}
// Check to see if CustomerArtifactPaths property is set
internal bool IsSetCustomerArtifactPaths()
{
return this._customerArtifactPaths != null;
}
///
/// Gets and sets the property DeviceMinutes.
///
/// Represents the total (metered or unmetered) minutes used by the test run.
///
///
public DeviceMinutes DeviceMinutes
{
get { return this._deviceMinutes; }
set { this._deviceMinutes = value; }
}
// Check to see if DeviceMinutes property is set
internal bool IsSetDeviceMinutes()
{
return this._deviceMinutes != null;
}
///
/// Gets and sets the property DevicePoolArn.
///
/// The ARN of the device pool for the run.
///
///
[AWSProperty(Min=32, Max=1011)]
public string DevicePoolArn
{
get { return this._devicePoolArn; }
set { this._devicePoolArn = value; }
}
// Check to see if DevicePoolArn property is set
internal bool IsSetDevicePoolArn()
{
return this._devicePoolArn != null;
}
///
/// Gets and sets the property DeviceSelectionResult.
///
/// The results of a device filter used to select the devices for a test run.
///
///
public DeviceSelectionResult DeviceSelectionResult
{
get { return this._deviceSelectionResult; }
set { this._deviceSelectionResult = value; }
}
// Check to see if DeviceSelectionResult property is set
internal bool IsSetDeviceSelectionResult()
{
return this._deviceSelectionResult != null;
}
///
/// Gets and sets the property EventCount.
///
/// For fuzz tests, this is the number of events, between 1 and 10000, that the UI fuzz
/// test should perform.
///
///
public int EventCount
{
get { return this._eventCount.GetValueOrDefault(); }
set { this._eventCount = value; }
}
// Check to see if EventCount property is set
internal bool IsSetEventCount()
{
return this._eventCount.HasValue;
}
///
/// Gets and sets the property JobTimeoutMinutes.
///
/// The number of minutes the job executes before it times out.
///
///
public int JobTimeoutMinutes
{
get { return this._jobTimeoutMinutes.GetValueOrDefault(); }
set { this._jobTimeoutMinutes = value; }
}
// Check to see if JobTimeoutMinutes property is set
internal bool IsSetJobTimeoutMinutes()
{
return this._jobTimeoutMinutes.HasValue;
}
///
/// Gets and sets the property Locale.
///
/// Information about the locale that is used for the run.
///
///
public string Locale
{
get { return this._locale; }
set { this._locale = value; }
}
// Check to see if Locale property is set
internal bool IsSetLocale()
{
return this._locale != null;
}
///
/// Gets and sets the property Location.
///
/// Information about the location that is used for the run.
///
///
public Location Location
{
get { return this._location; }
set { this._location = value; }
}
// Check to see if Location property is set
internal bool IsSetLocation()
{
return this._location != null;
}
///
/// Gets and sets the property Message.
///
/// A message about the run's result.
///
///
[AWSProperty(Min=0, Max=16384)]
public string Message
{
get { return this._message; }
set { this._message = value; }
}
// Check to see if Message property is set
internal bool IsSetMessage()
{
return this._message != null;
}
///
/// Gets and sets the property Name.
///
/// The run's name.
///
///
[AWSProperty(Min=0, Max=256)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property NetworkProfile.
///
/// The network profile being used for a test run.
///
///
public NetworkProfile NetworkProfile
{
get { return this._networkProfile; }
set { this._networkProfile = value; }
}
// Check to see if NetworkProfile property is set
internal bool IsSetNetworkProfile()
{
return this._networkProfile != null;
}
///
/// Gets and sets the property 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.
///
///
public string ParsingResultUrl
{
get { return this._parsingResultUrl; }
set { this._parsingResultUrl = value; }
}
// Check to see if ParsingResultUrl property is set
internal bool IsSetParsingResultUrl()
{
return this._parsingResultUrl != null;
}
///
/// Gets and sets the property Platform.
///
/// The run's platform.
///
///
///
/// Allowed values include:
///
/// -
///
/// ANDROID
///
///
-
///
/// IOS
///
///
///
public DevicePlatform Platform
{
get { return this._platform; }
set { this._platform = value; }
}
// Check to see if Platform property is set
internal bool IsSetPlatform()
{
return this._platform != null;
}
///
/// Gets and sets the property Radios.
///
/// Information about the radio states for the run.
///
///
public Radios Radios
{
get { return this._radios; }
set { this._radios = value; }
}
// Check to see if Radios property is set
internal bool IsSetRadios()
{
return this._radios != null;
}
///
/// Gets and sets the property Result.
///
/// The run's result.
///
///
///
/// Allowed values include:
///
/// -
///
/// PENDING
///
///
-
///
/// PASSED
///
///
-
///
/// WARNED
///
///
-
///
/// FAILED
///
///
-
///
/// SKIPPED
///
///
-
///
/// ERRORED
///
///
-
///
/// STOPPED
///
///
///
public ExecutionResult Result
{
get { return this._result; }
set { this._result = value; }
}
// Check to see if Result property is set
internal bool IsSetResult()
{
return this._result != null;
}
///
/// Gets and sets the property 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.
///
///
public ExecutionResultCode ResultCode
{
get { return this._resultCode; }
set { this._resultCode = value; }
}
// Check to see if ResultCode property is set
internal bool IsSetResultCode()
{
return this._resultCode != null;
}
///
/// Gets and sets the property 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.
///
///
public int Seed
{
get { return this._seed.GetValueOrDefault(); }
set { this._seed = value; }
}
// Check to see if Seed property is set
internal bool IsSetSeed()
{
return this._seed.HasValue;
}
///
/// Gets and sets the property 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.
///
///
public bool SkipAppResign
{
get { return this._skipAppResign.GetValueOrDefault(); }
set { this._skipAppResign = value; }
}
// Check to see if SkipAppResign property is set
internal bool IsSetSkipAppResign()
{
return this._skipAppResign.HasValue;
}
///
/// Gets and sets the property Started.
///
/// The run's start time.
///
///
public DateTime Started
{
get { return this._started.GetValueOrDefault(); }
set { this._started = value; }
}
// Check to see if Started property is set
internal bool IsSetStarted()
{
return this._started.HasValue;
}
///
/// Gets and sets the property Status.
///
/// The run's status.
///
///
///
/// Allowed values include:
///
/// -
///
/// PENDING
///
///
-
///
/// PENDING_CONCURRENCY
///
///
-
///
/// PENDING_DEVICE
///
///
-
///
/// PROCESSING
///
///
-
///
/// SCHEDULING
///
///
-
///
/// PREPARING
///
///
-
///
/// RUNNING
///
///
-
///
/// COMPLETED
///
///
-
///
/// STOPPING
///
///
///
public ExecutionStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property Stopped.
///
/// The run's stop time.
///
///
public DateTime Stopped
{
get { return this._stopped.GetValueOrDefault(); }
set { this._stopped = value; }
}
// Check to see if Stopped property is set
internal bool IsSetStopped()
{
return this._stopped.HasValue;
}
///
/// Gets and sets the property TestSpecArn.
///
/// The ARN of the YAML-formatted test specification for the run.
///
///
[AWSProperty(Min=32, Max=1011)]
public string TestSpecArn
{
get { return this._testSpecArn; }
set { this._testSpecArn = value; }
}
// Check to see if TestSpecArn property is set
internal bool IsSetTestSpecArn()
{
return this._testSpecArn != null;
}
///
/// Gets and sets the property TotalJobs.
///
/// The total number of jobs for the run.
///
///
public int TotalJobs
{
get { return this._totalJobs.GetValueOrDefault(); }
set { this._totalJobs = value; }
}
// Check to see if TotalJobs property is set
internal bool IsSetTotalJobs()
{
return this._totalJobs.HasValue;
}
///
/// Gets and sets the property 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
///
///
///
public TestType Type
{
get { return this._type; }
set { this._type = value; }
}
// Check to see if Type property is set
internal bool IsSetType()
{
return this._type != null;
}
///
/// Gets and sets the property VpcConfig.
///
/// The VPC security groups and subnets that are attached to a project.
///
///
public VpcConfig VpcConfig
{
get { return this._vpcConfig; }
set { this._vpcConfig = value; }
}
// Check to see if VpcConfig property is set
internal bool IsSetVpcConfig()
{
return this._vpcConfig != null;
}
///
/// Gets and sets the property WebUrl.
///
/// The Device Farm console URL for the recording of the run.
///
///
public string WebUrl
{
get { return this._webUrl; }
set { this._webUrl = value; }
}
// Check to see if WebUrl property is set
internal bool IsSetWebUrl()
{
return this._webUrl != null;
}
}
}