ftc_api_v3_client 0.1.0

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 (415) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +283 -0
  4. data/Rakefile +10 -0
  5. data/config.json +8 -0
  6. data/docs/ApiV3AdvancementFrom.md +22 -0
  7. data/docs/ApiV3AdvancementFromSlot.md +24 -0
  8. data/docs/ApiV3AdvancementStatus.md +15 -0
  9. data/docs/ApiV3AllianceColor.md +15 -0
  10. data/docs/ApiV3AllianceDescription.md +82 -0
  11. data/docs/ApiV3AllianceMatch.md +44 -0
  12. data/docs/ApiV3AllianceMatchDetails.md +46 -0
  13. data/docs/ApiV3AllianceMatchParticipants.md +79 -0
  14. data/docs/ApiV3AllianceMatchResults.md +22 -0
  15. data/docs/ApiV3AllianceMatchResultsDetails.md +20 -0
  16. data/docs/ApiV3AlliancePlayoffMatchParticipants.md +22 -0
  17. data/docs/ApiV3AllianceSelection.md +20 -0
  18. data/docs/ApiV3AllianceSelections.md +18 -0
  19. data/docs/ApiV3AllianceSimpleMatchParticipants.md +22 -0
  20. data/docs/ApiV3Award.md +30 -0
  21. data/docs/ApiV3AwardRecipient.md +24 -0
  22. data/docs/ApiV3AwardType.md +15 -0
  23. data/docs/ApiV3Awards.md +18 -0
  24. data/docs/ApiV3BasePlayoffSeriesDescription.md +79 -0
  25. data/docs/ApiV3BasicAllianceDescription.md +20 -0
  26. data/docs/ApiV3CenterStageRemoteScoreDetail.md +22 -0
  27. data/docs/ApiV3CenterStageScoreDetail.md +22 -0
  28. data/docs/ApiV3CompetingType.md +15 -0
  29. data/docs/ApiV3Coordinates.md +20 -0
  30. data/docs/ApiV3CsAchievementsDetail.md +56 -0
  31. data/docs/ApiV3CsEndLocation.md +15 -0
  32. data/docs/ApiV3CsPointsDetail.md +48 -0
  33. data/docs/ApiV3CsRemoteAchievementsDetail.md +44 -0
  34. data/docs/ApiV3CsRemotePointsDetail.md +46 -0
  35. data/docs/ApiV3DecodeAchievementsDetail.md +42 -0
  36. data/docs/ApiV3DecodeArtifactType.md +15 -0
  37. data/docs/ApiV3DecodePointsDetail.md +46 -0
  38. data/docs/ApiV3DecodeScoreDetail.md +22 -0
  39. data/docs/ApiV3DecodeTeleopBaseLocation.md +15 -0
  40. data/docs/ApiV3Division.md +20 -0
  41. data/docs/ApiV3DoubleEliminationSeriesDescription.md +36 -0
  42. data/docs/ApiV3DoubleElimsBracketHalf.md +15 -0
  43. data/docs/ApiV3Event.md +62 -0
  44. data/docs/ApiV3EventFormat.md +15 -0
  45. data/docs/ApiV3EventLiveStream.md +22 -0
  46. data/docs/ApiV3EventParticipant.md +22 -0
  47. data/docs/ApiV3EventParticipants.md +18 -0
  48. data/docs/ApiV3EventType.md +15 -0
  49. data/docs/ApiV3Events.md +18 -0
  50. data/docs/ApiV3FFAchievementsDetail.md +64 -0
  51. data/docs/ApiV3FFAutoLocation.md +15 -0
  52. data/docs/ApiV3FFEndLocation.md +15 -0
  53. data/docs/ApiV3FFPointsDetail.md +54 -0
  54. data/docs/ApiV3FFRemoteAchievementsDetail.md +52 -0
  55. data/docs/ApiV3FFRemotePointsDetail.md +48 -0
  56. data/docs/ApiV3FreightFrenzyRemoteScoreDetail.md +22 -0
  57. data/docs/ApiV3FreightFrenzyScoreDetail.md +22 -0
  58. data/docs/ApiV3IntoTheDeepScoreDetail.md +22 -0
  59. data/docs/ApiV3ItdAchievementsDetail.md +48 -0
  60. data/docs/ApiV3ItdAutoLocation.md +15 -0
  61. data/docs/ApiV3ItdPointsDetail.md +42 -0
  62. data/docs/ApiV3ItdTeleopLocation.md +15 -0
  63. data/docs/ApiV3JunctionElement.md +15 -0
  64. data/docs/ApiV3League.md +26 -0
  65. data/docs/ApiV3LeagueDetails.md +28 -0
  66. data/docs/ApiV3LeagueMembershipDetails.md +20 -0
  67. data/docs/ApiV3Leagues.md +18 -0
  68. data/docs/ApiV3Match.md +79 -0
  69. data/docs/ApiV3MatchAlliance.md +18 -0
  70. data/docs/ApiV3MatchDetails.md +79 -0
  71. data/docs/ApiV3MatchTeam.md +24 -0
  72. data/docs/ApiV3Matches.md +18 -0
  73. data/docs/ApiV3PitMap.md +30 -0
  74. data/docs/ApiV3PitMapCellType.md +15 -0
  75. data/docs/ApiV3PitMapElement.md +40 -0
  76. data/docs/ApiV3PitMapLabelOrientation.md +15 -0
  77. data/docs/ApiV3PlayoffAlliance.md +24 -0
  78. data/docs/ApiV3PlayoffAlliances.md +18 -0
  79. data/docs/ApiV3PlayoffMatchAlliance.md +20 -0
  80. data/docs/ApiV3PlayoffRanking.md +32 -0
  81. data/docs/ApiV3PlayoffRankings.md +18 -0
  82. data/docs/ApiV3PlayoffSeriesDescription.md +32 -0
  83. data/docs/ApiV3PlayoffStructure.md +22 -0
  84. data/docs/ApiV3PlayoffType.md +15 -0
  85. data/docs/ApiV3PowerPlayAchievementsDetail.md +52 -0
  86. data/docs/ApiV3PowerPlayAutoLocation.md +15 -0
  87. data/docs/ApiV3PowerPlayPointsDetail.md +46 -0
  88. data/docs/ApiV3PowerPlayRemoteAchievementsDetail.md +48 -0
  89. data/docs/ApiV3PowerPlayRemotePointsDetail.md +44 -0
  90. data/docs/ApiV3PowerPlayRemoteScoreDetail.md +22 -0
  91. data/docs/ApiV3PowerPlayScoreDetail.md +22 -0
  92. data/docs/ApiV3Ranking.md +32 -0
  93. data/docs/ApiV3Rankings.md +18 -0
  94. data/docs/ApiV3Region.md +20 -0
  95. data/docs/ApiV3Regions.md +18 -0
  96. data/docs/ApiV3RemoteJunctionElement.md +15 -0
  97. data/docs/ApiV3RemoteScoreDetail.md +85 -0
  98. data/docs/ApiV3RoundRobinAllianceDescription.md +20 -0
  99. data/docs/ApiV3ScoreDetail.md +94 -0
  100. data/docs/ApiV3Season.md +24 -0
  101. data/docs/ApiV3Seasons.md +20 -0
  102. data/docs/ApiV3SelectionOperation.md +15 -0
  103. data/docs/ApiV3SeriesAllianceDescription.md +22 -0
  104. data/docs/ApiV3SeriesAllianceState.md +15 -0
  105. data/docs/ApiV3SimpleEvent.md +48 -0
  106. data/docs/ApiV3SimpleTeam.md +22 -0
  107. data/docs/ApiV3SingleAwardRecipient.md +30 -0
  108. data/docs/ApiV3SingleTeamMatch.md +44 -0
  109. data/docs/ApiV3SingleTeamMatchDetails.md +46 -0
  110. data/docs/ApiV3SingleTeamMatchParticipants.md +18 -0
  111. data/docs/ApiV3SingleTeamMatchResults.md +18 -0
  112. data/docs/ApiV3SingleTeamMatchResultsDetails.md +18 -0
  113. data/docs/ApiV3SkystoneAchievementsDetail.md +54 -0
  114. data/docs/ApiV3SkystonePointsDetail.md +46 -0
  115. data/docs/ApiV3SkystoneScoreDetail.md +22 -0
  116. data/docs/ApiV3Stone.md +15 -0
  117. data/docs/ApiV3Team.md +38 -0
  118. data/docs/ApiV3TeamAvatar.md +20 -0
  119. data/docs/ApiV3TeamAvatars.md +18 -0
  120. data/docs/ApiV3TeamDetails.md +24 -0
  121. data/docs/ApiV3TeamEventParticipation.md +20 -0
  122. data/docs/ApiV3TeamEventParticipationDetails.md +26 -0
  123. data/docs/ApiV3TeamHistory.md +36 -0
  124. data/docs/ApiV3TeamSeasonHistory.md +20 -0
  125. data/docs/ApiV3Teams.md +18 -0
  126. data/docs/ApiV3TournamentLevel.md +15 -0
  127. data/docs/ApiV3UgAchievementsDetail.md +60 -0
  128. data/docs/ApiV3UgPointsDetail.md +44 -0
  129. data/docs/ApiV3UgRemoteAchievementsDetail.md +58 -0
  130. data/docs/ApiV3UgRemotePointsDetail.md +44 -0
  131. data/docs/ApiV3UgWobbleLocation.md +15 -0
  132. data/docs/ApiV3UltimateGoalRemoteScoreDetail.md +22 -0
  133. data/docs/ApiV3UltimateGoalScoreDetail.md +22 -0
  134. data/docs/EventsApi.md +977 -0
  135. data/docs/LeaguesApi.md +385 -0
  136. data/docs/RegionsApi.md +301 -0
  137. data/docs/SeasonsApi.md +148 -0
  138. data/docs/TeamsApi.md +371 -0
  139. data/ftc_api_v3_client.gemspec +39 -0
  140. data/git_push.sh +57 -0
  141. data/lib/ftc_api_v3_client/api/events_api.rb +934 -0
  142. data/lib/ftc_api_v3_client/api/leagues_api.rb +391 -0
  143. data/lib/ftc_api_v3_client/api/regions_api.rb +292 -0
  144. data/lib/ftc_api_v3_client/api/seasons_api.rb +142 -0
  145. data/lib/ftc_api_v3_client/api/teams_api.rb +349 -0
  146. data/lib/ftc_api_v3_client/api_client.rb +397 -0
  147. data/lib/ftc_api_v3_client/api_error.rb +58 -0
  148. data/lib/ftc_api_v3_client/api_model_base.rb +88 -0
  149. data/lib/ftc_api_v3_client/configuration.rb +308 -0
  150. data/lib/ftc_api_v3_client/models/api_v3_advancement_from.rb +202 -0
  151. data/lib/ftc_api_v3_client/models/api_v3_advancement_from_slot.rb +234 -0
  152. data/lib/ftc_api_v3_client/models/api_v3_advancement_status.rb +44 -0
  153. data/lib/ftc_api_v3_client/models/api_v3_alliance_color.rb +40 -0
  154. data/lib/ftc_api_v3_client/models/api_v3_alliance_description.rb +57 -0
  155. data/lib/ftc_api_v3_client/models/api_v3_alliance_match.rb +427 -0
  156. data/lib/ftc_api_v3_client/models/api_v3_alliance_match_details.rb +436 -0
  157. data/lib/ftc_api_v3_client/models/api_v3_alliance_match_participants.rb +55 -0
  158. data/lib/ftc_api_v3_client/models/api_v3_alliance_match_results.rb +221 -0
  159. data/lib/ftc_api_v3_client/models/api_v3_alliance_match_results_details.rb +190 -0
  160. data/lib/ftc_api_v3_client/models/api_v3_alliance_playoff_match_participants.rb +217 -0
  161. data/lib/ftc_api_v3_client/models/api_v3_alliance_selection.rb +212 -0
  162. data/lib/ftc_api_v3_client/models/api_v3_alliance_selections.rb +166 -0
  163. data/lib/ftc_api_v3_client/models/api_v3_alliance_simple_match_participants.rb +217 -0
  164. data/lib/ftc_api_v3_client/models/api_v3_award.rb +311 -0
  165. data/lib/ftc_api_v3_client/models/api_v3_award_recipient.rb +177 -0
  166. data/lib/ftc_api_v3_client/models/api_v3_award_type.rb +59 -0
  167. data/lib/ftc_api_v3_client/models/api_v3_awards.rb +166 -0
  168. data/lib/ftc_api_v3_client/models/api_v3_base_playoff_series_description.rb +55 -0
  169. data/lib/ftc_api_v3_client/models/api_v3_basic_alliance_description.rb +191 -0
  170. data/lib/ftc_api_v3_client/models/api_v3_center_stage_remote_score_detail.rb +217 -0
  171. data/lib/ftc_api_v3_client/models/api_v3_center_stage_score_detail.rb +217 -0
  172. data/lib/ftc_api_v3_client/models/api_v3_competing_type.rb +40 -0
  173. data/lib/ftc_api_v3_client/models/api_v3_coordinates.rb +191 -0
  174. data/lib/ftc_api_v3_client/models/api_v3_cs_achievements_detail.rb +680 -0
  175. data/lib/ftc_api_v3_client/models/api_v3_cs_end_location.rb +41 -0
  176. data/lib/ftc_api_v3_client/models/api_v3_cs_points_detail.rb +555 -0
  177. data/lib/ftc_api_v3_client/models/api_v3_cs_remote_achievements_detail.rb +524 -0
  178. data/lib/ftc_api_v3_client/models/api_v3_cs_remote_points_detail.rb +528 -0
  179. data/lib/ftc_api_v3_client/models/api_v3_decode_achievements_detail.rb +502 -0
  180. data/lib/ftc_api_v3_client/models/api_v3_decode_artifact_type.rb +41 -0
  181. data/lib/ftc_api_v3_client/models/api_v3_decode_points_detail.rb +529 -0
  182. data/lib/ftc_api_v3_client/models/api_v3_decode_score_detail.rb +217 -0
  183. data/lib/ftc_api_v3_client/models/api_v3_decode_teleop_base_location.rb +41 -0
  184. data/lib/ftc_api_v3_client/models/api_v3_division.rb +190 -0
  185. data/lib/ftc_api_v3_client/models/api_v3_double_elimination_series_description.rb +405 -0
  186. data/lib/ftc_api_v3_client/models/api_v3_double_elims_bracket_half.rb +40 -0
  187. data/lib/ftc_api_v3_client/models/api_v3_event.rb +559 -0
  188. data/lib/ftc_api_v3_client/models/api_v3_event_format.rb +41 -0
  189. data/lib/ftc_api_v3_client/models/api_v3_event_live_stream.rb +182 -0
  190. data/lib/ftc_api_v3_client/models/api_v3_event_participant.rb +221 -0
  191. data/lib/ftc_api_v3_client/models/api_v3_event_participants.rb +166 -0
  192. data/lib/ftc_api_v3_client/models/api_v3_event_type.rb +50 -0
  193. data/lib/ftc_api_v3_client/models/api_v3_events.rb +166 -0
  194. data/lib/ftc_api_v3_client/models/api_v3_ff_achievements_detail.rb +787 -0
  195. data/lib/ftc_api_v3_client/models/api_v3_ff_auto_location.rb +43 -0
  196. data/lib/ftc_api_v3_client/models/api_v3_ff_end_location.rb +41 -0
  197. data/lib/ftc_api_v3_client/models/api_v3_ff_points_detail.rb +633 -0
  198. data/lib/ftc_api_v3_client/models/api_v3_ff_remote_achievements_detail.rb +629 -0
  199. data/lib/ftc_api_v3_client/models/api_v3_ff_remote_points_detail.rb +554 -0
  200. data/lib/ftc_api_v3_client/models/api_v3_freight_frenzy_remote_score_detail.rb +217 -0
  201. data/lib/ftc_api_v3_client/models/api_v3_freight_frenzy_score_detail.rb +217 -0
  202. data/lib/ftc_api_v3_client/models/api_v3_into_the_deep_score_detail.rb +217 -0
  203. data/lib/ftc_api_v3_client/models/api_v3_itd_achievements_detail.rb +576 -0
  204. data/lib/ftc_api_v3_client/models/api_v3_itd_auto_location.rb +41 -0
  205. data/lib/ftc_api_v3_client/models/api_v3_itd_points_detail.rb +477 -0
  206. data/lib/ftc_api_v3_client/models/api_v3_itd_teleop_location.rb +43 -0
  207. data/lib/ftc_api_v3_client/models/api_v3_junction_element.rb +44 -0
  208. data/lib/ftc_api_v3_client/models/api_v3_league.rb +217 -0
  209. data/lib/ftc_api_v3_client/models/api_v3_league_details.rb +245 -0
  210. data/lib/ftc_api_v3_client/models/api_v3_league_membership_details.rb +190 -0
  211. data/lib/ftc_api_v3_client/models/api_v3_leagues.rb +166 -0
  212. data/lib/ftc_api_v3_client/models/api_v3_match.rb +55 -0
  213. data/lib/ftc_api_v3_client/models/api_v3_match_alliance.rb +166 -0
  214. data/lib/ftc_api_v3_client/models/api_v3_match_details.rb +55 -0
  215. data/lib/ftc_api_v3_client/models/api_v3_match_team.rb +209 -0
  216. data/lib/ftc_api_v3_client/models/api_v3_matches.rb +166 -0
  217. data/lib/ftc_api_v3_client/models/api_v3_pit_map.rb +322 -0
  218. data/lib/ftc_api_v3_client/models/api_v3_pit_map_cell_type.rb +45 -0
  219. data/lib/ftc_api_v3_client/models/api_v3_pit_map_element.rb +336 -0
  220. data/lib/ftc_api_v3_client/models/api_v3_pit_map_label_orientation.rb +40 -0
  221. data/lib/ftc_api_v3_client/models/api_v3_playoff_alliance.rb +212 -0
  222. data/lib/ftc_api_v3_client/models/api_v3_playoff_alliances.rb +166 -0
  223. data/lib/ftc_api_v3_client/models/api_v3_playoff_match_alliance.rb +192 -0
  224. data/lib/ftc_api_v3_client/models/api_v3_playoff_ranking.rb +348 -0
  225. data/lib/ftc_api_v3_client/models/api_v3_playoff_rankings.rb +166 -0
  226. data/lib/ftc_api_v3_client/models/api_v3_playoff_series_description.rb +347 -0
  227. data/lib/ftc_api_v3_client/models/api_v3_playoff_structure.rb +241 -0
  228. data/lib/ftc_api_v3_client/models/api_v3_playoff_type.rb +42 -0
  229. data/lib/ftc_api_v3_client/models/api_v3_power_play_achievements_detail.rb +576 -0
  230. data/lib/ftc_api_v3_client/models/api_v3_power_play_auto_location.rb +41 -0
  231. data/lib/ftc_api_v3_client/models/api_v3_power_play_points_detail.rb +529 -0
  232. data/lib/ftc_api_v3_client/models/api_v3_power_play_remote_achievements_detail.rb +538 -0
  233. data/lib/ftc_api_v3_client/models/api_v3_power_play_remote_points_detail.rb +502 -0
  234. data/lib/ftc_api_v3_client/models/api_v3_power_play_remote_score_detail.rb +217 -0
  235. data/lib/ftc_api_v3_client/models/api_v3_power_play_score_detail.rb +217 -0
  236. data/lib/ftc_api_v3_client/models/api_v3_ranking.rb +348 -0
  237. data/lib/ftc_api_v3_client/models/api_v3_rankings.rb +166 -0
  238. data/lib/ftc_api_v3_client/models/api_v3_region.rb +190 -0
  239. data/lib/ftc_api_v3_client/models/api_v3_regions.rb +166 -0
  240. data/lib/ftc_api_v3_client/models/api_v3_remote_junction_element.rb +40 -0
  241. data/lib/ftc_api_v3_client/models/api_v3_remote_score_detail.rb +59 -0
  242. data/lib/ftc_api_v3_client/models/api_v3_round_robin_alliance_description.rb +191 -0
  243. data/lib/ftc_api_v3_client/models/api_v3_score_detail.rb +65 -0
  244. data/lib/ftc_api_v3_client/models/api_v3_season.rb +242 -0
  245. data/lib/ftc_api_v3_client/models/api_v3_seasons.rb +192 -0
  246. data/lib/ftc_api_v3_client/models/api_v3_selection_operation.rb +43 -0
  247. data/lib/ftc_api_v3_client/models/api_v3_series_alliance_description.rb +239 -0
  248. data/lib/ftc_api_v3_client/models/api_v3_series_alliance_state.rb +40 -0
  249. data/lib/ftc_api_v3_client/models/api_v3_simple_event.rb +458 -0
  250. data/lib/ftc_api_v3_client/models/api_v3_simple_team.rb +217 -0
  251. data/lib/ftc_api_v3_client/models/api_v3_single_award_recipient.rb +293 -0
  252. data/lib/ftc_api_v3_client/models/api_v3_single_team_match.rb +427 -0
  253. data/lib/ftc_api_v3_client/models/api_v3_single_team_match_details.rb +436 -0
  254. data/lib/ftc_api_v3_client/models/api_v3_single_team_match_participants.rb +164 -0
  255. data/lib/ftc_api_v3_client/models/api_v3_single_team_match_results.rb +164 -0
  256. data/lib/ftc_api_v3_client/models/api_v3_single_team_match_results_details.rb +164 -0
  257. data/lib/ftc_api_v3_client/models/api_v3_skystone_achievements_detail.rb +634 -0
  258. data/lib/ftc_api_v3_client/models/api_v3_skystone_points_detail.rb +529 -0
  259. data/lib/ftc_api_v3_client/models/api_v3_skystone_score_detail.rb +217 -0
  260. data/lib/ftc_api_v3_client/models/api_v3_stone.rb +41 -0
  261. data/lib/ftc_api_v3_client/models/api_v3_team.rb +324 -0
  262. data/lib/ftc_api_v3_client/models/api_v3_team_avatar.rb +190 -0
  263. data/lib/ftc_api_v3_client/models/api_v3_team_avatars.rb +166 -0
  264. data/lib/ftc_api_v3_client/models/api_v3_team_details.rb +247 -0
  265. data/lib/ftc_api_v3_client/models/api_v3_team_event_participation.rb +192 -0
  266. data/lib/ftc_api_v3_client/models/api_v3_team_event_participation_details.rb +238 -0
  267. data/lib/ftc_api_v3_client/models/api_v3_team_history.rb +334 -0
  268. data/lib/ftc_api_v3_client/models/api_v3_team_season_history.rb +192 -0
  269. data/lib/ftc_api_v3_client/models/api_v3_teams.rb +166 -0
  270. data/lib/ftc_api_v3_client/models/api_v3_tournament_level.rb +43 -0
  271. data/lib/ftc_api_v3_client/models/api_v3_ug_achievements_detail.rb +732 -0
  272. data/lib/ftc_api_v3_client/models/api_v3_ug_points_detail.rb +503 -0
  273. data/lib/ftc_api_v3_client/models/api_v3_ug_remote_achievements_detail.rb +706 -0
  274. data/lib/ftc_api_v3_client/models/api_v3_ug_remote_points_detail.rb +503 -0
  275. data/lib/ftc_api_v3_client/models/api_v3_ug_wobble_location.rb +41 -0
  276. data/lib/ftc_api_v3_client/models/api_v3_ultimate_goal_remote_score_detail.rb +217 -0
  277. data/lib/ftc_api_v3_client/models/api_v3_ultimate_goal_score_detail.rb +217 -0
  278. data/lib/ftc_api_v3_client/version.rb +15 -0
  279. data/lib/ftc_api_v3_client.rb +173 -0
  280. data/spec/api/events_api_spec.rb +207 -0
  281. data/spec/api/leagues_api_spec.rb +104 -0
  282. data/spec/api/regions_api_spec.rb +86 -0
  283. data/spec/api/seasons_api_spec.rb +58 -0
  284. data/spec/api/teams_api_spec.rb +97 -0
  285. data/spec/models/api_v3_advancement_from_slot_spec.rb +54 -0
  286. data/spec/models/api_v3_advancement_from_spec.rb +48 -0
  287. data/spec/models/api_v3_advancement_status_spec.rb +30 -0
  288. data/spec/models/api_v3_alliance_color_spec.rb +30 -0
  289. data/spec/models/api_v3_alliance_description_spec.rb +44 -0
  290. data/spec/models/api_v3_alliance_match_details_spec.rb +120 -0
  291. data/spec/models/api_v3_alliance_match_participants_spec.rb +44 -0
  292. data/spec/models/api_v3_alliance_match_results_details_spec.rb +42 -0
  293. data/spec/models/api_v3_alliance_match_results_spec.rb +48 -0
  294. data/spec/models/api_v3_alliance_match_spec.rb +114 -0
  295. data/spec/models/api_v3_alliance_playoff_match_participants_spec.rb +48 -0
  296. data/spec/models/api_v3_alliance_selection_spec.rb +42 -0
  297. data/spec/models/api_v3_alliance_selections_spec.rb +36 -0
  298. data/spec/models/api_v3_alliance_simple_match_participants_spec.rb +48 -0
  299. data/spec/models/api_v3_award_recipient_spec.rb +54 -0
  300. data/spec/models/api_v3_award_spec.rb +72 -0
  301. data/spec/models/api_v3_award_type_spec.rb +30 -0
  302. data/spec/models/api_v3_awards_spec.rb +36 -0
  303. data/spec/models/api_v3_base_playoff_series_description_spec.rb +44 -0
  304. data/spec/models/api_v3_basic_alliance_description_spec.rb +42 -0
  305. data/spec/models/api_v3_center_stage_remote_score_detail_spec.rb +48 -0
  306. data/spec/models/api_v3_center_stage_score_detail_spec.rb +48 -0
  307. data/spec/models/api_v3_competing_type_spec.rb +30 -0
  308. data/spec/models/api_v3_coordinates_spec.rb +42 -0
  309. data/spec/models/api_v3_cs_achievements_detail_spec.rb +150 -0
  310. data/spec/models/api_v3_cs_end_location_spec.rb +30 -0
  311. data/spec/models/api_v3_cs_points_detail_spec.rb +126 -0
  312. data/spec/models/api_v3_cs_remote_achievements_detail_spec.rb +114 -0
  313. data/spec/models/api_v3_cs_remote_points_detail_spec.rb +120 -0
  314. data/spec/models/api_v3_decode_achievements_detail_spec.rb +108 -0
  315. data/spec/models/api_v3_decode_artifact_type_spec.rb +30 -0
  316. data/spec/models/api_v3_decode_points_detail_spec.rb +120 -0
  317. data/spec/models/api_v3_decode_score_detail_spec.rb +48 -0
  318. data/spec/models/api_v3_decode_teleop_base_location_spec.rb +30 -0
  319. data/spec/models/api_v3_division_spec.rb +42 -0
  320. data/spec/models/api_v3_double_elimination_series_description_spec.rb +90 -0
  321. data/spec/models/api_v3_double_elims_bracket_half_spec.rb +30 -0
  322. data/spec/models/api_v3_event_format_spec.rb +30 -0
  323. data/spec/models/api_v3_event_live_stream_spec.rb +48 -0
  324. data/spec/models/api_v3_event_participant_spec.rb +48 -0
  325. data/spec/models/api_v3_event_participants_spec.rb +36 -0
  326. data/spec/models/api_v3_event_spec.rb +168 -0
  327. data/spec/models/api_v3_event_type_spec.rb +30 -0
  328. data/spec/models/api_v3_events_spec.rb +36 -0
  329. data/spec/models/api_v3_ff_achievements_detail_spec.rb +174 -0
  330. data/spec/models/api_v3_ff_auto_location_spec.rb +30 -0
  331. data/spec/models/api_v3_ff_end_location_spec.rb +30 -0
  332. data/spec/models/api_v3_ff_points_detail_spec.rb +144 -0
  333. data/spec/models/api_v3_ff_remote_achievements_detail_spec.rb +138 -0
  334. data/spec/models/api_v3_ff_remote_points_detail_spec.rb +126 -0
  335. data/spec/models/api_v3_freight_frenzy_remote_score_detail_spec.rb +48 -0
  336. data/spec/models/api_v3_freight_frenzy_score_detail_spec.rb +48 -0
  337. data/spec/models/api_v3_into_the_deep_score_detail_spec.rb +48 -0
  338. data/spec/models/api_v3_itd_achievements_detail_spec.rb +126 -0
  339. data/spec/models/api_v3_itd_auto_location_spec.rb +30 -0
  340. data/spec/models/api_v3_itd_points_detail_spec.rb +108 -0
  341. data/spec/models/api_v3_itd_teleop_location_spec.rb +30 -0
  342. data/spec/models/api_v3_junction_element_spec.rb +30 -0
  343. data/spec/models/api_v3_league_details_spec.rb +66 -0
  344. data/spec/models/api_v3_league_membership_details_spec.rb +42 -0
  345. data/spec/models/api_v3_league_spec.rb +60 -0
  346. data/spec/models/api_v3_leagues_spec.rb +36 -0
  347. data/spec/models/api_v3_match_alliance_spec.rb +36 -0
  348. data/spec/models/api_v3_match_details_spec.rb +44 -0
  349. data/spec/models/api_v3_match_spec.rb +44 -0
  350. data/spec/models/api_v3_match_team_spec.rb +54 -0
  351. data/spec/models/api_v3_matches_spec.rb +36 -0
  352. data/spec/models/api_v3_pit_map_cell_type_spec.rb +30 -0
  353. data/spec/models/api_v3_pit_map_element_spec.rb +102 -0
  354. data/spec/models/api_v3_pit_map_label_orientation_spec.rb +30 -0
  355. data/spec/models/api_v3_pit_map_spec.rb +72 -0
  356. data/spec/models/api_v3_playoff_alliance_spec.rb +54 -0
  357. data/spec/models/api_v3_playoff_alliances_spec.rb +36 -0
  358. data/spec/models/api_v3_playoff_match_alliance_spec.rb +42 -0
  359. data/spec/models/api_v3_playoff_ranking_spec.rb +78 -0
  360. data/spec/models/api_v3_playoff_rankings_spec.rb +36 -0
  361. data/spec/models/api_v3_playoff_series_description_spec.rb +78 -0
  362. data/spec/models/api_v3_playoff_structure_spec.rb +48 -0
  363. data/spec/models/api_v3_playoff_type_spec.rb +30 -0
  364. data/spec/models/api_v3_power_play_achievements_detail_spec.rb +138 -0
  365. data/spec/models/api_v3_power_play_auto_location_spec.rb +30 -0
  366. data/spec/models/api_v3_power_play_points_detail_spec.rb +120 -0
  367. data/spec/models/api_v3_power_play_remote_achievements_detail_spec.rb +126 -0
  368. data/spec/models/api_v3_power_play_remote_points_detail_spec.rb +114 -0
  369. data/spec/models/api_v3_power_play_remote_score_detail_spec.rb +48 -0
  370. data/spec/models/api_v3_power_play_score_detail_spec.rb +48 -0
  371. data/spec/models/api_v3_ranking_spec.rb +78 -0
  372. data/spec/models/api_v3_rankings_spec.rb +36 -0
  373. data/spec/models/api_v3_region_spec.rb +42 -0
  374. data/spec/models/api_v3_regions_spec.rb +36 -0
  375. data/spec/models/api_v3_remote_junction_element_spec.rb +30 -0
  376. data/spec/models/api_v3_remote_score_detail_spec.rb +44 -0
  377. data/spec/models/api_v3_round_robin_alliance_description_spec.rb +42 -0
  378. data/spec/models/api_v3_score_detail_spec.rb +44 -0
  379. data/spec/models/api_v3_season_spec.rb +54 -0
  380. data/spec/models/api_v3_seasons_spec.rb +42 -0
  381. data/spec/models/api_v3_selection_operation_spec.rb +30 -0
  382. data/spec/models/api_v3_series_alliance_description_spec.rb +48 -0
  383. data/spec/models/api_v3_series_alliance_state_spec.rb +30 -0
  384. data/spec/models/api_v3_simple_event_spec.rb +126 -0
  385. data/spec/models/api_v3_simple_team_spec.rb +48 -0
  386. data/spec/models/api_v3_single_award_recipient_spec.rb +72 -0
  387. data/spec/models/api_v3_single_team_match_details_spec.rb +120 -0
  388. data/spec/models/api_v3_single_team_match_participants_spec.rb +36 -0
  389. data/spec/models/api_v3_single_team_match_results_details_spec.rb +36 -0
  390. data/spec/models/api_v3_single_team_match_results_spec.rb +36 -0
  391. data/spec/models/api_v3_single_team_match_spec.rb +114 -0
  392. data/spec/models/api_v3_skystone_achievements_detail_spec.rb +144 -0
  393. data/spec/models/api_v3_skystone_points_detail_spec.rb +120 -0
  394. data/spec/models/api_v3_skystone_score_detail_spec.rb +48 -0
  395. data/spec/models/api_v3_stone_spec.rb +30 -0
  396. data/spec/models/api_v3_team_avatar_spec.rb +42 -0
  397. data/spec/models/api_v3_team_avatars_spec.rb +36 -0
  398. data/spec/models/api_v3_team_details_spec.rb +54 -0
  399. data/spec/models/api_v3_team_event_participation_details_spec.rb +60 -0
  400. data/spec/models/api_v3_team_event_participation_spec.rb +42 -0
  401. data/spec/models/api_v3_team_history_spec.rb +90 -0
  402. data/spec/models/api_v3_team_season_history_spec.rb +42 -0
  403. data/spec/models/api_v3_team_spec.rb +96 -0
  404. data/spec/models/api_v3_teams_spec.rb +36 -0
  405. data/spec/models/api_v3_tournament_level_spec.rb +30 -0
  406. data/spec/models/api_v3_ug_achievements_detail_spec.rb +162 -0
  407. data/spec/models/api_v3_ug_points_detail_spec.rb +114 -0
  408. data/spec/models/api_v3_ug_remote_achievements_detail_spec.rb +156 -0
  409. data/spec/models/api_v3_ug_remote_points_detail_spec.rb +114 -0
  410. data/spec/models/api_v3_ug_wobble_location_spec.rb +30 -0
  411. data/spec/models/api_v3_ultimate_goal_remote_score_detail_spec.rb +48 -0
  412. data/spec/models/api_v3_ultimate_goal_score_detail_spec.rb +48 -0
  413. data/spec/spec_helper.rb +111 -0
  414. data/update.sh +1 -0
  415. metadata +630 -0
