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