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,706 @@
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 ApiV3UgRemoteAchievementsDetail < ApiModelBase
18
+ attr_accessor :robot_navigated
19
+
20
+ attr_accessor :wobble1_delivered
21
+
22
+ attr_accessor :wobble2_delivered
23
+
24
+ attr_accessor :auto_tower_low
25
+
26
+ attr_accessor :auto_tower_mid
27
+
28
+ attr_accessor :auto_tower_high
29
+
30
+ attr_accessor :auto_power_shot_left
31
+
32
+ attr_accessor :auto_power_shot_center
33
+
34
+ attr_accessor :auto_power_shot_right
35
+
36
+ attr_accessor :dc_tower_low
37
+
38
+ attr_accessor :dc_tower_mid
39
+
40
+ attr_accessor :dc_tower_high
41
+
42
+ attr_accessor :wobble1_end
43
+
44
+ attr_accessor :wobble2_end
45
+
46
+ attr_accessor :wobble1_rings
47
+
48
+ attr_accessor :wobble2_rings
49
+
50
+ attr_accessor :end_power_shot_left
51
+
52
+ attr_accessor :end_power_shot_center
53
+
54
+ attr_accessor :end_power_shot_right
55
+
56
+ attr_accessor :minor_penalties
57
+
58
+ attr_accessor :major_penalties
59
+
60
+ class EnumAttributeValidator
61
+ attr_reader :datatype
62
+ attr_reader :allowable_values
63
+
64
+ def initialize(datatype, allowable_values)
65
+ @allowable_values = allowable_values.map do |value|
66
+ case datatype.to_s
67
+ when /Integer/i
68
+ value.to_i
69
+ when /Float/i
70
+ value.to_f
71
+ else
72
+ value
73
+ end
74
+ end
75
+ end
76
+
77
+ def valid?(value)
78
+ !value || allowable_values.include?(value)
79
+ end
80
+ end
81
+
82
+ # Attribute mapping from ruby-style variable name to JSON key.
83
+ def self.attribute_map
84
+ {
85
+ :'robot_navigated' => :'robotNavigated',
86
+ :'wobble1_delivered' => :'wobble1Delivered',
87
+ :'wobble2_delivered' => :'wobble2Delivered',
88
+ :'auto_tower_low' => :'autoTowerLow',
89
+ :'auto_tower_mid' => :'autoTowerMid',
90
+ :'auto_tower_high' => :'autoTowerHigh',
91
+ :'auto_power_shot_left' => :'autoPowerShotLeft',
92
+ :'auto_power_shot_center' => :'autoPowerShotCenter',
93
+ :'auto_power_shot_right' => :'autoPowerShotRight',
94
+ :'dc_tower_low' => :'dcTowerLow',
95
+ :'dc_tower_mid' => :'dcTowerMid',
96
+ :'dc_tower_high' => :'dcTowerHigh',
97
+ :'wobble1_end' => :'wobble1End',
98
+ :'wobble2_end' => :'wobble2End',
99
+ :'wobble1_rings' => :'wobble1Rings',
100
+ :'wobble2_rings' => :'wobble2Rings',
101
+ :'end_power_shot_left' => :'endPowerShotLeft',
102
+ :'end_power_shot_center' => :'endPowerShotCenter',
103
+ :'end_power_shot_right' => :'endPowerShotRight',
104
+ :'minor_penalties' => :'minorPenalties',
105
+ :'major_penalties' => :'majorPenalties'
106
+ }
107
+ end
108
+
109
+ # Returns attribute mapping this model knows about
110
+ def self.acceptable_attribute_map
111
+ attribute_map
112
+ end
113
+
114
+ # Returns all the JSON keys this model knows about
115
+ def self.acceptable_attributes
116
+ acceptable_attribute_map.values
117
+ end
118
+
119
+ # Attribute type mapping.
120
+ def self.openapi_types
121
+ {
122
+ :'robot_navigated' => :'Boolean',
123
+ :'wobble1_delivered' => :'Boolean',
124
+ :'wobble2_delivered' => :'Boolean',
125
+ :'auto_tower_low' => :'Integer',
126
+ :'auto_tower_mid' => :'Integer',
127
+ :'auto_tower_high' => :'Integer',
128
+ :'auto_power_shot_left' => :'Boolean',
129
+ :'auto_power_shot_center' => :'Boolean',
130
+ :'auto_power_shot_right' => :'Boolean',
131
+ :'dc_tower_low' => :'Integer',
132
+ :'dc_tower_mid' => :'Integer',
133
+ :'dc_tower_high' => :'Integer',
134
+ :'wobble1_end' => :'ApiV3UgWobbleLocation',
135
+ :'wobble2_end' => :'ApiV3UgWobbleLocation',
136
+ :'wobble1_rings' => :'Integer',
137
+ :'wobble2_rings' => :'Integer',
138
+ :'end_power_shot_left' => :'Boolean',
139
+ :'end_power_shot_center' => :'Boolean',
140
+ :'end_power_shot_right' => :'Boolean',
141
+ :'minor_penalties' => :'Integer',
142
+ :'major_penalties' => :'Integer'
143
+ }
144
+ end
145
+
146
+ # List of attributes with nullable: true
147
+ def self.openapi_nullable
148
+ Set.new([
149
+ ])
150
+ end
151
+
152
+ # Initializes the object
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ def initialize(attributes = {})
155
+ if (!attributes.is_a?(Hash))
156
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FtcApiV3Client::ApiV3UgRemoteAchievementsDetail` initialize method"
157
+ end
158
+
159
+ # check to see if the attribute exists and convert string to symbol for hash key
160
+ acceptable_attribute_map = self.class.acceptable_attribute_map
161
+ attributes = attributes.each_with_object({}) { |(k, v), h|
162
+ if (!acceptable_attribute_map.key?(k.to_sym))
163
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FtcApiV3Client::ApiV3UgRemoteAchievementsDetail`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
164
+ end
165
+ h[k.to_sym] = v
166
+ }
167
+
168
+ if attributes.key?(:'robot_navigated')
169
+ self.robot_navigated = attributes[:'robot_navigated']
170
+ else
171
+ self.robot_navigated = nil
172
+ end
173
+
174
+ if attributes.key?(:'wobble1_delivered')
175
+ self.wobble1_delivered = attributes[:'wobble1_delivered']
176
+ else
177
+ self.wobble1_delivered = nil
178
+ end
179
+
180
+ if attributes.key?(:'wobble2_delivered')
181
+ self.wobble2_delivered = attributes[:'wobble2_delivered']
182
+ else
183
+ self.wobble2_delivered = nil
184
+ end
185
+
186
+ if attributes.key?(:'auto_tower_low')
187
+ self.auto_tower_low = attributes[:'auto_tower_low']
188
+ else
189
+ self.auto_tower_low = nil
190
+ end
191
+
192
+ if attributes.key?(:'auto_tower_mid')
193
+ self.auto_tower_mid = attributes[:'auto_tower_mid']
194
+ else
195
+ self.auto_tower_mid = nil
196
+ end
197
+
198
+ if attributes.key?(:'auto_tower_high')
199
+ self.auto_tower_high = attributes[:'auto_tower_high']
200
+ else
201
+ self.auto_tower_high = nil
202
+ end
203
+
204
+ if attributes.key?(:'auto_power_shot_left')
205
+ self.auto_power_shot_left = attributes[:'auto_power_shot_left']
206
+ else
207
+ self.auto_power_shot_left = nil
208
+ end
209
+
210
+ if attributes.key?(:'auto_power_shot_center')
211
+ self.auto_power_shot_center = attributes[:'auto_power_shot_center']
212
+ else
213
+ self.auto_power_shot_center = nil
214
+ end
215
+
216
+ if attributes.key?(:'auto_power_shot_right')
217
+ self.auto_power_shot_right = attributes[:'auto_power_shot_right']
218
+ else
219
+ self.auto_power_shot_right = nil
220
+ end
221
+
222
+ if attributes.key?(:'dc_tower_low')
223
+ self.dc_tower_low = attributes[:'dc_tower_low']
224
+ else
225
+ self.dc_tower_low = nil
226
+ end
227
+
228
+ if attributes.key?(:'dc_tower_mid')
229
+ self.dc_tower_mid = attributes[:'dc_tower_mid']
230
+ else
231
+ self.dc_tower_mid = nil
232
+ end
233
+
234
+ if attributes.key?(:'dc_tower_high')
235
+ self.dc_tower_high = attributes[:'dc_tower_high']
236
+ else
237
+ self.dc_tower_high = nil
238
+ end
239
+
240
+ if attributes.key?(:'wobble1_end')
241
+ self.wobble1_end = attributes[:'wobble1_end']
242
+ else
243
+ self.wobble1_end = nil
244
+ end
245
+
246
+ if attributes.key?(:'wobble2_end')
247
+ self.wobble2_end = attributes[:'wobble2_end']
248
+ else
249
+ self.wobble2_end = nil
250
+ end
251
+
252
+ if attributes.key?(:'wobble1_rings')
253
+ self.wobble1_rings = attributes[:'wobble1_rings']
254
+ else
255
+ self.wobble1_rings = nil
256
+ end
257
+
258
+ if attributes.key?(:'wobble2_rings')
259
+ self.wobble2_rings = attributes[:'wobble2_rings']
260
+ else
261
+ self.wobble2_rings = nil
262
+ end
263
+
264
+ if attributes.key?(:'end_power_shot_left')
265
+ self.end_power_shot_left = attributes[:'end_power_shot_left']
266
+ else
267
+ self.end_power_shot_left = nil
268
+ end
269
+
270
+ if attributes.key?(:'end_power_shot_center')
271
+ self.end_power_shot_center = attributes[:'end_power_shot_center']
272
+ else
273
+ self.end_power_shot_center = nil
274
+ end
275
+
276
+ if attributes.key?(:'end_power_shot_right')
277
+ self.end_power_shot_right = attributes[:'end_power_shot_right']
278
+ else
279
+ self.end_power_shot_right = nil
280
+ end
281
+
282
+ if attributes.key?(:'minor_penalties')
283
+ self.minor_penalties = attributes[:'minor_penalties']
284
+ else
285
+ self.minor_penalties = nil
286
+ end
287
+
288
+ if attributes.key?(:'major_penalties')
289
+ self.major_penalties = attributes[:'major_penalties']
290
+ else
291
+ self.major_penalties = nil
292
+ end
293
+ end
294
+
295
+ # Show invalid properties with the reasons. Usually used together with valid?
296
+ # @return Array for valid properties with the reasons
297
+ def list_invalid_properties
298
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
299
+ invalid_properties = Array.new
300
+ if @robot_navigated.nil?
301
+ invalid_properties.push('invalid value for "robot_navigated", robot_navigated cannot be nil.')
302
+ end
303
+
304
+ if @wobble1_delivered.nil?
305
+ invalid_properties.push('invalid value for "wobble1_delivered", wobble1_delivered cannot be nil.')
306
+ end
307
+
308
+ if @wobble2_delivered.nil?
309
+ invalid_properties.push('invalid value for "wobble2_delivered", wobble2_delivered cannot be nil.')
310
+ end
311
+
312
+ if @auto_tower_low.nil?
313
+ invalid_properties.push('invalid value for "auto_tower_low", auto_tower_low cannot be nil.')
314
+ end
315
+
316
+ if @auto_tower_mid.nil?
317
+ invalid_properties.push('invalid value for "auto_tower_mid", auto_tower_mid cannot be nil.')
318
+ end
319
+
320
+ if @auto_tower_high.nil?
321
+ invalid_properties.push('invalid value for "auto_tower_high", auto_tower_high cannot be nil.')
322
+ end
323
+
324
+ if @auto_power_shot_left.nil?
325
+ invalid_properties.push('invalid value for "auto_power_shot_left", auto_power_shot_left cannot be nil.')
326
+ end
327
+
328
+ if @auto_power_shot_center.nil?
329
+ invalid_properties.push('invalid value for "auto_power_shot_center", auto_power_shot_center cannot be nil.')
330
+ end
331
+
332
+ if @auto_power_shot_right.nil?
333
+ invalid_properties.push('invalid value for "auto_power_shot_right", auto_power_shot_right cannot be nil.')
334
+ end
335
+
336
+ if @dc_tower_low.nil?
337
+ invalid_properties.push('invalid value for "dc_tower_low", dc_tower_low cannot be nil.')
338
+ end
339
+
340
+ if @dc_tower_mid.nil?
341
+ invalid_properties.push('invalid value for "dc_tower_mid", dc_tower_mid cannot be nil.')
342
+ end
343
+
344
+ if @dc_tower_high.nil?
345
+ invalid_properties.push('invalid value for "dc_tower_high", dc_tower_high cannot be nil.')
346
+ end
347
+
348
+ if @wobble1_end.nil?
349
+ invalid_properties.push('invalid value for "wobble1_end", wobble1_end cannot be nil.')
350
+ end
351
+
352
+ if @wobble2_end.nil?
353
+ invalid_properties.push('invalid value for "wobble2_end", wobble2_end cannot be nil.')
354
+ end
355
+
356
+ if @wobble1_rings.nil?
357
+ invalid_properties.push('invalid value for "wobble1_rings", wobble1_rings cannot be nil.')
358
+ end
359
+
360
+ if @wobble2_rings.nil?
361
+ invalid_properties.push('invalid value for "wobble2_rings", wobble2_rings cannot be nil.')
362
+ end
363
+
364
+ if @end_power_shot_left.nil?
365
+ invalid_properties.push('invalid value for "end_power_shot_left", end_power_shot_left cannot be nil.')
366
+ end
367
+
368
+ if @end_power_shot_center.nil?
369
+ invalid_properties.push('invalid value for "end_power_shot_center", end_power_shot_center cannot be nil.')
370
+ end
371
+
372
+ if @end_power_shot_right.nil?
373
+ invalid_properties.push('invalid value for "end_power_shot_right", end_power_shot_right cannot be nil.')
374
+ end
375
+
376
+ if @minor_penalties.nil?
377
+ invalid_properties.push('invalid value for "minor_penalties", minor_penalties cannot be nil.')
378
+ end
379
+
380
+ if @major_penalties.nil?
381
+ invalid_properties.push('invalid value for "major_penalties", major_penalties cannot be nil.')
382
+ end
383
+
384
+ invalid_properties
385
+ end
386
+
387
+ # Check to see if the all the properties in the model are valid
388
+ # @return true if the model is valid
389
+ def valid?
390
+ warn '[DEPRECATED] the `valid?` method is obsolete'
391
+ return false if @robot_navigated.nil?
392
+ return false if @wobble1_delivered.nil?
393
+ return false if @wobble2_delivered.nil?
394
+ return false if @auto_tower_low.nil?
395
+ return false if @auto_tower_mid.nil?
396
+ return false if @auto_tower_high.nil?
397
+ return false if @auto_power_shot_left.nil?
398
+ return false if @auto_power_shot_center.nil?
399
+ return false if @auto_power_shot_right.nil?
400
+ return false if @dc_tower_low.nil?
401
+ return false if @dc_tower_mid.nil?
402
+ return false if @dc_tower_high.nil?
403
+ return false if @wobble1_end.nil?
404
+ return false if @wobble2_end.nil?
405
+ return false if @wobble1_rings.nil?
406
+ return false if @wobble2_rings.nil?
407
+ return false if @end_power_shot_left.nil?
408
+ return false if @end_power_shot_center.nil?
409
+ return false if @end_power_shot_right.nil?
410
+ return false if @minor_penalties.nil?
411
+ return false if @major_penalties.nil?
412
+ true
413
+ end
414
+
415
+ # Custom attribute writer method with validation
416
+ # @param [Object] robot_navigated Value to be assigned
417
+ def robot_navigated=(robot_navigated)
418
+ if robot_navigated.nil?
419
+ fail ArgumentError, 'robot_navigated cannot be nil'
420
+ end
421
+
422
+ @robot_navigated = robot_navigated
423
+ end
424
+
425
+ # Custom attribute writer method with validation
426
+ # @param [Object] wobble1_delivered Value to be assigned
427
+ def wobble1_delivered=(wobble1_delivered)
428
+ if wobble1_delivered.nil?
429
+ fail ArgumentError, 'wobble1_delivered cannot be nil'
430
+ end
431
+
432
+ @wobble1_delivered = wobble1_delivered
433
+ end
434
+
435
+ # Custom attribute writer method with validation
436
+ # @param [Object] wobble2_delivered Value to be assigned
437
+ def wobble2_delivered=(wobble2_delivered)
438
+ if wobble2_delivered.nil?
439
+ fail ArgumentError, 'wobble2_delivered cannot be nil'
440
+ end
441
+
442
+ @wobble2_delivered = wobble2_delivered
443
+ end
444
+
445
+ # Custom attribute writer method with validation
446
+ # @param [Object] auto_tower_low Value to be assigned
447
+ def auto_tower_low=(auto_tower_low)
448
+ if auto_tower_low.nil?
449
+ fail ArgumentError, 'auto_tower_low cannot be nil'
450
+ end
451
+
452
+ @auto_tower_low = auto_tower_low
453
+ end
454
+
455
+ # Custom attribute writer method with validation
456
+ # @param [Object] auto_tower_mid Value to be assigned
457
+ def auto_tower_mid=(auto_tower_mid)
458
+ if auto_tower_mid.nil?
459
+ fail ArgumentError, 'auto_tower_mid cannot be nil'
460
+ end
461
+
462
+ @auto_tower_mid = auto_tower_mid
463
+ end
464
+
465
+ # Custom attribute writer method with validation
466
+ # @param [Object] auto_tower_high Value to be assigned
467
+ def auto_tower_high=(auto_tower_high)
468
+ if auto_tower_high.nil?
469
+ fail ArgumentError, 'auto_tower_high cannot be nil'
470
+ end
471
+
472
+ @auto_tower_high = auto_tower_high
473
+ end
474
+
475
+ # Custom attribute writer method with validation
476
+ # @param [Object] auto_power_shot_left Value to be assigned
477
+ def auto_power_shot_left=(auto_power_shot_left)
478
+ if auto_power_shot_left.nil?
479
+ fail ArgumentError, 'auto_power_shot_left cannot be nil'
480
+ end
481
+
482
+ @auto_power_shot_left = auto_power_shot_left
483
+ end
484
+
485
+ # Custom attribute writer method with validation
486
+ # @param [Object] auto_power_shot_center Value to be assigned
487
+ def auto_power_shot_center=(auto_power_shot_center)
488
+ if auto_power_shot_center.nil?
489
+ fail ArgumentError, 'auto_power_shot_center cannot be nil'
490
+ end
491
+
492
+ @auto_power_shot_center = auto_power_shot_center
493
+ end
494
+
495
+ # Custom attribute writer method with validation
496
+ # @param [Object] auto_power_shot_right Value to be assigned
497
+ def auto_power_shot_right=(auto_power_shot_right)
498
+ if auto_power_shot_right.nil?
499
+ fail ArgumentError, 'auto_power_shot_right cannot be nil'
500
+ end
501
+
502
+ @auto_power_shot_right = auto_power_shot_right
503
+ end
504
+
505
+ # Custom attribute writer method with validation
506
+ # @param [Object] dc_tower_low Value to be assigned
507
+ def dc_tower_low=(dc_tower_low)
508
+ if dc_tower_low.nil?
509
+ fail ArgumentError, 'dc_tower_low cannot be nil'
510
+ end
511
+
512
+ @dc_tower_low = dc_tower_low
513
+ end
514
+
515
+ # Custom attribute writer method with validation
516
+ # @param [Object] dc_tower_mid Value to be assigned
517
+ def dc_tower_mid=(dc_tower_mid)
518
+ if dc_tower_mid.nil?
519
+ fail ArgumentError, 'dc_tower_mid cannot be nil'
520
+ end
521
+
522
+ @dc_tower_mid = dc_tower_mid
523
+ end
524
+
525
+ # Custom attribute writer method with validation
526
+ # @param [Object] dc_tower_high Value to be assigned
527
+ def dc_tower_high=(dc_tower_high)
528
+ if dc_tower_high.nil?
529
+ fail ArgumentError, 'dc_tower_high cannot be nil'
530
+ end
531
+
532
+ @dc_tower_high = dc_tower_high
533
+ end
534
+
535
+ # Custom attribute writer method with validation
536
+ # @param [Object] wobble1_end Value to be assigned
537
+ def wobble1_end=(wobble1_end)
538
+ if wobble1_end.nil?
539
+ fail ArgumentError, 'wobble1_end cannot be nil'
540
+ end
541
+
542
+ @wobble1_end = wobble1_end
543
+ end
544
+
545
+ # Custom attribute writer method with validation
546
+ # @param [Object] wobble2_end Value to be assigned
547
+ def wobble2_end=(wobble2_end)
548
+ if wobble2_end.nil?
549
+ fail ArgumentError, 'wobble2_end cannot be nil'
550
+ end
551
+
552
+ @wobble2_end = wobble2_end
553
+ end
554
+
555
+ # Custom attribute writer method with validation
556
+ # @param [Object] wobble1_rings Value to be assigned
557
+ def wobble1_rings=(wobble1_rings)
558
+ if wobble1_rings.nil?
559
+ fail ArgumentError, 'wobble1_rings cannot be nil'
560
+ end
561
+
562
+ @wobble1_rings = wobble1_rings
563
+ end
564
+
565
+ # Custom attribute writer method with validation
566
+ # @param [Object] wobble2_rings Value to be assigned
567
+ def wobble2_rings=(wobble2_rings)
568
+ if wobble2_rings.nil?
569
+ fail ArgumentError, 'wobble2_rings cannot be nil'
570
+ end
571
+
572
+ @wobble2_rings = wobble2_rings
573
+ end
574
+
575
+ # Custom attribute writer method with validation
576
+ # @param [Object] end_power_shot_left Value to be assigned
577
+ def end_power_shot_left=(end_power_shot_left)
578
+ if end_power_shot_left.nil?
579
+ fail ArgumentError, 'end_power_shot_left cannot be nil'
580
+ end
581
+
582
+ @end_power_shot_left = end_power_shot_left
583
+ end
584
+
585
+ # Custom attribute writer method with validation
586
+ # @param [Object] end_power_shot_center Value to be assigned
587
+ def end_power_shot_center=(end_power_shot_center)
588
+ if end_power_shot_center.nil?
589
+ fail ArgumentError, 'end_power_shot_center cannot be nil'
590
+ end
591
+
592
+ @end_power_shot_center = end_power_shot_center
593
+ end
594
+
595
+ # Custom attribute writer method with validation
596
+ # @param [Object] end_power_shot_right Value to be assigned
597
+ def end_power_shot_right=(end_power_shot_right)
598
+ if end_power_shot_right.nil?
599
+ fail ArgumentError, 'end_power_shot_right cannot be nil'
600
+ end
601
+
602
+ @end_power_shot_right = end_power_shot_right
603
+ end
604
+
605
+ # Custom attribute writer method with validation
606
+ # @param [Object] minor_penalties Value to be assigned
607
+ def minor_penalties=(minor_penalties)
608
+ if minor_penalties.nil?
609
+ fail ArgumentError, 'minor_penalties cannot be nil'
610
+ end
611
+
612
+ @minor_penalties = minor_penalties
613
+ end
614
+
615
+ # Custom attribute writer method with validation
616
+ # @param [Object] major_penalties Value to be assigned
617
+ def major_penalties=(major_penalties)
618
+ if major_penalties.nil?
619
+ fail ArgumentError, 'major_penalties cannot be nil'
620
+ end
621
+
622
+ @major_penalties = major_penalties
623
+ end
624
+
625
+ # Checks equality by comparing each attribute.
626
+ # @param [Object] Object to be compared
627
+ def ==(o)
628
+ return true if self.equal?(o)
629
+ self.class == o.class &&
630
+ robot_navigated == o.robot_navigated &&
631
+ wobble1_delivered == o.wobble1_delivered &&
632
+ wobble2_delivered == o.wobble2_delivered &&
633
+ auto_tower_low == o.auto_tower_low &&
634
+ auto_tower_mid == o.auto_tower_mid &&
635
+ auto_tower_high == o.auto_tower_high &&
636
+ auto_power_shot_left == o.auto_power_shot_left &&
637
+ auto_power_shot_center == o.auto_power_shot_center &&
638
+ auto_power_shot_right == o.auto_power_shot_right &&
639
+ dc_tower_low == o.dc_tower_low &&
640
+ dc_tower_mid == o.dc_tower_mid &&
641
+ dc_tower_high == o.dc_tower_high &&
642
+ wobble1_end == o.wobble1_end &&
643
+ wobble2_end == o.wobble2_end &&
644
+ wobble1_rings == o.wobble1_rings &&
645
+ wobble2_rings == o.wobble2_rings &&
646
+ end_power_shot_left == o.end_power_shot_left &&
647
+ end_power_shot_center == o.end_power_shot_center &&
648
+ end_power_shot_right == o.end_power_shot_right &&
649
+ minor_penalties == o.minor_penalties &&
650
+ major_penalties == o.major_penalties
651
+ end
652
+
653
+ # @see the `==` method
654
+ # @param [Object] Object to be compared
655
+ def eql?(o)
656
+ self == o
657
+ end
658
+
659
+ # Calculates hash code according to all attributes.
660
+ # @return [Integer] Hash code
661
+ def hash
662
+ [robot_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
663
+ end
664
+
665
+ # Builds the object from hash
666
+ # @param [Hash] attributes Model attributes in the form of hash
667
+ # @return [Object] Returns the model itself
668
+ def self.build_from_hash(attributes)
669
+ return nil unless attributes.is_a?(Hash)
670
+ attributes = attributes.transform_keys(&:to_sym)
671
+ transformed_hash = {}
672
+ openapi_types.each_pair do |key, type|
673
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
674
+ transformed_hash["#{key}"] = nil
675
+ elsif type =~ /\AArray<(.*)>/i
676
+ # check to ensure the input is an array given that the attribute
677
+ # is documented as an array but the input is not
678
+ if attributes[attribute_map[key]].is_a?(Array)
679
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
680
+ end
681
+ elsif !attributes[attribute_map[key]].nil?
682
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
683
+ end
684
+ end
685
+ new(transformed_hash)
686
+ end
687
+
688
+ # Returns the object in the form of hash
689
+ # @return [Hash] Returns the object in the form of hash
690
+ def to_hash
691
+ hash = {}
692
+ self.class.attribute_map.each_pair do |attr, param|
693
+ value = self.send(attr)
694
+ if value.nil?
695
+ is_nullable = self.class.openapi_nullable.include?(attr)
696
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
697
+ end
698
+
699
+ hash[param] = _to_hash(value)
700
+ end
701
+ hash
702
+ end
703
+
704
+ end
705
+
706
+ end