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,529 @@
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 ApiV3DecodePointsDetail < ApiModelBase
18
+ attr_accessor :auto_leave_points
19
+
20
+ attr_accessor :auto_artifact_points
21
+
22
+ attr_accessor :auto_pattern_points
23
+
24
+ attr_accessor :teleop_artifact_points
25
+
26
+ attr_accessor :teleop_depot_points
27
+
28
+ attr_accessor :teleop_pattern_points
29
+
30
+ attr_accessor :teleop_base_points
31
+
32
+ attr_accessor :auto_points
33
+
34
+ attr_accessor :teleop_points
35
+
36
+ attr_accessor :foul_points_committed
37
+
38
+ attr_accessor :pre_foul_total
39
+
40
+ attr_accessor :movement_rp
41
+
42
+ attr_accessor :goal_rp
43
+
44
+ attr_accessor :pattern_rp
45
+
46
+ # Used to indicate the winner in double-red-card playoff matches
47
+ attr_accessor :adjust_points
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ :'auto_leave_points' => :'autoLeavePoints',
53
+ :'auto_artifact_points' => :'autoArtifactPoints',
54
+ :'auto_pattern_points' => :'autoPatternPoints',
55
+ :'teleop_artifact_points' => :'teleopArtifactPoints',
56
+ :'teleop_depot_points' => :'teleopDepotPoints',
57
+ :'teleop_pattern_points' => :'teleopPatternPoints',
58
+ :'teleop_base_points' => :'teleopBasePoints',
59
+ :'auto_points' => :'autoPoints',
60
+ :'teleop_points' => :'teleopPoints',
61
+ :'foul_points_committed' => :'foulPointsCommitted',
62
+ :'pre_foul_total' => :'preFoulTotal',
63
+ :'movement_rp' => :'movementRP',
64
+ :'goal_rp' => :'goalRP',
65
+ :'pattern_rp' => :'patternRP',
66
+ :'adjust_points' => :'adjustPoints'
67
+ }
68
+ end
69
+
70
+ # Returns attribute mapping this model knows about
71
+ def self.acceptable_attribute_map
72
+ attribute_map
73
+ end
74
+
75
+ # Returns all the JSON keys this model knows about
76
+ def self.acceptable_attributes
77
+ acceptable_attribute_map.values
78
+ end
79
+
80
+ # Attribute type mapping.
81
+ def self.openapi_types
82
+ {
83
+ :'auto_leave_points' => :'Integer',
84
+ :'auto_artifact_points' => :'Integer',
85
+ :'auto_pattern_points' => :'Integer',
86
+ :'teleop_artifact_points' => :'Integer',
87
+ :'teleop_depot_points' => :'Integer',
88
+ :'teleop_pattern_points' => :'Integer',
89
+ :'teleop_base_points' => :'Integer',
90
+ :'auto_points' => :'Integer',
91
+ :'teleop_points' => :'Integer',
92
+ :'foul_points_committed' => :'Integer',
93
+ :'pre_foul_total' => :'Integer',
94
+ :'movement_rp' => :'Boolean',
95
+ :'goal_rp' => :'Boolean',
96
+ :'pattern_rp' => :'Boolean',
97
+ :'adjust_points' => :'Integer'
98
+ }
99
+ end
100
+
101
+ # List of attributes with nullable: true
102
+ def self.openapi_nullable
103
+ Set.new([
104
+ ])
105
+ end
106
+
107
+ # Initializes the object
108
+ # @param [Hash] attributes Model attributes in the form of hash
109
+ def initialize(attributes = {})
110
+ if (!attributes.is_a?(Hash))
111
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FtcApiV3Client::ApiV3DecodePointsDetail` initialize method"
112
+ end
113
+
114
+ # check to see if the attribute exists and convert string to symbol for hash key
115
+ acceptable_attribute_map = self.class.acceptable_attribute_map
116
+ attributes = attributes.each_with_object({}) { |(k, v), h|
117
+ if (!acceptable_attribute_map.key?(k.to_sym))
118
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FtcApiV3Client::ApiV3DecodePointsDetail`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
119
+ end
120
+ h[k.to_sym] = v
121
+ }
122
+
123
+ if attributes.key?(:'auto_leave_points')
124
+ self.auto_leave_points = attributes[:'auto_leave_points']
125
+ else
126
+ self.auto_leave_points = nil
127
+ end
128
+
129
+ if attributes.key?(:'auto_artifact_points')
130
+ self.auto_artifact_points = attributes[:'auto_artifact_points']
131
+ else
132
+ self.auto_artifact_points = nil
133
+ end
134
+
135
+ if attributes.key?(:'auto_pattern_points')
136
+ self.auto_pattern_points = attributes[:'auto_pattern_points']
137
+ else
138
+ self.auto_pattern_points = nil
139
+ end
140
+
141
+ if attributes.key?(:'teleop_artifact_points')
142
+ self.teleop_artifact_points = attributes[:'teleop_artifact_points']
143
+ else
144
+ self.teleop_artifact_points = nil
145
+ end
146
+
147
+ if attributes.key?(:'teleop_depot_points')
148
+ self.teleop_depot_points = attributes[:'teleop_depot_points']
149
+ else
150
+ self.teleop_depot_points = nil
151
+ end
152
+
153
+ if attributes.key?(:'teleop_pattern_points')
154
+ self.teleop_pattern_points = attributes[:'teleop_pattern_points']
155
+ else
156
+ self.teleop_pattern_points = nil
157
+ end
158
+
159
+ if attributes.key?(:'teleop_base_points')
160
+ self.teleop_base_points = attributes[:'teleop_base_points']
161
+ else
162
+ self.teleop_base_points = nil
163
+ end
164
+
165
+ if attributes.key?(:'auto_points')
166
+ self.auto_points = attributes[:'auto_points']
167
+ else
168
+ self.auto_points = nil
169
+ end
170
+
171
+ if attributes.key?(:'teleop_points')
172
+ self.teleop_points = attributes[:'teleop_points']
173
+ else
174
+ self.teleop_points = nil
175
+ end
176
+
177
+ if attributes.key?(:'foul_points_committed')
178
+ self.foul_points_committed = attributes[:'foul_points_committed']
179
+ else
180
+ self.foul_points_committed = nil
181
+ end
182
+
183
+ if attributes.key?(:'pre_foul_total')
184
+ self.pre_foul_total = attributes[:'pre_foul_total']
185
+ else
186
+ self.pre_foul_total = nil
187
+ end
188
+
189
+ if attributes.key?(:'movement_rp')
190
+ self.movement_rp = attributes[:'movement_rp']
191
+ else
192
+ self.movement_rp = nil
193
+ end
194
+
195
+ if attributes.key?(:'goal_rp')
196
+ self.goal_rp = attributes[:'goal_rp']
197
+ else
198
+ self.goal_rp = nil
199
+ end
200
+
201
+ if attributes.key?(:'pattern_rp')
202
+ self.pattern_rp = attributes[:'pattern_rp']
203
+ else
204
+ self.pattern_rp = nil
205
+ end
206
+
207
+ if attributes.key?(:'adjust_points')
208
+ self.adjust_points = attributes[:'adjust_points']
209
+ else
210
+ self.adjust_points = nil
211
+ end
212
+ end
213
+
214
+ # Show invalid properties with the reasons. Usually used together with valid?
215
+ # @return Array for valid properties with the reasons
216
+ def list_invalid_properties
217
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
218
+ invalid_properties = Array.new
219
+ if @auto_leave_points.nil?
220
+ invalid_properties.push('invalid value for "auto_leave_points", auto_leave_points cannot be nil.')
221
+ end
222
+
223
+ if @auto_artifact_points.nil?
224
+ invalid_properties.push('invalid value for "auto_artifact_points", auto_artifact_points cannot be nil.')
225
+ end
226
+
227
+ if @auto_pattern_points.nil?
228
+ invalid_properties.push('invalid value for "auto_pattern_points", auto_pattern_points cannot be nil.')
229
+ end
230
+
231
+ if @teleop_artifact_points.nil?
232
+ invalid_properties.push('invalid value for "teleop_artifact_points", teleop_artifact_points cannot be nil.')
233
+ end
234
+
235
+ if @teleop_depot_points.nil?
236
+ invalid_properties.push('invalid value for "teleop_depot_points", teleop_depot_points cannot be nil.')
237
+ end
238
+
239
+ if @teleop_pattern_points.nil?
240
+ invalid_properties.push('invalid value for "teleop_pattern_points", teleop_pattern_points cannot be nil.')
241
+ end
242
+
243
+ if @teleop_base_points.nil?
244
+ invalid_properties.push('invalid value for "teleop_base_points", teleop_base_points cannot be nil.')
245
+ end
246
+
247
+ if @auto_points.nil?
248
+ invalid_properties.push('invalid value for "auto_points", auto_points cannot be nil.')
249
+ end
250
+
251
+ if @teleop_points.nil?
252
+ invalid_properties.push('invalid value for "teleop_points", teleop_points cannot be nil.')
253
+ end
254
+
255
+ if @foul_points_committed.nil?
256
+ invalid_properties.push('invalid value for "foul_points_committed", foul_points_committed cannot be nil.')
257
+ end
258
+
259
+ if @pre_foul_total.nil?
260
+ invalid_properties.push('invalid value for "pre_foul_total", pre_foul_total cannot be nil.')
261
+ end
262
+
263
+ if @movement_rp.nil?
264
+ invalid_properties.push('invalid value for "movement_rp", movement_rp cannot be nil.')
265
+ end
266
+
267
+ if @goal_rp.nil?
268
+ invalid_properties.push('invalid value for "goal_rp", goal_rp cannot be nil.')
269
+ end
270
+
271
+ if @pattern_rp.nil?
272
+ invalid_properties.push('invalid value for "pattern_rp", pattern_rp cannot be nil.')
273
+ end
274
+
275
+ if @adjust_points.nil?
276
+ invalid_properties.push('invalid value for "adjust_points", adjust_points cannot be nil.')
277
+ end
278
+
279
+ invalid_properties
280
+ end
281
+
282
+ # Check to see if the all the properties in the model are valid
283
+ # @return true if the model is valid
284
+ def valid?
285
+ warn '[DEPRECATED] the `valid?` method is obsolete'
286
+ return false if @auto_leave_points.nil?
287
+ return false if @auto_artifact_points.nil?
288
+ return false if @auto_pattern_points.nil?
289
+ return false if @teleop_artifact_points.nil?
290
+ return false if @teleop_depot_points.nil?
291
+ return false if @teleop_pattern_points.nil?
292
+ return false if @teleop_base_points.nil?
293
+ return false if @auto_points.nil?
294
+ return false if @teleop_points.nil?
295
+ return false if @foul_points_committed.nil?
296
+ return false if @pre_foul_total.nil?
297
+ return false if @movement_rp.nil?
298
+ return false if @goal_rp.nil?
299
+ return false if @pattern_rp.nil?
300
+ return false if @adjust_points.nil?
301
+ true
302
+ end
303
+
304
+ # Custom attribute writer method with validation
305
+ # @param [Object] auto_leave_points Value to be assigned
306
+ def auto_leave_points=(auto_leave_points)
307
+ if auto_leave_points.nil?
308
+ fail ArgumentError, 'auto_leave_points cannot be nil'
309
+ end
310
+
311
+ @auto_leave_points = auto_leave_points
312
+ end
313
+
314
+ # Custom attribute writer method with validation
315
+ # @param [Object] auto_artifact_points Value to be assigned
316
+ def auto_artifact_points=(auto_artifact_points)
317
+ if auto_artifact_points.nil?
318
+ fail ArgumentError, 'auto_artifact_points cannot be nil'
319
+ end
320
+
321
+ @auto_artifact_points = auto_artifact_points
322
+ end
323
+
324
+ # Custom attribute writer method with validation
325
+ # @param [Object] auto_pattern_points Value to be assigned
326
+ def auto_pattern_points=(auto_pattern_points)
327
+ if auto_pattern_points.nil?
328
+ fail ArgumentError, 'auto_pattern_points cannot be nil'
329
+ end
330
+
331
+ @auto_pattern_points = auto_pattern_points
332
+ end
333
+
334
+ # Custom attribute writer method with validation
335
+ # @param [Object] teleop_artifact_points Value to be assigned
336
+ def teleop_artifact_points=(teleop_artifact_points)
337
+ if teleop_artifact_points.nil?
338
+ fail ArgumentError, 'teleop_artifact_points cannot be nil'
339
+ end
340
+
341
+ @teleop_artifact_points = teleop_artifact_points
342
+ end
343
+
344
+ # Custom attribute writer method with validation
345
+ # @param [Object] teleop_depot_points Value to be assigned
346
+ def teleop_depot_points=(teleop_depot_points)
347
+ if teleop_depot_points.nil?
348
+ fail ArgumentError, 'teleop_depot_points cannot be nil'
349
+ end
350
+
351
+ @teleop_depot_points = teleop_depot_points
352
+ end
353
+
354
+ # Custom attribute writer method with validation
355
+ # @param [Object] teleop_pattern_points Value to be assigned
356
+ def teleop_pattern_points=(teleop_pattern_points)
357
+ if teleop_pattern_points.nil?
358
+ fail ArgumentError, 'teleop_pattern_points cannot be nil'
359
+ end
360
+
361
+ @teleop_pattern_points = teleop_pattern_points
362
+ end
363
+
364
+ # Custom attribute writer method with validation
365
+ # @param [Object] teleop_base_points Value to be assigned
366
+ def teleop_base_points=(teleop_base_points)
367
+ if teleop_base_points.nil?
368
+ fail ArgumentError, 'teleop_base_points cannot be nil'
369
+ end
370
+
371
+ @teleop_base_points = teleop_base_points
372
+ end
373
+
374
+ # Custom attribute writer method with validation
375
+ # @param [Object] auto_points Value to be assigned
376
+ def auto_points=(auto_points)
377
+ if auto_points.nil?
378
+ fail ArgumentError, 'auto_points cannot be nil'
379
+ end
380
+
381
+ @auto_points = auto_points
382
+ end
383
+
384
+ # Custom attribute writer method with validation
385
+ # @param [Object] teleop_points Value to be assigned
386
+ def teleop_points=(teleop_points)
387
+ if teleop_points.nil?
388
+ fail ArgumentError, 'teleop_points cannot be nil'
389
+ end
390
+
391
+ @teleop_points = teleop_points
392
+ end
393
+
394
+ # Custom attribute writer method with validation
395
+ # @param [Object] foul_points_committed Value to be assigned
396
+ def foul_points_committed=(foul_points_committed)
397
+ if foul_points_committed.nil?
398
+ fail ArgumentError, 'foul_points_committed cannot be nil'
399
+ end
400
+
401
+ @foul_points_committed = foul_points_committed
402
+ end
403
+
404
+ # Custom attribute writer method with validation
405
+ # @param [Object] pre_foul_total Value to be assigned
406
+ def pre_foul_total=(pre_foul_total)
407
+ if pre_foul_total.nil?
408
+ fail ArgumentError, 'pre_foul_total cannot be nil'
409
+ end
410
+
411
+ @pre_foul_total = pre_foul_total
412
+ end
413
+
414
+ # Custom attribute writer method with validation
415
+ # @param [Object] movement_rp Value to be assigned
416
+ def movement_rp=(movement_rp)
417
+ if movement_rp.nil?
418
+ fail ArgumentError, 'movement_rp cannot be nil'
419
+ end
420
+
421
+ @movement_rp = movement_rp
422
+ end
423
+
424
+ # Custom attribute writer method with validation
425
+ # @param [Object] goal_rp Value to be assigned
426
+ def goal_rp=(goal_rp)
427
+ if goal_rp.nil?
428
+ fail ArgumentError, 'goal_rp cannot be nil'
429
+ end
430
+
431
+ @goal_rp = goal_rp
432
+ end
433
+
434
+ # Custom attribute writer method with validation
435
+ # @param [Object] pattern_rp Value to be assigned
436
+ def pattern_rp=(pattern_rp)
437
+ if pattern_rp.nil?
438
+ fail ArgumentError, 'pattern_rp cannot be nil'
439
+ end
440
+
441
+ @pattern_rp = pattern_rp
442
+ end
443
+
444
+ # Custom attribute writer method with validation
445
+ # @param [Object] adjust_points Value to be assigned
446
+ def adjust_points=(adjust_points)
447
+ if adjust_points.nil?
448
+ fail ArgumentError, 'adjust_points cannot be nil'
449
+ end
450
+
451
+ @adjust_points = adjust_points
452
+ end
453
+
454
+ # Checks equality by comparing each attribute.
455
+ # @param [Object] Object to be compared
456
+ def ==(o)
457
+ return true if self.equal?(o)
458
+ self.class == o.class &&
459
+ auto_leave_points == o.auto_leave_points &&
460
+ auto_artifact_points == o.auto_artifact_points &&
461
+ auto_pattern_points == o.auto_pattern_points &&
462
+ teleop_artifact_points == o.teleop_artifact_points &&
463
+ teleop_depot_points == o.teleop_depot_points &&
464
+ teleop_pattern_points == o.teleop_pattern_points &&
465
+ teleop_base_points == o.teleop_base_points &&
466
+ auto_points == o.auto_points &&
467
+ teleop_points == o.teleop_points &&
468
+ foul_points_committed == o.foul_points_committed &&
469
+ pre_foul_total == o.pre_foul_total &&
470
+ movement_rp == o.movement_rp &&
471
+ goal_rp == o.goal_rp &&
472
+ pattern_rp == o.pattern_rp &&
473
+ adjust_points == o.adjust_points
474
+ end
475
+
476
+ # @see the `==` method
477
+ # @param [Object] Object to be compared
478
+ def eql?(o)
479
+ self == o
480
+ end
481
+
482
+ # Calculates hash code according to all attributes.
483
+ # @return [Integer] Hash code
484
+ def hash
485
+ [auto_leave_points, auto_artifact_points, auto_pattern_points, teleop_artifact_points, teleop_depot_points, teleop_pattern_points, teleop_base_points, auto_points, teleop_points, foul_points_committed, pre_foul_total, movement_rp, goal_rp, pattern_rp, adjust_points].hash
486
+ end
487
+
488
+ # Builds the object from hash
489
+ # @param [Hash] attributes Model attributes in the form of hash
490
+ # @return [Object] Returns the model itself
491
+ def self.build_from_hash(attributes)
492
+ return nil unless attributes.is_a?(Hash)
493
+ attributes = attributes.transform_keys(&:to_sym)
494
+ transformed_hash = {}
495
+ openapi_types.each_pair do |key, type|
496
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
497
+ transformed_hash["#{key}"] = nil
498
+ elsif type =~ /\AArray<(.*)>/i
499
+ # check to ensure the input is an array given that the attribute
500
+ # is documented as an array but the input is not
501
+ if attributes[attribute_map[key]].is_a?(Array)
502
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
503
+ end
504
+ elsif !attributes[attribute_map[key]].nil?
505
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
506
+ end
507
+ end
508
+ new(transformed_hash)
509
+ end
510
+
511
+ # Returns the object in the form of hash
512
+ # @return [Hash] Returns the object in the form of hash
513
+ def to_hash
514
+ hash = {}
515
+ self.class.attribute_map.each_pair do |attr, param|
516
+ value = self.send(attr)
517
+ if value.nil?
518
+ is_nullable = self.class.openapi_nullable.include?(attr)
519
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
520
+ end
521
+
522
+ hash[param] = _to_hash(value)
523
+ end
524
+ hash
525
+ end
526
+
527
+ end
528
+
529
+ end