PageRenderTime 60ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/aws-cpp-sdk-devicefarm/include/aws/devicefarm/model/ScheduleRunTest.h

https://gitlab.com/github-cloud-corp/aws-sdk-cpp
C Header | 296 lines | 69 code | 35 blank | 192 comment | 0 complexity | 1c88eec9849b37ffab60348246fdc5d5 MD5 | raw file
  1. /*
  2. * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License").
  5. * You may not use this file except in compliance with the License.
  6. * A copy of the License is located at
  7. *
  8. * http://aws.amazon.com/apache2.0
  9. *
  10. * or in the "license" file accompanying this file. This file is distributed
  11. * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  12. * express or implied. See the License for the specific language governing
  13. * permissions and limitations under the License.
  14. */
  15. #pragma once
  16. #include <aws/devicefarm/DeviceFarm_EXPORTS.h>
  17. #include <aws/devicefarm/model/TestType.h>
  18. #include <aws/core/utils/memory/stl/AWSString.h>
  19. #include <aws/core/utils/memory/stl/AWSMap.h>
  20. namespace Aws
  21. {
  22. namespace Utils
  23. {
  24. namespace Json
  25. {
  26. class JsonValue;
  27. } // namespace Json
  28. } // namespace Utils
  29. namespace DeviceFarm
  30. {
  31. namespace Model
  32. {
  33. /**
  34. * <p>Represents additional test settings.</p>
  35. */
  36. class AWS_DEVICEFARM_API ScheduleRunTest
  37. {
  38. public:
  39. ScheduleRunTest();
  40. ScheduleRunTest(const Aws::Utils::Json::JsonValue& jsonValue);
  41. ScheduleRunTest& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
  42. Aws::Utils::Json::JsonValue Jsonize() const;
  43. /**
  44. * <p>The test's type.</p> <p>Must be one of the following values:</p> <ul>
  45. * <li><p>BUILTIN_FUZZ: The built-in fuzz type.</p></li> <li><p>BUILTIN_EXPLORER:
  46. * For Android, an app explorer that will traverse an Android app, interacting with
  47. * it and capturing screenshots at the same time.</p></li>
  48. * <li><p>APPIUM_JAVA_JUNIT: The Appium Java JUnit type.</p></li>
  49. * <li><p>APPIUM_JAVA_TESTNG: The Appium Java TestNG type.</p></li>
  50. * <li><p>APPIUM_PYTHON: The Appium Python type.</p></li>
  51. * <li><p>APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.</p></li>
  52. * <li><p>APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web
  53. * apps.</p></li> <li><p>APPIUM_WEB_PYTHON: The Appium Python type for Web
  54. * apps.</p></li> <li><p>CALABASH: The Calabash type.</p></li>
  55. * <li><p>INSTRUMENTATION: The Instrumentation type.</p></li> <li><p>UIAUTOMATION:
  56. * The uiautomation type.</p></li> <li><p>UIAUTOMATOR: The uiautomator
  57. * type.</p></li> <li><p>XCTEST: The XCode test type.</p></li> <li><p>XCTEST_UI:
  58. * The XCode UI test type.</p></li> </ul>
  59. */
  60. inline const TestType& GetType() const{ return m_type; }
  61. /**
  62. * <p>The test's type.</p> <p>Must be one of the following values:</p> <ul>
  63. * <li><p>BUILTIN_FUZZ: The built-in fuzz type.</p></li> <li><p>BUILTIN_EXPLORER:
  64. * For Android, an app explorer that will traverse an Android app, interacting with
  65. * it and capturing screenshots at the same time.</p></li>
  66. * <li><p>APPIUM_JAVA_JUNIT: The Appium Java JUnit type.</p></li>
  67. * <li><p>APPIUM_JAVA_TESTNG: The Appium Java TestNG type.</p></li>
  68. * <li><p>APPIUM_PYTHON: The Appium Python type.</p></li>
  69. * <li><p>APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.</p></li>
  70. * <li><p>APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web
  71. * apps.</p></li> <li><p>APPIUM_WEB_PYTHON: The Appium Python type for Web
  72. * apps.</p></li> <li><p>CALABASH: The Calabash type.</p></li>
  73. * <li><p>INSTRUMENTATION: The Instrumentation type.</p></li> <li><p>UIAUTOMATION:
  74. * The uiautomation type.</p></li> <li><p>UIAUTOMATOR: The uiautomator
  75. * type.</p></li> <li><p>XCTEST: The XCode test type.</p></li> <li><p>XCTEST_UI:
  76. * The XCode UI test type.</p></li> </ul>
  77. */
  78. inline void SetType(const TestType& value) { m_typeHasBeenSet = true; m_type = value; }
  79. /**
  80. * <p>The test's type.</p> <p>Must be one of the following values:</p> <ul>
  81. * <li><p>BUILTIN_FUZZ: The built-in fuzz type.</p></li> <li><p>BUILTIN_EXPLORER:
  82. * For Android, an app explorer that will traverse an Android app, interacting with
  83. * it and capturing screenshots at the same time.</p></li>
  84. * <li><p>APPIUM_JAVA_JUNIT: The Appium Java JUnit type.</p></li>
  85. * <li><p>APPIUM_JAVA_TESTNG: The Appium Java TestNG type.</p></li>
  86. * <li><p>APPIUM_PYTHON: The Appium Python type.</p></li>
  87. * <li><p>APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.</p></li>
  88. * <li><p>APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web
  89. * apps.</p></li> <li><p>APPIUM_WEB_PYTHON: The Appium Python type for Web
  90. * apps.</p></li> <li><p>CALABASH: The Calabash type.</p></li>
  91. * <li><p>INSTRUMENTATION: The Instrumentation type.</p></li> <li><p>UIAUTOMATION:
  92. * The uiautomation type.</p></li> <li><p>UIAUTOMATOR: The uiautomator
  93. * type.</p></li> <li><p>XCTEST: The XCode test type.</p></li> <li><p>XCTEST_UI:
  94. * The XCode UI test type.</p></li> </ul>
  95. */
  96. inline void SetType(TestType&& value) { m_typeHasBeenSet = true; m_type = value; }
  97. /**
  98. * <p>The test's type.</p> <p>Must be one of the following values:</p> <ul>
  99. * <li><p>BUILTIN_FUZZ: The built-in fuzz type.</p></li> <li><p>BUILTIN_EXPLORER:
  100. * For Android, an app explorer that will traverse an Android app, interacting with
  101. * it and capturing screenshots at the same time.</p></li>
  102. * <li><p>APPIUM_JAVA_JUNIT: The Appium Java JUnit type.</p></li>
  103. * <li><p>APPIUM_JAVA_TESTNG: The Appium Java TestNG type.</p></li>
  104. * <li><p>APPIUM_PYTHON: The Appium Python type.</p></li>
  105. * <li><p>APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.</p></li>
  106. * <li><p>APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web
  107. * apps.</p></li> <li><p>APPIUM_WEB_PYTHON: The Appium Python type for Web
  108. * apps.</p></li> <li><p>CALABASH: The Calabash type.</p></li>
  109. * <li><p>INSTRUMENTATION: The Instrumentation type.</p></li> <li><p>UIAUTOMATION:
  110. * The uiautomation type.</p></li> <li><p>UIAUTOMATOR: The uiautomator
  111. * type.</p></li> <li><p>XCTEST: The XCode test type.</p></li> <li><p>XCTEST_UI:
  112. * The XCode UI test type.</p></li> </ul>
  113. */
  114. inline ScheduleRunTest& WithType(const TestType& value) { SetType(value); return *this;}
  115. /**
  116. * <p>The test's type.</p> <p>Must be one of the following values:</p> <ul>
  117. * <li><p>BUILTIN_FUZZ: The built-in fuzz type.</p></li> <li><p>BUILTIN_EXPLORER:
  118. * For Android, an app explorer that will traverse an Android app, interacting with
  119. * it and capturing screenshots at the same time.</p></li>
  120. * <li><p>APPIUM_JAVA_JUNIT: The Appium Java JUnit type.</p></li>
  121. * <li><p>APPIUM_JAVA_TESTNG: The Appium Java TestNG type.</p></li>
  122. * <li><p>APPIUM_PYTHON: The Appium Python type.</p></li>
  123. * <li><p>APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.</p></li>
  124. * <li><p>APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web
  125. * apps.</p></li> <li><p>APPIUM_WEB_PYTHON: The Appium Python type for Web
  126. * apps.</p></li> <li><p>CALABASH: The Calabash type.</p></li>
  127. * <li><p>INSTRUMENTATION: The Instrumentation type.</p></li> <li><p>UIAUTOMATION:
  128. * The uiautomation type.</p></li> <li><p>UIAUTOMATOR: The uiautomator
  129. * type.</p></li> <li><p>XCTEST: The XCode test type.</p></li> <li><p>XCTEST_UI:
  130. * The XCode UI test type.</p></li> </ul>
  131. */
  132. inline ScheduleRunTest& WithType(TestType&& value) { SetType(value); return *this;}
  133. /**
  134. * <p>The ARN of the uploaded test that will be run.</p>
  135. */
  136. inline const Aws::String& GetTestPackageArn() const{ return m_testPackageArn; }
  137. /**
  138. * <p>The ARN of the uploaded test that will be run.</p>
  139. */
  140. inline void SetTestPackageArn(const Aws::String& value) { m_testPackageArnHasBeenSet = true; m_testPackageArn = value; }
  141. /**
  142. * <p>The ARN of the uploaded test that will be run.</p>
  143. */
  144. inline void SetTestPackageArn(Aws::String&& value) { m_testPackageArnHasBeenSet = true; m_testPackageArn = value; }
  145. /**
  146. * <p>The ARN of the uploaded test that will be run.</p>
  147. */
  148. inline void SetTestPackageArn(const char* value) { m_testPackageArnHasBeenSet = true; m_testPackageArn.assign(value); }
  149. /**
  150. * <p>The ARN of the uploaded test that will be run.</p>
  151. */
  152. inline ScheduleRunTest& WithTestPackageArn(const Aws::String& value) { SetTestPackageArn(value); return *this;}
  153. /**
  154. * <p>The ARN of the uploaded test that will be run.</p>
  155. */
  156. inline ScheduleRunTest& WithTestPackageArn(Aws::String&& value) { SetTestPackageArn(value); return *this;}
  157. /**
  158. * <p>The ARN of the uploaded test that will be run.</p>
  159. */
  160. inline ScheduleRunTest& WithTestPackageArn(const char* value) { SetTestPackageArn(value); return *this;}
  161. /**
  162. * <p>The test's filter.</p>
  163. */
  164. inline const Aws::String& GetFilter() const{ return m_filter; }
  165. /**
  166. * <p>The test's filter.</p>
  167. */
  168. inline void SetFilter(const Aws::String& value) { m_filterHasBeenSet = true; m_filter = value; }
  169. /**
  170. * <p>The test's filter.</p>
  171. */
  172. inline void SetFilter(Aws::String&& value) { m_filterHasBeenSet = true; m_filter = value; }
  173. /**
  174. * <p>The test's filter.</p>
  175. */
  176. inline void SetFilter(const char* value) { m_filterHasBeenSet = true; m_filter.assign(value); }
  177. /**
  178. * <p>The test's filter.</p>
  179. */
  180. inline ScheduleRunTest& WithFilter(const Aws::String& value) { SetFilter(value); return *this;}
  181. /**
  182. * <p>The test's filter.</p>
  183. */
  184. inline ScheduleRunTest& WithFilter(Aws::String&& value) { SetFilter(value); return *this;}
  185. /**
  186. * <p>The test's filter.</p>
  187. */
  188. inline ScheduleRunTest& WithFilter(const char* value) { SetFilter(value); return *this;}
  189. /**
  190. * <p>The test's parameters, such as test framework parameters and fixture
  191. * settings.</p>
  192. */
  193. inline const Aws::Map<Aws::String, Aws::String>& GetParameters() const{ return m_parameters; }
  194. /**
  195. * <p>The test's parameters, such as test framework parameters and fixture
  196. * settings.</p>
  197. */
  198. inline void SetParameters(const Aws::Map<Aws::String, Aws::String>& value) { m_parametersHasBeenSet = true; m_parameters = value; }
  199. /**
  200. * <p>The test's parameters, such as test framework parameters and fixture
  201. * settings.</p>
  202. */
  203. inline void SetParameters(Aws::Map<Aws::String, Aws::String>&& value) { m_parametersHasBeenSet = true; m_parameters = value; }
  204. /**
  205. * <p>The test's parameters, such as test framework parameters and fixture
  206. * settings.</p>
  207. */
  208. inline ScheduleRunTest& WithParameters(const Aws::Map<Aws::String, Aws::String>& value) { SetParameters(value); return *this;}
  209. /**
  210. * <p>The test's parameters, such as test framework parameters and fixture
  211. * settings.</p>
  212. */
  213. inline ScheduleRunTest& WithParameters(Aws::Map<Aws::String, Aws::String>&& value) { SetParameters(value); return *this;}
  214. /**
  215. * <p>The test's parameters, such as test framework parameters and fixture
  216. * settings.</p>
  217. */
  218. inline ScheduleRunTest& AddParameters(const Aws::String& key, const Aws::String& value) { m_parametersHasBeenSet = true; m_parameters[key] = value; return *this; }
  219. /**
  220. * <p>The test's parameters, such as test framework parameters and fixture
  221. * settings.</p>
  222. */
  223. inline ScheduleRunTest& AddParameters(Aws::String&& key, const Aws::String& value) { m_parametersHasBeenSet = true; m_parameters[key] = value; return *this; }
  224. /**
  225. * <p>The test's parameters, such as test framework parameters and fixture
  226. * settings.</p>
  227. */
  228. inline ScheduleRunTest& AddParameters(const Aws::String& key, Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters[key] = value; return *this; }
  229. /**
  230. * <p>The test's parameters, such as test framework parameters and fixture
  231. * settings.</p>
  232. */
  233. inline ScheduleRunTest& AddParameters(Aws::String&& key, Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters[key] = value; return *this; }
  234. /**
  235. * <p>The test's parameters, such as test framework parameters and fixture
  236. * settings.</p>
  237. */
  238. inline ScheduleRunTest& AddParameters(const char* key, Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters[key] = value; return *this; }
  239. /**
  240. * <p>The test's parameters, such as test framework parameters and fixture
  241. * settings.</p>
  242. */
  243. inline ScheduleRunTest& AddParameters(Aws::String&& key, const char* value) { m_parametersHasBeenSet = true; m_parameters[key] = value; return *this; }
  244. /**
  245. * <p>The test's parameters, such as test framework parameters and fixture
  246. * settings.</p>
  247. */
  248. inline ScheduleRunTest& AddParameters(const char* key, const char* value) { m_parametersHasBeenSet = true; m_parameters[key] = value; return *this; }
  249. private:
  250. TestType m_type;
  251. bool m_typeHasBeenSet;
  252. Aws::String m_testPackageArn;
  253. bool m_testPackageArnHasBeenSet;
  254. Aws::String m_filter;
  255. bool m_filterHasBeenSet;
  256. Aws::Map<Aws::String, Aws::String> m_parameters;
  257. bool m_parametersHasBeenSet;
  258. };
  259. } // namespace Model
  260. } // namespace DeviceFarm
  261. } // namespace Aws