athenian 2.1.81

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (682) hide show
  1. checksums.yaml +7 -0
  2. data/CODE_OF_CONDUCT.md +84 -0
  3. data/Gemfile +7 -0
  4. data/Gemfile.lock +60 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +76 -0
  7. data/Rakefile +10 -0
  8. data/athenian.gemspec +35 -0
  9. data/bin/console +15 -0
  10. data/bin/setup +8 -0
  11. data/docs/AcceptedInvitation.md +22 -0
  12. data/docs/Account.md +26 -0
  13. data/docs/AccountStatus.md +26 -0
  14. data/docs/AccountUserChangeRequest.md +22 -0
  15. data/docs/AlignApi.md +367 -0
  16. data/docs/CalculatedCodeCheckHistogram.md +28 -0
  17. data/docs/CalculatedCodeCheckMetrics.md +32 -0
  18. data/docs/CalculatedCodeCheckMetricsItem.md +26 -0
  19. data/docs/CalculatedDeploymentMetric.md +24 -0
  20. data/docs/CalculatedDeveloperMetrics.md +28 -0
  21. data/docs/CalculatedDeveloperMetricsItem.md +22 -0
  22. data/docs/CalculatedJIRAHistogram.md +28 -0
  23. data/docs/CalculatedJIRAMetricValues.md +26 -0
  24. data/docs/CalculatedLinearMetricValues.md +26 -0
  25. data/docs/CalculatedLinearMetricValuesConfidenceMinsInner.md +49 -0
  26. data/docs/CalculatedLinearMetricValuesValuesInner.md +51 -0
  27. data/docs/CalculatedPullRequestHistogram.md +28 -0
  28. data/docs/CalculatedPullRequestHistogramFrequenciesInner.md +49 -0
  29. data/docs/CalculatedPullRequestMetrics.md +32 -0
  30. data/docs/CalculatedPullRequestMetricsItem.md +22 -0
  31. data/docs/CalculatedReleaseMetric.md +30 -0
  32. data/docs/CodeBypassingPRsMeasurement.md +26 -0
  33. data/docs/CodeCheckHistogramDefinition.md +24 -0
  34. data/docs/CodeCheckHistogramsRequest.md +32 -0
  35. data/docs/CodeCheckMetricID.md +15 -0
  36. data/docs/CodeCheckMetricsRequest.md +34 -0
  37. data/docs/CodeCheckRunStatistics.md +40 -0
  38. data/docs/CodeCheckRunStatisticsMeanExecutionTime.md +15 -0
  39. data/docs/CodeCheckRunStatisticsMedianExecutionTime.md +15 -0
  40. data/docs/CodeCheckRunStatisticsStddevExecutionTime.md +15 -0
  41. data/docs/CodeFilter.md +34 -0
  42. data/docs/Commit.md +36 -0
  43. data/docs/CommitSignature.md +26 -0
  44. data/docs/CommitsList.md +20 -0
  45. data/docs/CommitsListInclude.md +20 -0
  46. data/docs/Contributor.md +26 -0
  47. data/docs/ContributorIdentity.md +20 -0
  48. data/docs/CreateTokenRequest.md +20 -0
  49. data/docs/CreatedIdentifier.md +18 -0
  50. data/docs/CreatedToken.md +20 -0
  51. data/docs/Datasource.md +15 -0
  52. data/docs/DeleteEventsCacheRequest.md +22 -0
  53. data/docs/DeployedComponent.md +20 -0
  54. data/docs/DeployedPullRequest.md +32 -0
  55. data/docs/DeployedPullRequestAllOf.md +18 -0
  56. data/docs/DeployedRelease.md +40 -0
  57. data/docs/DeploymentAnalysis.md +22 -0
  58. data/docs/DeploymentAnalysisCode.md +28 -0
  59. data/docs/DeploymentConclusion.md +15 -0
  60. data/docs/DeploymentMetricID.md +15 -0
  61. data/docs/DeploymentMetricsRequest.md +32 -0
  62. data/docs/DeploymentModifyLabelsRequest.md +20 -0
  63. data/docs/DeploymentNotification.md +32 -0
  64. data/docs/DeploymentWith.md +22 -0
  65. data/docs/DeveloperMetricID.md +15 -0
  66. data/docs/DeveloperMetricsRequest.md +30 -0
  67. data/docs/DeveloperSummary.md +26 -0
  68. data/docs/DeveloperUpdates.md +28 -0
  69. data/docs/DiffReleasesRequest.md +20 -0
  70. data/docs/DiffedReleases.md +20 -0
  71. data/docs/DiffedReleasesInclude.md +20 -0
  72. data/docs/EventsApi.md +370 -0
  73. data/docs/FilterApi.md +832 -0
  74. data/docs/FilterCodeChecksRequest.md +36 -0
  75. data/docs/FilterCommitsRequest.md +34 -0
  76. data/docs/FilterContributorsRequest.md +28 -0
  77. data/docs/FilterDeploymentsRequest.md +42 -0
  78. data/docs/FilterEnvironmentsRequest.md +26 -0
  79. data/docs/FilterJIRACommon.md +30 -0
  80. data/docs/FilterJIRAStuff.md +40 -0
  81. data/docs/FilterJIRAStuffWith.md +22 -0
  82. data/docs/FilterLabelsRequest.md +20 -0
  83. data/docs/FilterPullRequestsRequest.md +48 -0
  84. data/docs/FilterReleasesRequest.md +34 -0
  85. data/docs/FilterRepositoriesRequest.md +28 -0
  86. data/docs/FilteredCodeCheckRun.md +30 -0
  87. data/docs/FilteredCodeCheckRunPrsStats.md +40 -0
  88. data/docs/FilteredCodeCheckRunTotalStats.md +40 -0
  89. data/docs/FilteredCodeCheckRuns.md +20 -0
  90. data/docs/FilteredDeployment.md +38 -0
  91. data/docs/FilteredDeployments.md +20 -0
  92. data/docs/FilteredDeploymentsInclude.md +20 -0
  93. data/docs/FilteredEnvironment.md +24 -0
  94. data/docs/FilteredJIRAStuff.md +32 -0
  95. data/docs/FilteredLabel.md +24 -0
  96. data/docs/FilteredRelease.md +42 -0
  97. data/docs/ForSetCodeChecks.md +32 -0
  98. data/docs/ForSetCodeChecksJira.md +32 -0
  99. data/docs/ForSetDeployments.md +38 -0
  100. data/docs/ForSetDevelopers.md +30 -0
  101. data/docs/ForSetPullRequests.md +36 -0
  102. data/docs/GenericError.md +26 -0
  103. data/docs/GetApi.md +305 -0
  104. data/docs/GetDeploymentLabels200Response.md +18 -0
  105. data/docs/GetJIRAIssuesInclude.md +15 -0
  106. data/docs/GetJIRAIssuesRequest.md +22 -0
  107. data/docs/GetJIRAIssuesResponse.md +20 -0
  108. data/docs/GetJIRAIssuesResponseInclude.md +20 -0
  109. data/docs/GetPullRequestsRequest.md +22 -0
  110. data/docs/GetReleasesRequest.md +20 -0
  111. data/docs/GoalMetricParams.md +18 -0
  112. data/docs/GoalMetricParamsThreshold.md +49 -0
  113. data/docs/GoalTemplate.md +28 -0
  114. data/docs/GoalTemplateCreateRequest.md +26 -0
  115. data/docs/GoalTemplateMetric.md +51 -0
  116. data/docs/GoalTemplateUpdateRequest.md +24 -0
  117. data/docs/HistogramScale.md +15 -0
  118. data/docs/HistogramsApi.md +226 -0
  119. data/docs/IncludedDeployments.md +18 -0
  120. data/docs/IncludedJIRAIssues.md +18 -0
  121. data/docs/IncludedNativeUser.md +18 -0
  122. data/docs/IncludedNativeUsers.md +18 -0
  123. data/docs/InstallationProgress.md +26 -0
  124. data/docs/IntegrationsApi.md +157 -0
  125. data/docs/Interquartile.md +20 -0
  126. data/docs/InvalidRequestError.md +28 -0
  127. data/docs/InvalidRequestErrorAllOf.md +18 -0
  128. data/docs/InvitationCheckResult.md +22 -0
  129. data/docs/InvitationLink.md +18 -0
  130. data/docs/InvitedUser.md +20 -0
  131. data/docs/JIRAComment.md +22 -0
  132. data/docs/JIRAEpic.md +58 -0
  133. data/docs/JIRAEpicAllOf.md +22 -0
  134. data/docs/JIRAEpicChild.md +56 -0
  135. data/docs/JIRAEpicChildAllOf.md +20 -0
  136. data/docs/JIRAEpicIssueCommon.md +52 -0
  137. data/docs/JIRAFilter.md +32 -0
  138. data/docs/JIRAFilterReturn.md +15 -0
  139. data/docs/JIRAFilterWith.md +22 -0
  140. data/docs/JIRAHistogramDefinition.md +24 -0
  141. data/docs/JIRAHistogramsRequest.md +44 -0
  142. data/docs/JIRAInstallation.md +20 -0
  143. data/docs/JIRAIssue.md +56 -0
  144. data/docs/JIRAIssueAllOf.md +20 -0
  145. data/docs/JIRAIssueType.md +30 -0
  146. data/docs/JIRALabel.md +24 -0
  147. data/docs/JIRAMetricID.md +15 -0
  148. data/docs/JIRAMetricsRequest.md +50 -0
  149. data/docs/JIRAPriority.md +24 -0
  150. data/docs/JIRAProject.md +30 -0
  151. data/docs/JIRAProjectsRequest.md +20 -0
  152. data/docs/JIRAStatus.md +22 -0
  153. data/docs/JIRAStatusCategory.md +15 -0
  154. data/docs/JIRAUser.md +24 -0
  155. data/docs/LinkedJIRAIssue.md +26 -0
  156. data/docs/ListedToken.md +22 -0
  157. data/docs/LogicalDeploymentRules.md +20 -0
  158. data/docs/LogicalPRRules.md +20 -0
  159. data/docs/LogicalRepository.md +26 -0
  160. data/docs/LogicalRepositoryGetRequest.md +20 -0
  161. data/docs/LogicalRepositoryRequest.md +28 -0
  162. data/docs/MappedJIRAIdentity.md +24 -0
  163. data/docs/MappedJIRAIdentityChange.md +20 -0
  164. data/docs/MatchIdentitiesRequest.md +20 -0
  165. data/docs/MatchedIdentity.md +22 -0
  166. data/docs/MatchedIdentityTo.md +15 -0
  167. data/docs/MetricsApi.md +518 -0
  168. data/docs/NotifiedDeploymentsInner.md +20 -0
  169. data/docs/NotifyDeployments200Response.md +18 -0
  170. data/docs/Organization.md +22 -0
  171. data/docs/PaginatePullRequestsRequest.md +20 -0
  172. data/docs/PaginationApi.md +82 -0
  173. data/docs/PatchTokenRequest.md +18 -0
  174. data/docs/ProductFeature.md +20 -0
  175. data/docs/ProductFeatureParameters.md +51 -0
  176. data/docs/PullRequest.md +74 -0
  177. data/docs/PullRequestEvent.md +15 -0
  178. data/docs/PullRequestHistogramDefinition.md +24 -0
  179. data/docs/PullRequestHistogramsRequest.md +34 -0
  180. data/docs/PullRequestLabel.md +22 -0
  181. data/docs/PullRequestMetricID.md +15 -0
  182. data/docs/PullRequestMetricsRequest.md +36 -0
  183. data/docs/PullRequestNumbers.md +20 -0
  184. data/docs/PullRequestPaginationPlan.md +18 -0
  185. data/docs/PullRequestParticipant.md +20 -0
  186. data/docs/PullRequestSet.md +20 -0
  187. data/docs/PullRequestSetInclude.md +20 -0
  188. data/docs/PullRequestStage.md +15 -0
  189. data/docs/PullRequestWith.md +30 -0
  190. data/docs/RegistrationApi.md +420 -0
  191. data/docs/ReleaseDiff.md +22 -0
  192. data/docs/ReleaseMatchRequest.md +28 -0
  193. data/docs/ReleaseMatchSetting.md +26 -0
  194. data/docs/ReleaseMatchStrategy.md +15 -0
  195. data/docs/ReleaseMetricID.md +15 -0
  196. data/docs/ReleaseMetricsRequest.md +42 -0
  197. data/docs/ReleaseMetricsRequestForInner.md +49 -0
  198. data/docs/ReleaseNames.md +20 -0
  199. data/docs/ReleaseNotification.md +28 -0
  200. data/docs/ReleaseNotificationStatus.md +15 -0
  201. data/docs/ReleasePair.md +20 -0
  202. data/docs/ReleaseSet.md +20 -0
  203. data/docs/ReleaseSetInclude.md +22 -0
  204. data/docs/ReleaseWith.md +22 -0
  205. data/docs/ReleasedPullRequest.md +30 -0
  206. data/docs/ReleasedPullRequestAuthor.md +15 -0
  207. data/docs/ReposetApi.md +363 -0
  208. data/docs/RepositorySetCreateRequest.md +22 -0
  209. data/docs/RepositorySetListItem.md +26 -0
  210. data/docs/RepositorySetWithName.md +22 -0
  211. data/docs/SecurityApi.md +290 -0
  212. data/docs/SetMappedJIRAIdentitiesRequest.md +20 -0
  213. data/docs/SettingsApi.md +942 -0
  214. data/docs/Share.md +22 -0
  215. data/docs/StageTimings.md +26 -0
  216. data/docs/TableFetchingProgress.md +22 -0
  217. data/docs/Team.md +24 -0
  218. data/docs/TeamApi.md +440 -0
  219. data/docs/TeamCreateRequest.md +24 -0
  220. data/docs/TeamUpdateRequest.md +22 -0
  221. data/docs/User.md +34 -0
  222. data/docs/UserApi.md +431 -0
  223. data/docs/VersionApi.md +67 -0
  224. data/docs/Versions.md +20 -0
  225. data/docs/WithBothJiraAndJiragroups.md +20 -0
  226. data/docs/WorkType.md +22 -0
  227. data/docs/WorkTypeGetRequest.md +20 -0
  228. data/docs/WorkTypePutRequest.md +20 -0
  229. data/docs/WorkTypeRule.md +20 -0
  230. data/generator/generate_api.sh +37 -0
  231. data/generator/generator_config.yml +10 -0
  232. data/generator/openapi.yaml +11297 -0
  233. data/generator/openapi_generated.yaml +11139 -0
  234. data/generator/template/api_info.mustache +6 -0
  235. data/generator/template_data.json +3 -0
  236. data/lib/athenian/api/align_api.rb +335 -0
  237. data/lib/athenian/api/events_api.rb +334 -0
  238. data/lib/athenian/api/filter_api.rb +701 -0
  239. data/lib/athenian/api/get_api.rb +266 -0
  240. data/lib/athenian/api/histograms_api.rb +217 -0
  241. data/lib/athenian/api/integrations_api.rb +150 -0
  242. data/lib/athenian/api/metrics_api.rb +481 -0
  243. data/lib/athenian/api/pagination_api.rb +81 -0
  244. data/lib/athenian/api/registration_api.rb +395 -0
  245. data/lib/athenian/api/reposet_api.rb +332 -0
  246. data/lib/athenian/api/security_api.rb +271 -0
  247. data/lib/athenian/api/settings_api.rb +820 -0
  248. data/lib/athenian/api/team_api.rb +396 -0
  249. data/lib/athenian/api/user_api.rb +381 -0
  250. data/lib/athenian/api/version_api.rb +74 -0
  251. data/lib/athenian/api_client.rb +389 -0
  252. data/lib/athenian/api_error.rb +55 -0
  253. data/lib/athenian/configuration.rb +294 -0
  254. data/lib/athenian/models/accepted_invitation.rb +241 -0
  255. data/lib/athenian/models/account.rb +283 -0
  256. data/lib/athenian/models/account_status.rb +281 -0
  257. data/lib/athenian/models/account_user_change_request.rb +285 -0
  258. data/lib/athenian/models/calculated_code_check_histogram.rb +318 -0
  259. data/lib/athenian/models/calculated_code_check_metrics.rb +386 -0
  260. data/lib/athenian/models/calculated_code_check_metrics_item.rb +291 -0
  261. data/lib/athenian/models/calculated_deployment_metric.rb +268 -0
  262. data/lib/athenian/models/calculated_developer_metrics.rb +340 -0
  263. data/lib/athenian/models/calculated_developer_metrics_item.rb +252 -0
  264. data/lib/athenian/models/calculated_jira_histogram.rb +313 -0
  265. data/lib/athenian/models/calculated_jira_metric_values.rb +266 -0
  266. data/lib/athenian/models/calculated_linear_metric_values.rb +273 -0
  267. data/lib/athenian/models/calculated_linear_metric_values_confidence_mins_inner.rb +101 -0
  268. data/lib/athenian/models/calculated_linear_metric_values_values_inner.rb +102 -0
  269. data/lib/athenian/models/calculated_pull_request_histogram.rb +318 -0
  270. data/lib/athenian/models/calculated_pull_request_histogram_frequencies_inner.rb +101 -0
  271. data/lib/athenian/models/calculated_pull_request_metrics.rb +391 -0
  272. data/lib/athenian/models/calculated_pull_request_metrics_item.rb +247 -0
  273. data/lib/athenian/models/calculated_release_metric.rb +301 -0
  274. data/lib/athenian/models/code_bypassing_prs_measurement.rb +357 -0
  275. data/lib/athenian/models/code_check_histogram_definition.rb +303 -0
  276. data/lib/athenian/models/code_check_histograms_request.rb +365 -0
  277. data/lib/athenian/models/code_check_metric_id.rb +55 -0
  278. data/lib/athenian/models/code_check_metrics_request.rb +401 -0
  279. data/lib/athenian/models/code_check_run_statistics.rb +448 -0
  280. data/lib/athenian/models/code_check_run_statistics_mean_execution_time.rb +224 -0
  281. data/lib/athenian/models/code_check_run_statistics_median_execution_time.rb +224 -0
  282. data/lib/athenian/models/code_check_run_statistics_stddev_execution_time.rb +224 -0
  283. data/lib/athenian/models/code_filter.rb +351 -0
  284. data/lib/athenian/models/commit.rb +405 -0
  285. data/lib/athenian/models/commit_signature.rb +266 -0
  286. data/lib/athenian/models/commits_list.rb +236 -0
  287. data/lib/athenian/models/commits_list_include.rb +242 -0
  288. data/lib/athenian/models/contributor.rb +261 -0
  289. data/lib/athenian/models/contributor_identity.rb +230 -0
  290. data/lib/athenian/models/create_token_request.rb +235 -0
  291. data/lib/athenian/models/created_identifier.rb +220 -0
  292. data/lib/athenian/models/created_token.rb +236 -0
  293. data/lib/athenian/models/datasource.rb +37 -0
  294. data/lib/athenian/models/delete_events_cache_request.rb +277 -0
  295. data/lib/athenian/models/deployed_component.rb +255 -0
  296. data/lib/athenian/models/deployed_pull_request.rb +326 -0
  297. data/lib/athenian/models/deployed_pull_request_all_of.rb +220 -0
  298. data/lib/athenian/models/deployed_release.rb +488 -0
  299. data/lib/athenian/models/deployment_analysis.rb +244 -0
  300. data/lib/athenian/models/deployment_analysis_code.rb +303 -0
  301. data/lib/athenian/models/deployment_conclusion.rb +38 -0
  302. data/lib/athenian/models/deployment_metric_id.rb +52 -0
  303. data/lib/athenian/models/deployment_metrics_request.rb +391 -0
  304. data/lib/athenian/models/deployment_modify_labels_request.rb +227 -0
  305. data/lib/athenian/models/deployment_notification.rb +390 -0
  306. data/lib/athenian/models/deployment_with.rb +233 -0
  307. data/lib/athenian/models/developer_metric_id.rb +51 -0
  308. data/lib/athenian/models/developer_metrics_request.rb +355 -0
  309. data/lib/athenian/models/developer_summary.rb +271 -0
  310. data/lib/athenian/models/developer_updates.rb +356 -0
  311. data/lib/athenian/models/diff_releases_request.rb +237 -0
  312. data/lib/athenian/models/diffed_releases.rb +237 -0
  313. data/lib/athenian/models/diffed_releases_include.rb +242 -0
  314. data/lib/athenian/models/filter_code_checks_request.rb +356 -0
  315. data/lib/athenian/models/filter_commits_request.rb +385 -0
  316. data/lib/athenian/models/filter_contributors_request.rb +331 -0
  317. data/lib/athenian/models/filter_deployments_request.rb +383 -0
  318. data/lib/athenian/models/filter_environments_request.rb +294 -0
  319. data/lib/athenian/models/filter_jira_common.rb +318 -0
  320. data/lib/athenian/models/filter_jira_stuff.rb +373 -0
  321. data/lib/athenian/models/filter_jira_stuff_with.rb +248 -0
  322. data/lib/athenian/models/filter_labels_request.rb +233 -0
  323. data/lib/athenian/models/filter_pull_requests_request.rb +456 -0
  324. data/lib/athenian/models/filter_releases_request.rb +339 -0
  325. data/lib/athenian/models/filter_repositories_request.rb +307 -0
  326. data/lib/athenian/models/filtered_code_check_run.rb +306 -0
  327. data/lib/athenian/models/filtered_code_check_run_prs_stats.rb +454 -0
  328. data/lib/athenian/models/filtered_code_check_run_total_stats.rb +454 -0
  329. data/lib/athenian/models/filtered_code_check_runs.rb +240 -0
  330. data/lib/athenian/models/filtered_deployment.rb +436 -0
  331. data/lib/athenian/models/filtered_deployments.rb +237 -0
  332. data/lib/athenian/models/filtered_deployments_include.rb +243 -0
  333. data/lib/athenian/models/filtered_environment.rb +283 -0
  334. data/lib/athenian/models/filtered_jira_stuff.rb +334 -0
  335. data/lib/athenian/models/filtered_label.rb +298 -0
  336. data/lib/athenian/models/filtered_release.rb +483 -0
  337. data/lib/athenian/models/for_set_code_checks.rb +334 -0
  338. data/lib/athenian/models/for_set_code_checks_jira.rb +306 -0
  339. data/lib/athenian/models/for_set_deployments.rb +343 -0
  340. data/lib/athenian/models/for_set_developers.rb +288 -0
  341. data/lib/athenian/models/for_set_pull_requests.rb +371 -0
  342. data/lib/athenian/models/generic_error.rb +270 -0
  343. data/lib/athenian/models/get_deployment_labels200_response.rb +220 -0
  344. data/lib/athenian/models/get_jira_issues_include.rb +39 -0
  345. data/lib/athenian/models/get_jira_issues_request.rb +269 -0
  346. data/lib/athenian/models/get_jira_issues_response.rb +231 -0
  347. data/lib/athenian/models/get_jira_issues_response_include.rb +229 -0
  348. data/lib/athenian/models/get_pull_requests_request.rb +284 -0
  349. data/lib/athenian/models/get_releases_request.rb +238 -0
  350. data/lib/athenian/models/goal_metric_params.rb +215 -0
  351. data/lib/athenian/models/goal_metric_params_threshold.rb +101 -0
  352. data/lib/athenian/models/goal_template.rb +305 -0
  353. data/lib/athenian/models/goal_template_create_request.rb +290 -0
  354. data/lib/athenian/models/goal_template_metric.rb +102 -0
  355. data/lib/athenian/models/goal_template_update_request.rb +275 -0
  356. data/lib/athenian/models/histogram_scale.rb +37 -0
  357. data/lib/athenian/models/included_deployments.rb +218 -0
  358. data/lib/athenian/models/included_jira_issues.rb +218 -0
  359. data/lib/athenian/models/included_native_user.rb +220 -0
  360. data/lib/athenian/models/included_native_users.rb +223 -0
  361. data/lib/athenian/models/installation_progress.rb +283 -0
  362. data/lib/athenian/models/interquartile.rb +234 -0
  363. data/lib/athenian/models/invalid_request_error.rb +288 -0
  364. data/lib/athenian/models/invalid_request_error_all_of.rb +215 -0
  365. data/lib/athenian/models/invitation_check_result.rb +274 -0
  366. data/lib/athenian/models/invitation_link.rb +221 -0
  367. data/lib/athenian/models/invited_user.rb +235 -0
  368. data/lib/athenian/models/jira_comment.rb +250 -0
  369. data/lib/athenian/models/jira_epic.rb +487 -0
  370. data/lib/athenian/models/jira_epic_all_of.rb +247 -0
  371. data/lib/athenian/models/jira_epic_child.rb +475 -0
  372. data/lib/athenian/models/jira_epic_child_all_of.rb +235 -0
  373. data/lib/athenian/models/jira_epic_issue_common.rb +437 -0
  374. data/lib/athenian/models/jira_filter.rb +300 -0
  375. data/lib/athenian/models/jira_filter_return.rb +44 -0
  376. data/lib/athenian/models/jira_filter_with.rb +242 -0
  377. data/lib/athenian/models/jira_histogram_definition.rb +303 -0
  378. data/lib/athenian/models/jira_histograms_request.rb +436 -0
  379. data/lib/athenian/models/jira_installation.rb +238 -0
  380. data/lib/athenian/models/jira_issue.rb +471 -0
  381. data/lib/athenian/models/jira_issue_all_of.rb +232 -0
  382. data/lib/athenian/models/jira_issue_type.rb +330 -0
  383. data/lib/athenian/models/jira_label.rb +260 -0
  384. data/lib/athenian/models/jira_metric_id.rb +48 -0
  385. data/lib/athenian/models/jira_metrics_request.rb +495 -0
  386. data/lib/athenian/models/jira_priority.rb +306 -0
  387. data/lib/athenian/models/jira_project.rb +307 -0
  388. data/lib/athenian/models/jira_projects_request.rb +238 -0
  389. data/lib/athenian/models/jira_status.rb +272 -0
  390. data/lib/athenian/models/jira_status_category.rb +39 -0
  391. data/lib/athenian/models/jira_user.rb +294 -0
  392. data/lib/athenian/models/linked_jira_issue.rb +273 -0
  393. data/lib/athenian/models/listed_token.rb +251 -0
  394. data/lib/athenian/models/logical_deployment_rules.rb +228 -0
  395. data/lib/athenian/models/logical_pr_rules.rb +228 -0
  396. data/lib/athenian/models/logical_repository.rb +303 -0
  397. data/lib/athenian/models/logical_repository_get_request.rb +236 -0
  398. data/lib/athenian/models/logical_repository_request.rb +318 -0
  399. data/lib/athenian/models/mapped_jira_identity.rb +289 -0
  400. data/lib/athenian/models/mapped_jira_identity_change.rb +232 -0
  401. data/lib/athenian/models/match_identities_request.rb +237 -0
  402. data/lib/athenian/models/matched_identity.rb +277 -0
  403. data/lib/athenian/models/matched_identity_to.rb +224 -0
  404. data/lib/athenian/models/notified_deployments_inner.rb +235 -0
  405. data/lib/athenian/models/notify_deployments200_response.rb +222 -0
  406. data/lib/athenian/models/organization.rb +248 -0
  407. data/lib/athenian/models/paginate_pull_requests_request.rb +254 -0
  408. data/lib/athenian/models/patch_token_request.rb +216 -0
  409. data/lib/athenian/models/product_feature.rb +234 -0
  410. data/lib/athenian/models/product_feature_parameters.rb +102 -0
  411. data/lib/athenian/models/pull_request.rb +727 -0
  412. data/lib/athenian/models/pull_request_event.rb +45 -0
  413. data/lib/athenian/models/pull_request_histogram_definition.rb +303 -0
  414. data/lib/athenian/models/pull_request_histograms_request.rb +380 -0
  415. data/lib/athenian/models/pull_request_label.rb +265 -0
  416. data/lib/athenian/models/pull_request_metric_id.rb +105 -0
  417. data/lib/athenian/models/pull_request_metrics_request.rb +416 -0
  418. data/lib/athenian/models/pull_request_numbers.rb +237 -0
  419. data/lib/athenian/models/pull_request_pagination_plan.rb +218 -0
  420. data/lib/athenian/models/pull_request_participant.rb +259 -0
  421. data/lib/athenian/models/pull_request_set.rb +237 -0
  422. data/lib/athenian/models/pull_request_set_include.rb +242 -0
  423. data/lib/athenian/models/pull_request_stage.rb +43 -0
  424. data/lib/athenian/models/pull_request_with.rb +290 -0
  425. data/lib/athenian/models/release_diff.rb +251 -0
  426. data/lib/athenian/models/release_match_request.rb +304 -0
  427. data/lib/athenian/models/release_match_setting.rb +292 -0
  428. data/lib/athenian/models/release_match_strategy.rb +39 -0
  429. data/lib/athenian/models/release_metric_id.rb +60 -0
  430. data/lib/athenian/models/release_metrics_request.rb +448 -0
  431. data/lib/athenian/models/release_metrics_request_for_inner.rb +101 -0
  432. data/lib/athenian/models/release_names.rb +238 -0
  433. data/lib/athenian/models/release_notification.rb +322 -0
  434. data/lib/athenian/models/release_notification_status.rb +38 -0
  435. data/lib/athenian/models/release_pair.rb +236 -0
  436. data/lib/athenian/models/release_set.rb +227 -0
  437. data/lib/athenian/models/release_set_include.rb +255 -0
  438. data/lib/athenian/models/release_with.rb +233 -0
  439. data/lib/athenian/models/released_pull_request.rb +303 -0
  440. data/lib/athenian/models/released_pull_request_author.rb +224 -0
  441. data/lib/athenian/models/repository_set_create_request.rb +252 -0
  442. data/lib/athenian/models/repository_set_list_item.rb +271 -0
  443. data/lib/athenian/models/repository_set_with_name.rb +235 -0
  444. data/lib/athenian/models/set_mapped_jira_identities_request.rb +238 -0
  445. data/lib/athenian/models/share.rb +251 -0
  446. data/lib/athenian/models/stage_timings.rb +335 -0
  447. data/lib/athenian/models/table_fetching_progress.rb +289 -0
  448. data/lib/athenian/models/team.rb +264 -0
  449. data/lib/athenian/models/team_create_request.rb +264 -0
  450. data/lib/athenian/models/team_update_request.rb +249 -0
  451. data/lib/athenian/models/user.rb +313 -0
  452. data/lib/athenian/models/versions.rb +233 -0
  453. data/lib/athenian/models/with_both_jira_and_jiragroups.rb +226 -0
  454. data/lib/athenian/models/work_type.rb +292 -0
  455. data/lib/athenian/models/work_type_get_request.rb +255 -0
  456. data/lib/athenian/models/work_type_put_request.rb +235 -0
  457. data/lib/athenian/models/work_type_rule.rb +255 -0
  458. data/lib/athenian/version.rb +12 -0
  459. data/lib/athenian.rb +255 -0
  460. data/spec/api/align_api_spec.rb +89 -0
  461. data/spec/api/events_api_spec.rb +88 -0
  462. data/spec/api/filter_api_spec.rb +153 -0
  463. data/spec/api/get_api_spec.rb +76 -0
  464. data/spec/api/histograms_api_spec.rb +65 -0
  465. data/spec/api/integrations_api_spec.rb +55 -0
  466. data/spec/api/metrics_api_spec.rb +109 -0
  467. data/spec/api/pagination_api_spec.rb +43 -0
  468. data/spec/api/registration_api_spec.rb +98 -0
  469. data/spec/api/reposet_api_spec.rb +88 -0
  470. data/spec/api/security_api_spec.rb +77 -0
  471. data/spec/api/settings_api_spec.rb +175 -0
  472. data/spec/api/team_api_spec.rb +100 -0
  473. data/spec/api/user_api_spec.rb +97 -0
  474. data/spec/api/version_api_spec.rb +42 -0
  475. data/spec/api_client_spec.rb +225 -0
  476. data/spec/configuration_spec.rb +39 -0
  477. data/spec/models/accepted_invitation_spec.rb +43 -0
  478. data/spec/models/account_spec.rb +55 -0
  479. data/spec/models/account_status_spec.rb +55 -0
  480. data/spec/models/account_user_change_request_spec.rb +47 -0
  481. data/spec/models/calculated_code_check_histogram_spec.rb +61 -0
  482. data/spec/models/calculated_code_check_metrics_item_spec.rb +55 -0
  483. data/spec/models/calculated_code_check_metrics_spec.rb +73 -0
  484. data/spec/models/calculated_deployment_metric_spec.rb +49 -0
  485. data/spec/models/calculated_developer_metrics_item_spec.rb +43 -0
  486. data/spec/models/calculated_developer_metrics_spec.rb +61 -0
  487. data/spec/models/calculated_jira_histogram_spec.rb +61 -0
  488. data/spec/models/calculated_jira_metric_values_spec.rb +55 -0
  489. data/spec/models/calculated_linear_metric_values_confidence_mins_inner_spec.rb +28 -0
  490. data/spec/models/calculated_linear_metric_values_spec.rb +55 -0
  491. data/spec/models/calculated_linear_metric_values_values_inner_spec.rb +28 -0
  492. data/spec/models/calculated_pull_request_histogram_frequencies_inner_spec.rb +28 -0
  493. data/spec/models/calculated_pull_request_histogram_spec.rb +61 -0
  494. data/spec/models/calculated_pull_request_metrics_item_spec.rb +43 -0
  495. data/spec/models/calculated_pull_request_metrics_spec.rb +73 -0
  496. data/spec/models/calculated_release_metric_spec.rb +67 -0
  497. data/spec/models/code_bypassing_prs_measurement_spec.rb +55 -0
  498. data/spec/models/code_check_histogram_definition_spec.rb +49 -0
  499. data/spec/models/code_check_histograms_request_spec.rb +73 -0
  500. data/spec/models/code_check_metric_id_spec.rb +25 -0
  501. data/spec/models/code_check_metrics_request_spec.rb +79 -0
  502. data/spec/models/code_check_run_statistics_mean_execution_time_spec.rb +25 -0
  503. data/spec/models/code_check_run_statistics_median_execution_time_spec.rb +25 -0
  504. data/spec/models/code_check_run_statistics_spec.rb +97 -0
  505. data/spec/models/code_check_run_statistics_stddev_execution_time_spec.rb +25 -0
  506. data/spec/models/code_filter_spec.rb +79 -0
  507. data/spec/models/commit_signature_spec.rb +55 -0
  508. data/spec/models/commit_spec.rb +85 -0
  509. data/spec/models/commits_list_include_spec.rb +37 -0
  510. data/spec/models/commits_list_spec.rb +37 -0
  511. data/spec/models/contributor_identity_spec.rb +37 -0
  512. data/spec/models/contributor_spec.rb +55 -0
  513. data/spec/models/create_token_request_spec.rb +37 -0
  514. data/spec/models/created_identifier_spec.rb +31 -0
  515. data/spec/models/created_token_spec.rb +37 -0
  516. data/spec/models/datasource_spec.rb +25 -0
  517. data/spec/models/delete_events_cache_request_spec.rb +47 -0
  518. data/spec/models/deployed_component_spec.rb +37 -0
  519. data/spec/models/deployed_pull_request_all_of_spec.rb +31 -0
  520. data/spec/models/deployed_pull_request_spec.rb +73 -0
  521. data/spec/models/deployed_release_spec.rb +97 -0
  522. data/spec/models/deployment_analysis_code_spec.rb +61 -0
  523. data/spec/models/deployment_analysis_spec.rb +43 -0
  524. data/spec/models/deployment_conclusion_spec.rb +25 -0
  525. data/spec/models/deployment_metric_id_spec.rb +25 -0
  526. data/spec/models/deployment_metrics_request_spec.rb +73 -0
  527. data/spec/models/deployment_modify_labels_request_spec.rb +37 -0
  528. data/spec/models/deployment_notification_spec.rb +73 -0
  529. data/spec/models/deployment_with_spec.rb +43 -0
  530. data/spec/models/developer_metric_id_spec.rb +25 -0
  531. data/spec/models/developer_metrics_request_spec.rb +67 -0
  532. data/spec/models/developer_summary_spec.rb +55 -0
  533. data/spec/models/developer_updates_spec.rb +61 -0
  534. data/spec/models/diff_releases_request_spec.rb +37 -0
  535. data/spec/models/diffed_releases_include_spec.rb +37 -0
  536. data/spec/models/diffed_releases_spec.rb +37 -0
  537. data/spec/models/filter_code_checks_request_spec.rb +85 -0
  538. data/spec/models/filter_commits_request_spec.rb +83 -0
  539. data/spec/models/filter_contributors_request_spec.rb +65 -0
  540. data/spec/models/filter_deployments_request_spec.rb +103 -0
  541. data/spec/models/filter_environments_request_spec.rb +55 -0
  542. data/spec/models/filter_jira_common_spec.rb +67 -0
  543. data/spec/models/filter_jira_stuff_spec.rb +97 -0
  544. data/spec/models/filter_jira_stuff_with_spec.rb +43 -0
  545. data/spec/models/filter_labels_request_spec.rb +37 -0
  546. data/spec/models/filter_pull_requests_request_spec.rb +121 -0
  547. data/spec/models/filter_releases_request_spec.rb +79 -0
  548. data/spec/models/filter_repositories_request_spec.rb +61 -0
  549. data/spec/models/filtered_code_check_run_prs_stats_spec.rb +97 -0
  550. data/spec/models/filtered_code_check_run_spec.rb +67 -0
  551. data/spec/models/filtered_code_check_run_total_stats_spec.rb +97 -0
  552. data/spec/models/filtered_code_check_runs_spec.rb +37 -0
  553. data/spec/models/filtered_deployment_spec.rb +91 -0
  554. data/spec/models/filtered_deployments_include_spec.rb +37 -0
  555. data/spec/models/filtered_deployments_spec.rb +37 -0
  556. data/spec/models/filtered_environment_spec.rb +49 -0
  557. data/spec/models/filtered_jira_stuff_spec.rb +73 -0
  558. data/spec/models/filtered_label_spec.rb +49 -0
  559. data/spec/models/filtered_release_spec.rb +103 -0
  560. data/spec/models/for_set_code_checks_jira_spec.rb +73 -0
  561. data/spec/models/for_set_code_checks_spec.rb +73 -0
  562. data/spec/models/for_set_deployments_spec.rb +91 -0
  563. data/spec/models/for_set_developers_spec.rb +67 -0
  564. data/spec/models/for_set_pull_requests_spec.rb +85 -0
  565. data/spec/models/generic_error_spec.rb +55 -0
  566. data/spec/models/get_deployment_labels200_response_spec.rb +31 -0
  567. data/spec/models/get_jira_issues_include_spec.rb +25 -0
  568. data/spec/models/get_jira_issues_request_spec.rb +43 -0
  569. data/spec/models/get_jira_issues_response_include_spec.rb +37 -0
  570. data/spec/models/get_jira_issues_response_spec.rb +37 -0
  571. data/spec/models/get_pull_requests_request_spec.rb +43 -0
  572. data/spec/models/get_releases_request_spec.rb +37 -0
  573. data/spec/models/goal_metric_params_spec.rb +31 -0
  574. data/spec/models/goal_metric_params_threshold_spec.rb +28 -0
  575. data/spec/models/goal_template_create_request_spec.rb +55 -0
  576. data/spec/models/goal_template_metric_spec.rb +28 -0
  577. data/spec/models/goal_template_spec.rb +61 -0
  578. data/spec/models/goal_template_update_request_spec.rb +49 -0
  579. data/spec/models/histogram_scale_spec.rb +25 -0
  580. data/spec/models/included_deployments_spec.rb +31 -0
  581. data/spec/models/included_jira_issues_spec.rb +31 -0
  582. data/spec/models/included_native_user_spec.rb +31 -0
  583. data/spec/models/included_native_users_spec.rb +31 -0
  584. data/spec/models/installation_progress_spec.rb +55 -0
  585. data/spec/models/interquartile_spec.rb +37 -0
  586. data/spec/models/invalid_request_error_all_of_spec.rb +31 -0
  587. data/spec/models/invalid_request_error_spec.rb +61 -0
  588. data/spec/models/invitation_check_result_spec.rb +47 -0
  589. data/spec/models/invitation_link_spec.rb +31 -0
  590. data/spec/models/invited_user_spec.rb +37 -0
  591. data/spec/models/jira_comment_spec.rb +43 -0
  592. data/spec/models/jira_epic_all_of_spec.rb +43 -0
  593. data/spec/models/jira_epic_child_all_of_spec.rb +37 -0
  594. data/spec/models/jira_epic_child_spec.rb +145 -0
  595. data/spec/models/jira_epic_issue_common_spec.rb +133 -0
  596. data/spec/models/jira_epic_spec.rb +151 -0
  597. data/spec/models/jira_filter_return_spec.rb +25 -0
  598. data/spec/models/jira_filter_spec.rb +73 -0
  599. data/spec/models/jira_filter_with_spec.rb +43 -0
  600. data/spec/models/jira_histogram_definition_spec.rb +49 -0
  601. data/spec/models/jira_histograms_request_spec.rb +109 -0
  602. data/spec/models/jira_installation_spec.rb +37 -0
  603. data/spec/models/jira_issue_all_of_spec.rb +37 -0
  604. data/spec/models/jira_issue_spec.rb +145 -0
  605. data/spec/models/jira_issue_type_spec.rb +67 -0
  606. data/spec/models/jira_label_spec.rb +49 -0
  607. data/spec/models/jira_metric_id_spec.rb +25 -0
  608. data/spec/models/jira_metrics_request_spec.rb +127 -0
  609. data/spec/models/jira_priority_spec.rb +49 -0
  610. data/spec/models/jira_project_spec.rb +67 -0
  611. data/spec/models/jira_projects_request_spec.rb +37 -0
  612. data/spec/models/jira_status_category_spec.rb +25 -0
  613. data/spec/models/jira_status_spec.rb +43 -0
  614. data/spec/models/jira_user_spec.rb +53 -0
  615. data/spec/models/linked_jira_issue_spec.rb +55 -0
  616. data/spec/models/listed_token_spec.rb +43 -0
  617. data/spec/models/logical_deployment_rules_spec.rb +37 -0
  618. data/spec/models/logical_pr_rules_spec.rb +37 -0
  619. data/spec/models/logical_repository_get_request_spec.rb +37 -0
  620. data/spec/models/logical_repository_request_spec.rb +61 -0
  621. data/spec/models/logical_repository_spec.rb +55 -0
  622. data/spec/models/mapped_jira_identity_change_spec.rb +37 -0
  623. data/spec/models/mapped_jira_identity_spec.rb +49 -0
  624. data/spec/models/match_identities_request_spec.rb +37 -0
  625. data/spec/models/matched_identity_spec.rb +43 -0
  626. data/spec/models/matched_identity_to_spec.rb +25 -0
  627. data/spec/models/notified_deployments_inner_spec.rb +37 -0
  628. data/spec/models/notify_deployments200_response_spec.rb +31 -0
  629. data/spec/models/organization_spec.rb +43 -0
  630. data/spec/models/paginate_pull_requests_request_spec.rb +37 -0
  631. data/spec/models/patch_token_request_spec.rb +31 -0
  632. data/spec/models/product_feature_parameters_spec.rb +28 -0
  633. data/spec/models/product_feature_spec.rb +37 -0
  634. data/spec/models/pull_request_event_spec.rb +25 -0
  635. data/spec/models/pull_request_histogram_definition_spec.rb +49 -0
  636. data/spec/models/pull_request_histograms_request_spec.rb +79 -0
  637. data/spec/models/pull_request_label_spec.rb +43 -0
  638. data/spec/models/pull_request_metric_id_spec.rb +25 -0
  639. data/spec/models/pull_request_metrics_request_spec.rb +85 -0
  640. data/spec/models/pull_request_numbers_spec.rb +37 -0
  641. data/spec/models/pull_request_pagination_plan_spec.rb +31 -0
  642. data/spec/models/pull_request_participant_spec.rb +41 -0
  643. data/spec/models/pull_request_set_include_spec.rb +37 -0
  644. data/spec/models/pull_request_set_spec.rb +37 -0
  645. data/spec/models/pull_request_spec.rb +199 -0
  646. data/spec/models/pull_request_stage_spec.rb +25 -0
  647. data/spec/models/pull_request_with_spec.rb +67 -0
  648. data/spec/models/release_diff_spec.rb +43 -0
  649. data/spec/models/release_match_request_spec.rb +61 -0
  650. data/spec/models/release_match_setting_spec.rb +55 -0
  651. data/spec/models/release_match_strategy_spec.rb +25 -0
  652. data/spec/models/release_metric_id_spec.rb +25 -0
  653. data/spec/models/release_metrics_request_for_inner_spec.rb +28 -0
  654. data/spec/models/release_metrics_request_spec.rb +103 -0
  655. data/spec/models/release_names_spec.rb +37 -0
  656. data/spec/models/release_notification_spec.rb +61 -0
  657. data/spec/models/release_notification_status_spec.rb +25 -0
  658. data/spec/models/release_pair_spec.rb +37 -0
  659. data/spec/models/release_set_include_spec.rb +43 -0
  660. data/spec/models/release_set_spec.rb +37 -0
  661. data/spec/models/release_with_spec.rb +43 -0
  662. data/spec/models/released_pull_request_author_spec.rb +25 -0
  663. data/spec/models/released_pull_request_spec.rb +67 -0
  664. data/spec/models/repository_set_create_request_spec.rb +43 -0
  665. data/spec/models/repository_set_list_item_spec.rb +55 -0
  666. data/spec/models/repository_set_with_name_spec.rb +43 -0
  667. data/spec/models/set_mapped_jira_identities_request_spec.rb +37 -0
  668. data/spec/models/share_spec.rb +43 -0
  669. data/spec/models/stage_timings_spec.rb +55 -0
  670. data/spec/models/table_fetching_progress_spec.rb +43 -0
  671. data/spec/models/team_create_request_spec.rb +49 -0
  672. data/spec/models/team_spec.rb +49 -0
  673. data/spec/models/team_update_request_spec.rb +43 -0
  674. data/spec/models/user_spec.rb +79 -0
  675. data/spec/models/versions_spec.rb +37 -0
  676. data/spec/models/with_both_jira_and_jiragroups_spec.rb +37 -0
  677. data/spec/models/work_type_get_request_spec.rb +37 -0
  678. data/spec/models/work_type_put_request_spec.rb +37 -0
  679. data/spec/models/work_type_rule_spec.rb +37 -0
  680. data/spec/models/work_type_spec.rb +43 -0
  681. data/spec/spec_helper.rb +108 -0
  682. metadata +1000 -0
