Sha256: a280204d8de52a451c15bdabfa800a9703b8639a66af25079de0a12f82edd4d3
Contents?: true
Size: 1.22 KB
Versions: 4
Compression:
Stored size: 1.22 KB
Contents
require "./lib/mlb_rb/errors" require "./lib/mlb_rb/client" require "./lib/mlb_rb/game" module MlbRb class Games class << self def games_for_date(options) date = options[:date] raise DateError unless validate_date(date) client.get_games_for_date(format_date(date)) end def games_for_date_range(options) start_date = options[:start_date] end_date = options[:end_date] [start_date, end_date].each do |date| raise DateError unless validate_date(date) end client.get_games_for_range(format_date(start_date), format_date(end_date)) end private def format_date(date) "#{"%02d" % date[:month]}/#{"%02d" % date[:day]}/#{date[:year]}" end def validate_date(date) date.map do |key, value| valid_number_for_date(value, key) end.all? end def valid_number_for_date(date_number, type) if type == :year date_number.between?(1876, Date.today.year) elsif type == :month date_number.between?(1, 12) elsif type == :day date_number.between?(1, 31) end end def client MlbRb::Client end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
mlb_rb-0.0.8 | lib/mlb_rb/games.rb |
mlb_rb-0.0.7 | lib/mlb_rb/games.rb |
mlb_rb-0.0.5 | lib/mlb_rb/games.rb |
mlb_rb-0.0.4 | lib/mlb_rb/games.rb |