@@ -0,0 +1,732 @@
1
+ =begin
2
+ #FTC Scoring Data API
3
+
4
+ #THIS API IS CURRENTLY IN EARLY DEVELOPMENT AND MAY CHANGE WITHOUT WARNING. THIS PAGE WILL BE UPDATED ONCE THE API IS OFFICIALLY RELEASED. This API provides event and scoring data for FIRST Tech Challenge. Applications that present result data directly are encouraged to directly call this API rather than maintaining their own copies of the data. All endpoints are cached by our CDN and may return data up to one hour old for data that changes infrequently. During an event, data that changes frequently (e.g. match results and rankings) should not be more than 30 seconds old. NOTE: For developers who have integrated with the v2 API in the past, this is a policy shift, as previously developers were encouraged to maintain their own copy of relevant data. In the interest of providing the community with the most up-to-date data and reducing the burden for applications that are not performing their own analytics on event data, we are now encouraging directly integrating our API into websites and apps. Also note that all endpoints that accept a year argument now expect the year in which the FIRST Championship for that season is held. This is a change from the previous API and FTC-events website, which used the kickoff year. To report any issues, please report an issue here: https://github.com/FIRST-Tech-Challenge/scorekeeper/issues/new?template=api-bug-report.md To request additional data, please submit a feature request here: https://github.com/FIRST-Tech-Challenge/scorekeeper/issues/new?template=api-feature-request.md
5
+
6
+ The version of the OpenAPI document: v3
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.20.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FtcApiV3Client
17
+ class ApiV3UgAchievementsDetail < ApiModelBase
18
+ attr_accessor :robot1_navigated
19
+
20
+ attr_accessor :robot2_navigated
21
+
22
+ attr_accessor :wobble1_delivered
23
+
24
+ attr_accessor :wobble2_delivered
25
+
26
+ attr_accessor :auto_tower_low
27
+
28
+ attr_accessor :auto_tower_mid
29
+
30
+ attr_accessor :auto_tower_high
31
+
32
+ attr_accessor :auto_power_shot_left
33
+
34
+ attr_accessor :auto_power_shot_center
35
+
36
+ attr_accessor :auto_power_shot_right
37
+
38
+ attr_accessor :dc_tower_low
39
+
40
+ attr_accessor :dc_tower_mid
41
+
42
+ attr_accessor :dc_tower_high
43
+
44
+ attr_accessor :wobble1_end
45
+
46
+ attr_accessor :wobble2_end
47
+
48
+ attr_accessor :wobble1_rings
49
+
50
+ attr_accessor :wobble2_rings
51
+
52
+ attr_accessor :end_power_shot_left
53
+
54
+ attr_accessor :end_power_shot_center
55
+
56
+ attr_accessor :end_power_shot_right
57
+
58
+ attr_accessor :minor_penalties
59
+
60
+ attr_accessor :major_penalties
61
+
62
+ class EnumAttributeValidator
63
+ attr_reader :datatype
64
+ attr_reader :allowable_values
65
+
66
+ def initialize(datatype, allowable_values)
67
+ @allowable_values = allowable_values.map do |value|
68
+ case datatype.to_s
69
+ when /Integer/i
70
+ value.to_i
71
+ when /Float/i
72
+ value.to_f
73
+ else
74
+ value
75
+ end
76
+ end
77
+ end
78
+
79
+ def valid?(value)
80
+ !value || allowable_values.include?(value)
81
+ end
82
+ end
83
+
84
+ # Attribute mapping from ruby-style variable name to JSON key.
85
+ def self.attribute_map
86
+ {
87
+ :'robot1_navigated' => :'robot1Navigated',
88
+ :'robot2_navigated' => :'robot2Navigated',
89
+ :'wobble1_delivered' => :'wobble1Delivered',
90
+ :'wobble2_delivered' => :'wobble2Delivered',
91
+ :'auto_tower_low' => :'autoTowerLow',
92
+ :'auto_tower_mid' => :'autoTowerMid',
93
+ :'auto_tower_high' => :'autoTowerHigh',
94
+ :'auto_power_shot_left' => :'autoPowerShotLeft',
95
+ :'auto_power_shot_center' => :'autoPowerShotCenter',
96
+ :'auto_power_shot_right' => :'autoPowerShotRight',
97
+ :'dc_tower_low' => :'dcTowerLow',
98
+ :'dc_tower_mid' => :'dcTowerMid',
99
+ :'dc_tower_high' => :'dcTowerHigh',
100
+ :'wobble1_end' => :'wobble1End',
101
+ :'wobble2_end' => :'wobble2End',
102
+ :'wobble1_rings' => :'wobble1Rings',
103
+ :'wobble2_rings' => :'wobble2Rings',
104
+ :'end_power_shot_left' => :'endPowerShotLeft',
105
+ :'end_power_shot_center' => :'endPowerShotCenter',
106
+ :'end_power_shot_right' => :'endPowerShotRight',
107
+ :'minor_penalties' => :'minorPenalties',
108
+ :'major_penalties' => :'majorPenalties'
109
+ }
110
+ end
111
+
112
+ # Returns attribute mapping this model knows about
113
+ def self.acceptable_attribute_map
114
+ attribute_map
115
+ end
116
+
117
+ # Returns all the JSON keys this model knows about
118
+ def self.acceptable_attributes
119
+ acceptable_attribute_map.values
120
+ end
121
+
122
+ # Attribute type mapping.
123
+ def self.openapi_types
124
+ {
125
+ :'robot1_navigated' => :'Boolean',
126
+ :'robot2_navigated' => :'Boolean',
127
+ :'wobble1_delivered' => :'Boolean',
128
+ :'wobble2_delivered' => :'Boolean',
129
+ :'auto_tower_low' => :'Integer',
130
+ :'auto_tower_mid' => :'Integer',
131
+ :'auto_tower_high' => :'Integer',
132
+ :'auto_power_shot_left' => :'Boolean',
133
+ :'auto_power_shot_center' => :'Boolean',
134
+ :'auto_power_shot_right' => :'Boolean',
135
+ :'dc_tower_low' => :'Integer',
136
+ :'dc_tower_mid' => :'Integer',
137
+ :'dc_tower_high' => :'Integer',
138
+ :'wobble1_end' => :'ApiV3UgWobbleLocation',
139
+ :'wobble2_end' => :'ApiV3UgWobbleLocation',
140
+ :'wobble1_rings' => :'Integer',
141
+ :'wobble2_rings' => :'Integer',
142
+ :'end_power_shot_left' => :'Boolean',
143
+ :'end_power_shot_center' => :'Boolean',
144
+ :'end_power_shot_right' => :'Boolean',
145
+ :'minor_penalties' => :'Integer',
146
+ :'major_penalties' => :'Integer'
147
+ }
148
+ end
149
+
150
+ # List of attributes with nullable: true
151
+ def self.openapi_nullable
152
+ Set.new([
153
+ ])
154
+ end
155
+
156
+ # Initializes the object
157
+ # @param [Hash] attributes Model attributes in the form of hash
158
+ def initialize(attributes = {})
159
+ if (!attributes.is_a?(Hash))
160
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FtcApiV3Client::ApiV3UgAchievementsDetail` initialize method"
161
+ end
162
+
163
+ # check to see if the attribute exists and convert string to symbol for hash key
164
+ acceptable_attribute_map = self.class.acceptable_attribute_map
165
+ attributes = attributes.each_with_object({}) { |(k, v), h|
166
+ if (!acceptable_attribute_map.key?(k.to_sym))
167
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FtcApiV3Client::ApiV3UgAchievementsDetail`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
168
+ end
169
+ h[k.to_sym] = v
170
+ }
171
+
172
+ if attributes.key?(:'robot1_navigated')
173
+ self.robot1_navigated = attributes[:'robot1_navigated']
174
+ else
175
+ self.robot1_navigated = nil
176
+ end
177
+
178
+ if attributes.key?(:'robot2_navigated')
179
+ self.robot2_navigated = attributes[:'robot2_navigated']
180
+ else
181
+ self.robot2_navigated = nil
182
+ end
183
+
184
+ if attributes.key?(:'wobble1_delivered')
185
+ self.wobble1_delivered = attributes[:'wobble1_delivered']
186
+ else
187
+ self.wobble1_delivered = nil
188
+ end
189
+
190
+ if attributes.key?(:'wobble2_delivered')
191
+ self.wobble2_delivered = attributes[:'wobble2_delivered']
192
+ else
193
+ self.wobble2_delivered = nil
194
+ end
195
+
196
+ if attributes.key?(:'auto_tower_low')
197
+ self.auto_tower_low = attributes[:'auto_tower_low']
198
+ else
199
+ self.auto_tower_low = nil
200
+ end
201
+
202
+ if attributes.key?(:'auto_tower_mid')
203
+ self.auto_tower_mid = attributes[:'auto_tower_mid']
204
+ else
205
+ self.auto_tower_mid = nil
206
+ end
207
+
208
+ if attributes.key?(:'auto_tower_high')
209
+ self.auto_tower_high = attributes[:'auto_tower_high']
210
+ else
211
+ self.auto_tower_high = nil
212
+ end
213
+
214
+ if attributes.key?(:'auto_power_shot_left')
215
+ self.auto_power_shot_left = attributes[:'auto_power_shot_left']
216
+ else
217
+ self.auto_power_shot_left = nil
218
+ end
219
+
220
+ if attributes.key?(:'auto_power_shot_center')
221
+ self.auto_power_shot_center = attributes[:'auto_power_shot_center']
222
+ else
223
+ self.auto_power_shot_center = nil
224
+ end
225
+
226
+ if attributes.key?(:'auto_power_shot_right')
227
+ self.auto_power_shot_right = attributes[:'auto_power_shot_right']
228
+ else
229
+ self.auto_power_shot_right = nil
230
+ end
231
+
232
+ if attributes.key?(:'dc_tower_low')
233
+ self.dc_tower_low = attributes[:'dc_tower_low']
234
+ else
235
+ self.dc_tower_low = nil
236
+ end
237
+
238
+ if attributes.key?(:'dc_tower_mid')
239
+ self.dc_tower_mid = attributes[:'dc_tower_mid']
240
+ else
241
+ self.dc_tower_mid = nil
242
+ end
243
+
244
+ if attributes.key?(:'dc_tower_high')
245
+ self.dc_tower_high = attributes[:'dc_tower_high']
246
+ else
247
+ self.dc_tower_high = nil
248
+ end
249
+
250
+ if attributes.key?(:'wobble1_end')
251
+ self.wobble1_end = attributes[:'wobble1_end']
252
+ else
253
+ self.wobble1_end = nil
254
+ end
255
+
256
+ if attributes.key?(:'wobble2_end')
257
+ self.wobble2_end = attributes[:'wobble2_end']
258
+ else
259
+ self.wobble2_end = nil
260
+ end
261
+
262
+ if attributes.key?(:'wobble1_rings')
263
+ self.wobble1_rings = attributes[:'wobble1_rings']
264
+ else
265
+ self.wobble1_rings = nil
266
+ end
267
+
268
+ if attributes.key?(:'wobble2_rings')
269
+ self.wobble2_rings = attributes[:'wobble2_rings']
270
+ else
271
+ self.wobble2_rings = nil
272
+ end
273
+
274
+ if attributes.key?(:'end_power_shot_left')
275
+ self.end_power_shot_left = attributes[:'end_power_shot_left']
276
+ else
277
+ self.end_power_shot_left = nil
278
+ end
279
+
280
+ if attributes.key?(:'end_power_shot_center')
281
+ self.end_power_shot_center = attributes[:'end_power_shot_center']
282
+ else
283
+ self.end_power_shot_center = nil
284
+ end
285
+
286
+ if attributes.key?(:'end_power_shot_right')
287
+ self.end_power_shot_right = attributes[:'end_power_shot_right']
288
+ else
289
+ self.end_power_shot_right = nil
290
+ end
291
+
292
+ if attributes.key?(:'minor_penalties')
293
+ self.minor_penalties = attributes[:'minor_penalties']
294
+ else
295
+ self.minor_penalties = nil
296
+ end
297
+
298
+ if attributes.key?(:'major_penalties')
299
+ self.major_penalties = attributes[:'major_penalties']
300
+ else
301
+ self.major_penalties = nil
302
+ end
303
+ end
304
+
305
+ # Show invalid properties with the reasons. Usually used together with valid?
306
+ # @return Array for valid properties with the reasons
307
+ def list_invalid_properties
308
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
309
+ invalid_properties = Array.new
310
+ if @robot1_navigated.nil?
311
+ invalid_properties.push('invalid value for "robot1_navigated", robot1_navigated cannot be nil.')
312
+ end
313
+
314
+ if @robot2_navigated.nil?
315
+ invalid_properties.push('invalid value for "robot2_navigated", robot2_navigated cannot be nil.')
316
+ end
317
+
318
+ if @wobble1_delivered.nil?
319
+ invalid_properties.push('invalid value for "wobble1_delivered", wobble1_delivered cannot be nil.')
320
+ end
321
+
322
+ if @wobble2_delivered.nil?
323
+ invalid_properties.push('invalid value for "wobble2_delivered", wobble2_delivered cannot be nil.')
324
+ end
325
+
326
+ if @auto_tower_low.nil?
327
+ invalid_properties.push('invalid value for "auto_tower_low", auto_tower_low cannot be nil.')
328
+ end
329
+
330
+ if @auto_tower_mid.nil?
331
+ invalid_properties.push('invalid value for "auto_tower_mid", auto_tower_mid cannot be nil.')
332
+ end
333
+
334
+ if @auto_tower_high.nil?
335
+ invalid_properties.push('invalid value for "auto_tower_high", auto_tower_high cannot be nil.')
336
+ end
337
+
338
+ if @auto_power_shot_left.nil?
339
+ invalid_properties.push('invalid value for "auto_power_shot_left", auto_power_shot_left cannot be nil.')
340
+ end
341
+
342
+ if @auto_power_shot_center.nil?
343
+ invalid_properties.push('invalid value for "auto_power_shot_center", auto_power_shot_center cannot be nil.')
344
+ end
345
+
346
+ if @auto_power_shot_right.nil?
347
+ invalid_properties.push('invalid value for "auto_power_shot_right", auto_power_shot_right cannot be nil.')
348
+ end
349
+
350
+ if @dc_tower_low.nil?
351
+ invalid_properties.push('invalid value for "dc_tower_low", dc_tower_low cannot be nil.')
352
+ end
353
+
354
+ if @dc_tower_mid.nil?
355
+ invalid_properties.push('invalid value for "dc_tower_mid", dc_tower_mid cannot be nil.')
356
+ end
357
+
358
+ if @dc_tower_high.nil?
359
+ invalid_properties.push('invalid value for "dc_tower_high", dc_tower_high cannot be nil.')
360
+ end
361
+
362
+ if @wobble1_end.nil?
363
+ invalid_properties.push('invalid value for "wobble1_end", wobble1_end cannot be nil.')
364
+ end
365
+
366
+ if @wobble2_end.nil?
367
+ invalid_properties.push('invalid value for "wobble2_end", wobble2_end cannot be nil.')
368
+ end
369
+
370
+ if @wobble1_rings.nil?
371
+ invalid_properties.push('invalid value for "wobble1_rings", wobble1_rings cannot be nil.')
372
+ end
373
+
374
+ if @wobble2_rings.nil?
375
+ invalid_properties.push('invalid value for "wobble2_rings", wobble2_rings cannot be nil.')
376
+ end
377
+
378
+ if @end_power_shot_left.nil?
379
+ invalid_properties.push('invalid value for "end_power_shot_left", end_power_shot_left cannot be nil.')
380
+ end
381
+
382
+ if @end_power_shot_center.nil?
383
+ invalid_properties.push('invalid value for "end_power_shot_center", end_power_shot_center cannot be nil.')
384
+ end
385
+
386
+ if @end_power_shot_right.nil?
387
+ invalid_properties.push('invalid value for "end_power_shot_right", end_power_shot_right cannot be nil.')
388
+ end
389
+
390
+ if @minor_penalties.nil?
391
+ invalid_properties.push('invalid value for "minor_penalties", minor_penalties cannot be nil.')
392
+ end
393
+
394
+ if @major_penalties.nil?
395
+ invalid_properties.push('invalid value for "major_penalties", major_penalties cannot be nil.')
396
+ end
397
+
398
+ invalid_properties
399
+ end
400
+
401
+ # Check to see if the all the properties in the model are valid
402
+ # @return true if the model is valid
403
+ def valid?
404
+ warn '[DEPRECATED] the `valid?` method is obsolete'
405
+ return false if @robot1_navigated.nil?
406
+ return false if @robot2_navigated.nil?
407
+ return false if @wobble1_delivered.nil?
408
+ return false if @wobble2_delivered.nil?
409
+ return false if @auto_tower_low.nil?
410
+ return false if @auto_tower_mid.nil?
411
+ return false if @auto_tower_high.nil?
412
+ return false if @auto_power_shot_left.nil?
413
+ return false if @auto_power_shot_center.nil?
414
+ return false if @auto_power_shot_right.nil?
415
+ return false if @dc_tower_low.nil?
416
+ return false if @dc_tower_mid.nil?
417
+ return false if @dc_tower_high.nil?
418
+ return false if @wobble1_end.nil?
419
+ return false if @wobble2_end.nil?
420
+ return false if @wobble1_rings.nil?
421
+ return false if @wobble2_rings.nil?
422
+ return false if @end_power_shot_left.nil?
423
+ return false if @end_power_shot_center.nil?
424
+ return false if @end_power_shot_right.nil?
425
+ return false if @minor_penalties.nil?
426
+ return false if @major_penalties.nil?
427
+ true
428
+ end
429
+
430
+ # Custom attribute writer method with validation
431
+ # @param [Object] robot1_navigated Value to be assigned
432
+ def robot1_navigated=(robot1_navigated)
433
+ if robot1_navigated.nil?
434
+ fail ArgumentError, 'robot1_navigated cannot be nil'
435
+ end
436
+
437
+ @robot1_navigated = robot1_navigated
438
+ end
439
+
440
+ # Custom attribute writer method with validation
441
+ # @param [Object] robot2_navigated Value to be assigned
442
+ def robot2_navigated=(robot2_navigated)
443
+ if robot2_navigated.nil?
444
+ fail ArgumentError, 'robot2_navigated cannot be nil'
445
+ end
446
+
447
+ @robot2_navigated = robot2_navigated
448
+ end
449
+
450
+ # Custom attribute writer method with validation
451
+ # @param [Object] wobble1_delivered Value to be assigned
452
+ def wobble1_delivered=(wobble1_delivered)
453
+ if wobble1_delivered.nil?
454
+ fail ArgumentError, 'wobble1_delivered cannot be nil'
455
+ end
456
+
457
+ @wobble1_delivered = wobble1_delivered
458
+ end
459
+
460
+ # Custom attribute writer method with validation
461
+ # @param [Object] wobble2_delivered Value to be assigned
462
+ def wobble2_delivered=(wobble2_delivered)
463
+ if wobble2_delivered.nil?
464
+ fail ArgumentError, 'wobble2_delivered cannot be nil'
465
+ end
466
+
467
+ @wobble2_delivered = wobble2_delivered
468
+ end
469
+
470
+ # Custom attribute writer method with validation
471
+ # @param [Object] auto_tower_low Value to be assigned
472
+ def auto_tower_low=(auto_tower_low)
473
+ if auto_tower_low.nil?
474
+ fail ArgumentError, 'auto_tower_low cannot be nil'
475
+ end
476
+
477
+ @auto_tower_low = auto_tower_low
478
+ end
479
+
480
+ # Custom attribute writer method with validation
481
+ # @param [Object] auto_tower_mid Value to be assigned
482
+ def auto_tower_mid=(auto_tower_mid)
483
+ if auto_tower_mid.nil?
484
+ fail ArgumentError, 'auto_tower_mid cannot be nil'
485
+ end
486
+
487
+ @auto_tower_mid = auto_tower_mid
488
+ end
489
+
490
+ # Custom attribute writer method with validation
491
+ # @param [Object] auto_tower_high Value to be assigned
492
+ def auto_tower_high=(auto_tower_high)
493
+ if auto_tower_high.nil?
494
+ fail ArgumentError, 'auto_tower_high cannot be nil'
495
+ end
496
+
497
+ @auto_tower_high = auto_tower_high
498
+ end
499
+
500
+ # Custom attribute writer method with validation
501
+ # @param [Object] auto_power_shot_left Value to be assigned
502
+ def auto_power_shot_left=(auto_power_shot_left)
503
+ if auto_power_shot_left.nil?
504
+ fail ArgumentError, 'auto_power_shot_left cannot be nil'
505
+ end
506
+
507
+ @auto_power_shot_left = auto_power_shot_left
508
+ end
509
+
510
+ # Custom attribute writer method with validation
511
+ # @param [Object] auto_power_shot_center Value to be assigned
512
+ def auto_power_shot_center=(auto_power_shot_center)
513
+ if auto_power_shot_center.nil?
514
+ fail ArgumentError, 'auto_power_shot_center cannot be nil'
515
+ end
516
+
517
+ @auto_power_shot_center = auto_power_shot_center
518
+ end
519
+
520
+ # Custom attribute writer method with validation
521
+ # @param [Object] auto_power_shot_right Value to be assigned
522
+ def auto_power_shot_right=(auto_power_shot_right)
523
+ if auto_power_shot_right.nil?
524
+ fail ArgumentError, 'auto_power_shot_right cannot be nil'
525
+ end
526
+
527
+ @auto_power_shot_right = auto_power_shot_right
528
+ end
529
+
530
+ # Custom attribute writer method with validation
531
+ # @param [Object] dc_tower_low Value to be assigned
532
+ def dc_tower_low=(dc_tower_low)
533
+ if dc_tower_low.nil?
534
+ fail ArgumentError, 'dc_tower_low cannot be nil'
535
+ end
536
+
537
+ @dc_tower_low = dc_tower_low
538
+ end
539
+
540
+ # Custom attribute writer method with validation
541
+ # @param [Object] dc_tower_mid Value to be assigned
542
+ def dc_tower_mid=(dc_tower_mid)
543
+ if dc_tower_mid.nil?
544
+ fail ArgumentError, 'dc_tower_mid cannot be nil'
545
+ end
546
+
547
+ @dc_tower_mid = dc_tower_mid
548
+ end
549
+
550
+ # Custom attribute writer method with validation
551
+ # @param [Object] dc_tower_high Value to be assigned
552
+ def dc_tower_high=(dc_tower_high)
553
+ if dc_tower_high.nil?
554
+ fail ArgumentError, 'dc_tower_high cannot be nil'
555
+ end
556
+
557
+ @dc_tower_high = dc_tower_high
558
+ end
559
+
560
+ # Custom attribute writer method with validation
561
+ # @param [Object] wobble1_end Value to be assigned
562
+ def wobble1_end=(wobble1_end)
563
+ if wobble1_end.nil?
564
+ fail ArgumentError, 'wobble1_end cannot be nil'
565
+ end
566
+
567
+ @wobble1_end = wobble1_end
568
+ end
569
+
570
+ # Custom attribute writer method with validation
571
+ # @param [Object] wobble2_end Value to be assigned
572
+ def wobble2_end=(wobble2_end)
573
+ if wobble2_end.nil?
574
+ fail ArgumentError, 'wobble2_end cannot be nil'
575
+ end
576
+
577
+ @wobble2_end = wobble2_end
578
+ end
579
+
580
+ # Custom attribute writer method with validation
581
+ # @param [Object] wobble1_rings Value to be assigned
582
+ def wobble1_rings=(wobble1_rings)
583
+ if wobble1_rings.nil?
584
+ fail ArgumentError, 'wobble1_rings cannot be nil'
585
+ end
586
+
587
+ @wobble1_rings = wobble1_rings
588
+ end
589
+
590
+ # Custom attribute writer method with validation
591
+ # @param [Object] wobble2_rings Value to be assigned
592
+ def wobble2_rings=(wobble2_rings)
593
+ if wobble2_rings.nil?
594
+ fail ArgumentError, 'wobble2_rings cannot be nil'
595
+ end
596
+
597
+ @wobble2_rings = wobble2_rings
598
+ end
599
+
600
+ # Custom attribute writer method with validation
601
+ # @param [Object] end_power_shot_left Value to be assigned
602
+ def end_power_shot_left=(end_power_shot_left)
603
+ if end_power_shot_left.nil?
604
+ fail ArgumentError, 'end_power_shot_left cannot be nil'
605
+ end
606
+
607
+ @end_power_shot_left = end_power_shot_left
608
+ end
609
+
610
+ # Custom attribute writer method with validation
611
+ # @param [Object] end_power_shot_center Value to be assigned
612
+ def end_power_shot_center=(end_power_shot_center)
613
+ if end_power_shot_center.nil?
614
+ fail ArgumentError, 'end_power_shot_center cannot be nil'
615
+ end
616
+
617
+ @end_power_shot_center = end_power_shot_center
618
+ end
619
+
620
+ # Custom attribute writer method with validation
621
+ # @param [Object] end_power_shot_right Value to be assigned
622
+ def end_power_shot_right=(end_power_shot_right)
623
+ if end_power_shot_right.nil?
624
+ fail ArgumentError, 'end_power_shot_right cannot be nil'
625
+ end
626
+
627
+ @end_power_shot_right = end_power_shot_right
628
+ end
629
+
630
+ # Custom attribute writer method with validation
631
+ # @param [Object] minor_penalties Value to be assigned
632
+ def minor_penalties=(minor_penalties)
633
+ if minor_penalties.nil?
634
+ fail ArgumentError, 'minor_penalties cannot be nil'
635
+ end
636
+
637
+ @minor_penalties = minor_penalties
638
+ end
639
+
640
+ # Custom attribute writer method with validation
641
+ # @param [Object] major_penalties Value to be assigned
642
+ def major_penalties=(major_penalties)
643
+ if major_penalties.nil?
644
+ fail ArgumentError, 'major_penalties cannot be nil'
645
+ end
646
+
647
+ @major_penalties = major_penalties
648
+ end
649
+
650
+ # Checks equality by comparing each attribute.
651
+ # @param [Object] Object to be compared
652
+ def ==(o)
653
+ return true if self.equal?(o)
654
+ self.class == o.class &&
655
+ robot1_navigated == o.robot1_navigated &&
656
+ robot2_navigated == o.robot2_navigated &&
657
+ wobble1_delivered == o.wobble1_delivered &&
658
+ wobble2_delivered == o.wobble2_delivered &&
659
+ auto_tower_low == o.auto_tower_low &&
660
+ auto_tower_mid == o.auto_tower_mid &&
661
+ auto_tower_high == o.auto_tower_high &&
662
+ auto_power_shot_left == o.auto_power_shot_left &&
663
+ auto_power_shot_center == o.auto_power_shot_center &&
664
+ auto_power_shot_right == o.auto_power_shot_right &&
665
+ dc_tower_low == o.dc_tower_low &&
666
+ dc_tower_mid == o.dc_tower_mid &&
667
+ dc_tower_high == o.dc_tower_high &&
668
+ wobble1_end == o.wobble1_end &&
669
+ wobble2_end == o.wobble2_end &&
670
+ wobble1_rings == o.wobble1_rings &&
671
+ wobble2_rings == o.wobble2_rings &&
672
+ end_power_shot_left == o.end_power_shot_left &&
673
+ end_power_shot_center == o.end_power_shot_center &&
674
+ end_power_shot_right == o.end_power_shot_right &&
675
+ minor_penalties == o.minor_penalties &&
676
+ major_penalties == o.major_penalties
677
+ end
678
+
679
+ # @see the `==` method
680
+ # @param [Object] Object to be compared
681
+ def eql?(o)
682
+ self == o
683
+ end
684
+
685
+ # Calculates hash code according to all attributes.
686
+ # @return [Integer] Hash code
687
+ def hash
688
+ [robot1_navigated, robot2_navigated, wobble1_delivered, wobble2_delivered, auto_tower_low, auto_tower_mid, auto_tower_high, auto_power_shot_left, auto_power_shot_center, auto_power_shot_right, dc_tower_low, dc_tower_mid, dc_tower_high, wobble1_end, wobble2_end, wobble1_rings, wobble2_rings, end_power_shot_left, end_power_shot_center, end_power_shot_right, minor_penalties, major_penalties].hash
689
+ end
690
+
691
+ # Builds the object from hash
692
+ # @param [Hash] attributes Model attributes in the form of hash
693
+ # @return [Object] Returns the model itself
694
+ def self.build_from_hash(attributes)
695
+ return nil unless attributes.is_a?(Hash)
696
+ attributes = attributes.transform_keys(&:to_sym)
697
+ transformed_hash = {}
698
+ openapi_types.each_pair do |key, type|
699
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
700
+ transformed_hash["#{key}"] = nil
701
+ elsif type =~ /\AArray<(.*)>/i
702
+ # check to ensure the input is an array given that the attribute
703
+ # is documented as an array but the input is not
704
+ if attributes[attribute_map[key]].is_a?(Array)
705
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
706
+ end
707
+ elsif !attributes[attribute_map[key]].nil?
708
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
709
+ end
710
+ end
711
+ new(transformed_hash)
712
+ end
713
+
714
+ # Returns the object in the form of hash
715
+ # @return [Hash] Returns the object in the form of hash
716
+ def to_hash
717
+ hash = {}
718
+ self.class.attribute_map.each_pair do |attr, param|
719
+ value = self.send(attr)
720
+ if value.nil?
721
+ is_nullable = self.class.openapi_nullable.include?(attr)
722
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
723
+ end
724
+
725
+ hash[param] = _to_hash(value)
726
+ end
727
+ hash
728
+ end
729
+
730
+ end
731
+
732
+ end