Sha256: dfbb497a486a89c1c838a432fc98078f806756291ba0db581dc158c92bc3df12
Contents?: true
Size: 1.92 KB
Versions: 2
Compression:
Stored size: 1.92 KB
Contents
# frozen_string_literal: true require 'json' require 'triviacrack/api/common' require 'triviacrack/parsers/game_parser' # Public: All methods in this module make requests to the Trivia Crack games # API. module TriviaCrack module API module Game include TriviaCrack::API::Common # Public: Uses the Trivia Crack API to fetch the list of games for the # current user. # # Examples # # get_games # # Returns a list of TriviaCrack::Game. # Raises TriviaCrack:Errors::RequestError if the request fails. def get_games # rubocop:disable Naming/AccessorMethodName response = get "/api/users/#{@session.user_id}/dashboard" games_data = response['list'] games = [] games_data&.each do |game_data| game = TriviaCrack::Parsers::GameParser.parse game_data games << game end games end # Public: Uses the Trivia Crack API to fetch the information for the given # game. # # game_id - The id of a Trivia Crack game. # # Examples # # get_game 123 # # Returns the TriviaCrack::Game for the given game_id. # Raises TriviaCrack:Errors::RequestError if the request fails. def get_game(game_id) response = get "/api/users/#{@session.user_id}/games/#{game_id}" TriviaCrack::Parsers::GameParser.parse response end # Public: Uses the Trivia Crack API to start a new game for the current # user. # # Examples # # client.start_new_game # # Returns the TriviaCrack::Game that was started. # Raises TriviaCrack::Errors::RequestError if the request fails def start_new_game response = post "/api/users/#{@session.user_id}/games", parameters: { language: 'EN' }.to_json TriviaCrack::Parsers::GameParser.parse response end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
triviacrack-0.8.0 | lib/triviacrack/api/game.rb |
triviacrack-0.7.0 | lib/triviacrack/api/game.rb |