baseline_stats 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f499ffabc01e978366b6c0f49563895758c46a4ec120c374cadad196f55f8191
4
- data.tar.gz: ae04fe05c73b86fad3cc1e4a92f8ce0d86db3dad1d3a64a3c4ccd9e365b0f953
3
+ metadata.gz: 328690ae3daab2d83bc5c51246e052166ce17222c0dc0a91f7d15563572a9172
4
+ data.tar.gz: 5d21e6ac6c31ac42e7d2dda68ccb6b1d9fe8db3936facb8a15316b61c2d11133
5
5
  SHA512:
6
- metadata.gz: 157841411039d20cbdfab6d7b686cd9653bca74a858f4d16b8e55dc1de8dfc9afbad6dce693c1f90c0f0f27553e728e97fc6a919bada07e924816d0e11906b91
7
- data.tar.gz: e7d7585089edba17fec91be6bbd6ad2b8fa8659f56cb3add4a918016741d2fc76cce59355bf543f891428e6c4c9f4c1d89162cdcc537d71cb17e7e47b0288c43
6
+ metadata.gz: 1b67ae557d5098a5ce445d163cd7be5802d3b830dd431c18d7f9dd170577048462e58845cab7409bbb52a824f50cad6a051bada7ac6c42055cf15c5b98950c5b
7
+ data.tar.gz: b209bff06bef10048548e2a364f0f5fb9fe75e8bba7640c9cdd3795fea5c7f0665173273e43d7f98b938245337b993545efe8a34a80353b560ced37c837e6bd6
@@ -352,7 +352,7 @@ module BaselineEndpoints
352
352
  "query_params": %w[updatedSince fields],
353
353
  "required_params": [["updatedSince"]],
354
354
  "note": "updatedSince param is a DateTime object",
355
- "test_params": {updatedSince: DateTime.new(2023, 9, 1)},
355
+ "test_params": {updatedSince: Date.new(2023, 9, 1)},
356
356
  },
357
357
  "people_free_agents": {
358
358
  "url": BASE_URL + "{ver}/people/freeAgents",
@@ -644,7 +644,7 @@ module BaselineEndpoints
644
644
  }
645
645
  },
646
646
  "query_params": %w[stats playerPool position teamId leagueId limit offset group gameType season sportIds sortStat order hydrate fields personId metrics],
647
- "required_params": [["stats", "group"]],
647
+ "required_params": [["stats"], ["group"]],
648
648
  "note": "Limit defaults to 50 records. `stats` field can be `season` or `career`; `group` can be `hitting`, `pitching`, or `fielding`.",
649
649
  "test_params": {stats: "season", group: "hitting"},
650
650
  },
@@ -26,7 +26,19 @@ class BaselineRequest
26
26
  end
27
27
 
28
28
  return error_array unless error_array.empty?
29
- HTTParty.get(path, {:query => query})
29
+ HTTParty.get(path, {
30
+ :query => query,
31
+ :query_string_normalizer => -> (h) {
32
+ h.map do |key, value|
33
+ if value.is_a? Array
34
+ query_string = value.map {|v| "#{key}=#{v}"}.join('&')
35
+ else
36
+ query_string = "#{key}=#{value}"
37
+ end
38
+ query_string
39
+ end.join('&')
40
+ }
41
+ })
30
42
  end
31
43
 
32
44
  def construct_path
@@ -7,27 +7,28 @@ require 'baseline_request'
7
7
  class Baseline
8
8
  include BaselineEndpoints
9
9
 
10
-
11
10
  MLB_LEAGUE_IDS = [103, 104].freeze
12
- def self.team_list(options = {"leagueIds" => MLB_LEAGUE_IDS})
13
- Baseline.teams(options).call_api
11
+ def self.team_list(options = {})
12
+ Baseline.teams(options)
13
+ .set_option("leagueIds", MLB_LEAGUE_IDS, false).call_api
14
14
  end
15
15
 
16
- def self.team_player_list(options = {})
17
- Baseline.team_roster(options).call_api
16
+ def self.team_player_list(team_id, options = {})
17
+ Baseline.team_roster(options)
18
+ .set_option("teamId", team_id, true).call_api
18
19
  end
19
20
 
20
21
  def self.all_player_list(options = {})
21
- BaselineRequest.sports_players(options)
22
- .set_option("sportId", 1, false)
23
- .set_option("season", Time.now.year, false).call_api
22
+ Baseline.sports_players(options)
23
+ .set_option("sportId", 1, false)
24
+ .set_option("season", Time.now.year, false).call_api
24
25
  end
25
26
 
26
27
  def self.schedule_year(year, options = {})
27
- request = BaselineRequest.schedule(options)
28
- .set_option("sportId", 1, false)
29
- .set_option("startDate", "#{year}-03-29")
30
- .set_option("endDate", "#{year}-10-02")
28
+ request = Baseline.schedule(options)
29
+ .set_option("sportId", 1, false)
30
+ .set_option("startDate", "#{year}-03-29")
31
+ .set_option("endDate", "#{year}-10-02")
31
32
 
32
33
  request.call_api["dates"].inject([]) do |result, day|
33
34
  result += day["games"]
@@ -36,18 +37,18 @@ class Baseline
36
37
  end
37
38
 
38
39
  def self.game_at_bats(game_id, options = {})
39
- api_response = BaselineRequest.game_play_by_play(options).set_option("gamePk", game_id).call_api
40
+ api_response = Baseline.game_play_by_play(options).set_option("gamePk", game_id).call_api
40
41
  api_response['allPlays'].filter{_1["result"]["type"] == "atBat"}
41
42
  end
42
43
 
43
44
  def self.player_stats(player_id, options = {})
44
- BaselineRequest.person_stats(options)
45
- .set_option("personId", player_id)
46
- .set_option("stats", "season", false).call_api
45
+ Baseline.person_stats(options)
46
+ .set_option("personId", player_id)
47
+ .set_option("stats", "season", false).call_api
47
48
  end
48
49
 
49
50
  def self.player_info(player_id, options = {})
50
- BaselineRequest.person(options).set_option("personId", player_id).call_api
51
+ Baseline.person(options).set_option("personId", player_id).call_api
51
52
  end
52
53
 
53
54
  def self.test_endpoints
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: baseline_stats
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew Woodard
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-02 00:00:00.000000000 Z
11
+ date: 2023-11-02 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Ruby wrapper for interacting with the Statcast baseball api.
14
14
  email: mat.james.woodard@gmail.com
@@ -22,7 +22,7 @@ files:
22
22
  homepage: https://github.com/InsomniMatt/baseline_stats
23
23
  licenses: []
24
24
  metadata: {}
25
- post_install_message:
25
+ post_install_message:
26
26
  rdoc_options: []
27
27
  require_paths:
28
28
  - lib
@@ -38,7 +38,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
38
38
  version: '0'
39
39
  requirements: []
40
40
  rubygems_version: 3.1.6
41
- signing_key:
41
+ signing_key:
42
42
  specification_version: 4
43
43
  summary: Baseball stats through Statcast.
44
44
  test_files: []