@@ -0,0 +1,285 @@
1
+ =begin
2
+ This is an automatically generated file. DO NOT EDIT.
3
+
4
+ Generated from version 2.1.81 of the OpenAPI specification at
5
+ https://github.com/athenianco/api-spec/releases/tag/2.1.81.
6
+ Generated by: https://openapi-generator.tech
7
+ OpenAPI Generator version: 6.4.0
8
+ =end
9
+
10
+ require 'date'
11
+ require 'time'
12
+
13
+ module Athenian
14
+ # Request to change an account member's status.
15
+ class AccountUserChangeRequest
16
+ # Account ID.
17
+ attr_accessor :account
18
+
19
+ # Account member ID.
20
+ attr_accessor :user
21
+
22
+ # Account membership role.
23
+ attr_accessor :status
24
+
25
+ class EnumAttributeValidator
26
+ attr_reader :datatype
27
+ attr_reader :allowable_values
28
+
29
+ def initialize(datatype, allowable_values)
30
+ @allowable_values = allowable_values.map do |value|
31
+ case datatype.to_s
32
+ when /Integer/i
33
+ value.to_i
34
+ when /Float/i
35
+ value.to_f
36
+ else
37
+ value
38
+ end
39
+ end
40
+ end
41
+
42
+ def valid?(value)
43
+ !value || allowable_values.include?(value)
44
+ end
45
+ end
46
+
47
+ # Attribute mapping from ruby-style variable name to JSON key.
48
+ def self.attribute_map
49
+ {
50
+ :'account' => :'account',
51
+ :'user' => :'user',
52
+ :'status' => :'status'
53
+ }
54
+ end
55
+
56
+ # Returns all the JSON keys this model knows about
57
+ def self.acceptable_attributes
58
+ attribute_map.values
59
+ end
60
+
61
+ # Attribute type mapping.
62
+ def self.openapi_types
63
+ {
64
+ :'account' => :'Integer',
65
+ :'user' => :'String',
66
+ :'status' => :'String'
67
+ }
68
+ end
69
+
70
+ # List of attributes with nullable: true
71
+ def self.openapi_nullable
72
+ Set.new([
73
+ ])
74
+ end
75
+
76
+ # Initializes the object
77
+ # @param [Hash] attributes Model attributes in the form of hash
78
+ def initialize(attributes = {})
79
+ if (!attributes.is_a?(Hash))
80
+ fail ArgumentError, 'The input argument (attributes) must be a hash in `Athenian::AccountUserChangeRequest` initialize method'
81
+ end
82
+
83
+ # check to see if the attribute exists and convert string to symbol for hash key
84
+ attributes = attributes.each_with_object({}) { |(k, v), h|
85
+ if (!self.class.attribute_map.key?(k.to_sym))
86
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Athenian::AccountUserChangeRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
87
+ end
88
+ h[k.to_sym] = v
89
+ }
90
+
91
+ if attributes.key?(:'account')
92
+ self.account = attributes[:'account']
93
+ end
94
+
95
+ if attributes.key?(:'user')
96
+ self.user = attributes[:'user']
97
+ end
98
+
99
+ if attributes.key?(:'status')
100
+ self.status = attributes[:'status']
101
+ end
102
+ end
103
+
104
+ # Show invalid properties with the reasons. Usually used together with valid?
105
+ # @return Array for valid properties with the reasons
106
+ def list_invalid_properties
107
+ invalid_properties = Array.new
108
+ if @account.nil?
109
+ invalid_properties.push('invalid value for "account", account cannot be nil.')
110
+ end
111
+
112
+ if @user.nil?
113
+ invalid_properties.push('invalid value for "user", user cannot be nil.')
114
+ end
115
+
116
+ if @status.nil?
117
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
118
+ end
119
+
120
+ invalid_properties
121
+ end
122
+
123
+ # Check to see if the all the properties in the model are valid
124
+ # @return true if the model is valid
125
+ def valid?
126
+ return false if @account.nil?
127
+ return false if @user.nil?
128
+ return false if @status.nil?
129
+ status_validator = EnumAttributeValidator.new('String', ['regular', 'admin', 'banished'])
130
+ return false unless status_validator.valid?(@status)
131
+ true
132
+ end
133
+
134
+ # Custom attribute writer method checking allowed values (enum).
135
+ # @param [Object] status Object to be assigned
136
+ def status=(status)
137
+ validator = EnumAttributeValidator.new('String', ['regular', 'admin', 'banished'])
138
+ unless validator.valid?(status)
139
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
140
+ end
141
+ @status = status
142
+ end
143
+
144
+ # Checks equality by comparing each attribute.
145
+ # @param [Object] Object to be compared
146
+ def ==(o)
147
+ return true if self.equal?(o)
148
+ self.class == o.class &&
149
+ account == o.account &&
150
+ user == o.user &&
151
+ status == o.status
152
+ end
153
+
154
+ # @see the `==` method
155
+ # @param [Object] Object to be compared
156
+ def eql?(o)
157
+ self == o
158
+ end
159
+
160
+ # Calculates hash code according to all attributes.
161
+ # @return [Integer] Hash code
162
+ def hash
163
+ [account, user, status].hash
164
+ end
165
+
166
+ # Builds the object from hash
167
+ # @param [Hash] attributes Model attributes in the form of hash
168
+ # @return [Object] Returns the model itself
169
+ def self.build_from_hash(attributes)
170
+ new.build_from_hash(attributes)
171
+ end
172
+
173
+ # Builds the object from hash
174
+ # @param [Hash] attributes Model attributes in the form of hash
175
+ # @return [Object] Returns the model itself
176
+ def build_from_hash(attributes)
177
+ return nil unless attributes.is_a?(Hash)
178
+ attributes = attributes.transform_keys(&:to_sym)
179
+ self.class.openapi_types.each_pair do |key, type|
180
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
181
+ self.send("#{key}=", nil)
182
+ elsif type =~ /\AArray<(.*)>/i
183
+ # check to ensure the input is an array given that the attribute
184
+ # is documented as an array but the input is not
185
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
186
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
187
+ end
188
+ elsif !attributes[self.class.attribute_map[key]].nil?
189
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
190
+ end
191
+ end
192
+
193
+ self
194
+ end
195
+
196
+ # Deserializes the data based on type
197
+ # @param string type Data type
198
+ # @param string value Value to be deserialized
199
+ # @return [Object] Deserialized data
200
+ def _deserialize(type, value)
201
+ case type.to_sym
202
+ when :Time
203
+ Time.parse(value)
204
+ when :Date
205
+ Date.parse(value)
206
+ when :String
207
+ value.to_s
208
+ when :Integer
209
+ value.to_i
210
+ when :Float
211
+ value.to_f
212
+ when :Boolean
213
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
214
+ true
215
+ else
216
+ false
217
+ end
218
+ when :Object
219
+ # generic object (usually a Hash), return directly
220
+ value
221
+ when /\AArray<(?<inner_type>.+)>\z/
222
+ inner_type = Regexp.last_match[:inner_type]
223
+ value.map { |v| _deserialize(inner_type, v) }
224
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
225
+ k_type = Regexp.last_match[:k_type]
226
+ v_type = Regexp.last_match[:v_type]
227
+ {}.tap do |hash|
228
+ value.each do |k, v|
229
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
230
+ end
231
+ end
232
+ else # model
233
+ # models (e.g. Pet) or oneOf
234
+ klass = Athenian.const_get(type)
235
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
236
+ end
237
+ end
238
+
239
+ # Returns the string representation of the object
240
+ # @return [String] String presentation of the object
241
+ def to_s
242
+ to_hash.to_s
243
+ end
244
+
245
+ # to_body is an alias to to_hash (backward compatibility)
246
+ # @return [Hash] Returns the object in the form of hash
247
+ def to_body
248
+ to_hash
249
+ end
250
+
251
+ # Returns the object in the form of hash
252
+ # @return [Hash] Returns the object in the form of hash
253
+ def to_hash
254
+ hash = {}
255
+ self.class.attribute_map.each_pair do |attr, param|
256
+ value = self.send(attr)
257
+ if value.nil?
258
+ is_nullable = self.class.openapi_nullable.include?(attr)
259
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
260
+ end
261
+
262
+ hash[param] = _to_hash(value)
263
+ end
264
+ hash
265
+ end
266
+
267
+ # Outputs non-array value in the form of hash
268
+ # For object, use to_hash. Otherwise, just return the value
269
+ # @param [Object] value Any valid value
270
+ # @return [Hash] Returns the value in the form of hash
271
+ def _to_hash(value)
272
+ if value.is_a?(Array)
273
+ value.compact.map { |v| _to_hash(v) }
274
+ elsif value.is_a?(Hash)
275
+ {}.tap do |hash|
276
+ value.each { |k, v| hash[k] = _to_hash(v) }
277
+ end
278
+ elsif value.respond_to? :to_hash
279
+ value.to_hash
280
+ else
281
+ value
282
+ end
283
+ end
284
+ end
285
+ end
@@ -0,0 +1,318 @@
1
+ =begin
2
+ This is an automatically generated file. DO NOT EDIT.
3
+
4
+ Generated from version 2.1.81 of the OpenAPI specification at
5
+ https://github.com/athenianco/api-spec/releases/tag/2.1.81.
6
+ Generated by: https://openapi-generator.tech
7
+ OpenAPI Generator version: 6.4.0
8
+ =end
9
+
10
+ require 'date'
11
+ require 'time'
12
+
13
+ module Athenian
14
+ # Calculated histogram over code checks (CI).
15
+ class CalculatedCodeCheckHistogram
16
+ attr_accessor :_for
17
+
18
+ attr_accessor :metric
19
+
20
+ attr_accessor :scale
21
+
22
+ # Series of horizontal bar borders aka X axis. Their count is `len(y) + 1` because there are `N` intervals between `(N + 1)` ticks.
23
+ attr_accessor :ticks
24
+
25
+ # Series of histogram bar heights aka Y axis.
26
+ attr_accessor :frequencies
27
+
28
+ attr_accessor :interquartile
29
+
30
+ class EnumAttributeValidator
31
+ attr_reader :datatype
32
+ attr_reader :allowable_values
33
+
34
+ def initialize(datatype, allowable_values)
35
+ @allowable_values = allowable_values.map do |value|
36
+ case datatype.to_s
37
+ when /Integer/i
38
+ value.to_i
39
+ when /Float/i
40
+ value.to_f
41
+ else
42
+ value
43
+ end
44
+ end
45
+ end
46
+
47
+ def valid?(value)
48
+ !value || allowable_values.include?(value)
49
+ end
50
+ end
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ :'_for' => :'for',
56
+ :'metric' => :'metric',
57
+ :'scale' => :'scale',
58
+ :'ticks' => :'ticks',
59
+ :'frequencies' => :'frequencies',
60
+ :'interquartile' => :'interquartile'
61
+ }
62
+ end
63
+
64
+ # Returns all the JSON keys this model knows about
65
+ def self.acceptable_attributes
66
+ attribute_map.values
67
+ end
68
+
69
+ # Attribute type mapping.
70
+ def self.openapi_types
71
+ {
72
+ :'_for' => :'ForSetCodeChecks',
73
+ :'metric' => :'CodeCheckMetricID',
74
+ :'scale' => :'HistogramScale',
75
+ :'ticks' => :'Array<GoalMetricParamsThreshold>',
76
+ :'frequencies' => :'Array<Integer>',
77
+ :'interquartile' => :'Interquartile'
78
+ }
79
+ end
80
+
81
+ # List of attributes with nullable: true
82
+ def self.openapi_nullable
83
+ Set.new([
84
+ ])
85
+ end
86
+
87
+ # Initializes the object
88
+ # @param [Hash] attributes Model attributes in the form of hash
89
+ def initialize(attributes = {})
90
+ if (!attributes.is_a?(Hash))
91
+ fail ArgumentError, 'The input argument (attributes) must be a hash in `Athenian::CalculatedCodeCheckHistogram` initialize method'
92
+ end
93
+
94
+ # check to see if the attribute exists and convert string to symbol for hash key
95
+ attributes = attributes.each_with_object({}) { |(k, v), h|
96
+ if (!self.class.attribute_map.key?(k.to_sym))
97
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Athenian::CalculatedCodeCheckHistogram`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
98
+ end
99
+ h[k.to_sym] = v
100
+ }
101
+
102
+ if attributes.key?(:'_for')
103
+ self._for = attributes[:'_for']
104
+ end
105
+
106
+ if attributes.key?(:'metric')
107
+ self.metric = attributes[:'metric']
108
+ end
109
+
110
+ if attributes.key?(:'scale')
111
+ self.scale = attributes[:'scale']
112
+ end
113
+
114
+ if attributes.key?(:'ticks')
115
+ if (value = attributes[:'ticks']).is_a?(Array)
116
+ self.ticks = value
117
+ end
118
+ end
119
+
120
+ if attributes.key?(:'frequencies')
121
+ if (value = attributes[:'frequencies']).is_a?(Array)
122
+ self.frequencies = value
123
+ end
124
+ end
125
+
126
+ if attributes.key?(:'interquartile')
127
+ self.interquartile = attributes[:'interquartile']
128
+ end
129
+ end
130
+
131
+ # Show invalid properties with the reasons. Usually used together with valid?
132
+ # @return Array for valid properties with the reasons
133
+ def list_invalid_properties
134
+ invalid_properties = Array.new
135
+ if @_for.nil?
136
+ invalid_properties.push('invalid value for "_for", _for cannot be nil.')
137
+ end
138
+
139
+ if @metric.nil?
140
+ invalid_properties.push('invalid value for "metric", metric cannot be nil.')
141
+ end
142
+
143
+ if @scale.nil?
144
+ invalid_properties.push('invalid value for "scale", scale cannot be nil.')
145
+ end
146
+
147
+ if @ticks.nil?
148
+ invalid_properties.push('invalid value for "ticks", ticks cannot be nil.')
149
+ end
150
+
151
+ if @frequencies.nil?
152
+ invalid_properties.push('invalid value for "frequencies", frequencies cannot be nil.')
153
+ end
154
+
155
+ if @interquartile.nil?
156
+ invalid_properties.push('invalid value for "interquartile", interquartile cannot be nil.')
157
+ end
158
+
159
+ invalid_properties
160
+ end
161
+
162
+ # Check to see if the all the properties in the model are valid
163
+ # @return true if the model is valid
164
+ def valid?
165
+ return false if @_for.nil?
166
+ return false if @metric.nil?
167
+ return false if @scale.nil?
168
+ return false if @ticks.nil?
169
+ return false if @frequencies.nil?
170
+ return false if @interquartile.nil?
171
+ true
172
+ end
173
+
174
+ # Checks equality by comparing each attribute.
175
+ # @param [Object] Object to be compared
176
+ def ==(o)
177
+ return true if self.equal?(o)
178
+ self.class == o.class &&
179
+ _for == o._for &&
180
+ metric == o.metric &&
181
+ scale == o.scale &&
182
+ ticks == o.ticks &&
183
+ frequencies == o.frequencies &&
184
+ interquartile == o.interquartile
185
+ end
186
+
187
+ # @see the `==` method
188
+ # @param [Object] Object to be compared
189
+ def eql?(o)
190
+ self == o
191
+ end
192
+
193
+ # Calculates hash code according to all attributes.
194
+ # @return [Integer] Hash code
195
+ def hash
196
+ [_for, metric, scale, ticks, frequencies, interquartile].hash
197
+ end
198
+
199
+ # Builds the object from hash
200
+ # @param [Hash] attributes Model attributes in the form of hash
201
+ # @return [Object] Returns the model itself
202
+ def self.build_from_hash(attributes)
203
+ new.build_from_hash(attributes)
204
+ end
205
+
206
+ # Builds the object from hash
207
+ # @param [Hash] attributes Model attributes in the form of hash
208
+ # @return [Object] Returns the model itself
209
+ def build_from_hash(attributes)
210
+ return nil unless attributes.is_a?(Hash)
211
+ attributes = attributes.transform_keys(&:to_sym)
212
+ self.class.openapi_types.each_pair do |key, type|
213
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
214
+ self.send("#{key}=", nil)
215
+ elsif type =~ /\AArray<(.*)>/i
216
+ # check to ensure the input is an array given that the attribute
217
+ # is documented as an array but the input is not
218
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
219
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
220
+ end
221
+ elsif !attributes[self.class.attribute_map[key]].nil?
222
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
223
+ end
224
+ end
225
+
226
+ self
227
+ end
228
+
229
+ # Deserializes the data based on type
230
+ # @param string type Data type
231
+ # @param string value Value to be deserialized
232
+ # @return [Object] Deserialized data
233
+ def _deserialize(type, value)
234
+ case type.to_sym
235
+ when :Time
236
+ Time.parse(value)
237
+ when :Date
238
+ Date.parse(value)
239
+ when :String
240
+ value.to_s
241
+ when :Integer
242
+ value.to_i
243
+ when :Float
244
+ value.to_f
245
+ when :Boolean
246
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
247
+ true
248
+ else
249
+ false
250
+ end
251
+ when :Object
252
+ # generic object (usually a Hash), return directly
253
+ value
254
+ when /\AArray<(?<inner_type>.+)>\z/
255
+ inner_type = Regexp.last_match[:inner_type]
256
+ value.map { |v| _deserialize(inner_type, v) }
257
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
258
+ k_type = Regexp.last_match[:k_type]
259
+ v_type = Regexp.last_match[:v_type]
260
+ {}.tap do |hash|
261
+ value.each do |k, v|
262
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
263
+ end
264
+ end
265
+ else # model
266
+ # models (e.g. Pet) or oneOf
267
+ klass = Athenian.const_get(type)
268
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
269
+ end
270
+ end
271
+
272
+ # Returns the string representation of the object
273
+ # @return [String] String presentation of the object
274
+ def to_s
275
+ to_hash.to_s
276
+ end
277
+
278
+ # to_body is an alias to to_hash (backward compatibility)
279
+ # @return [Hash] Returns the object in the form of hash
280
+ def to_body
281
+ to_hash
282
+ end
283
+
284
+ # Returns the object in the form of hash
285
+ # @return [Hash] Returns the object in the form of hash
286
+ def to_hash
287
+ hash = {}
288
+ self.class.attribute_map.each_pair do |attr, param|
289
+ value = self.send(attr)
290
+ if value.nil?
291
+ is_nullable = self.class.openapi_nullable.include?(attr)
292
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
293
+ end
294
+
295
+ hash[param] = _to_hash(value)
296
+ end
297
+ hash
298
+ end
299
+
300
+ # Outputs non-array value in the form of hash
301
+ # For object, use to_hash. Otherwise, just return the value
302
+ # @param [Object] value Any valid value
303
+ # @return [Hash] Returns the value in the form of hash
304
+ def _to_hash(value)
305
+ if value.is_a?(Array)
306
+ value.compact.map { |v| _to_hash(v) }
307
+ elsif value.is_a?(Hash)
308
+ {}.tap do |hash|
309
+ value.each { |k, v| hash[k] = _to_hash(v) }
310
+ end
311
+ elsif value.respond_to? :to_hash
312
+ value.to_hash
313
+ else
314
+ value
315
+ end
316
+ end
317
+ end
318
+ end