sports_data_api 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +52 -3
  3. data/lib/sports_data_api.rb +1 -0
  4. data/lib/sports_data_api/ncaamb.rb +93 -0
  5. data/lib/sports_data_api/ncaamb/broadcast.rb +14 -0
  6. data/lib/sports_data_api/ncaamb/game.rb +51 -0
  7. data/lib/sports_data_api/ncaamb/games.rb +26 -0
  8. data/lib/sports_data_api/ncaamb/player.rb +22 -0
  9. data/lib/sports_data_api/ncaamb/season.rb +28 -0
  10. data/lib/sports_data_api/ncaamb/team.rb +40 -0
  11. data/lib/sports_data_api/ncaamb/teams.rb +83 -0
  12. data/lib/sports_data_api/ncaamb/tournament.rb +30 -0
  13. data/lib/sports_data_api/ncaamb/tournament_game.rb +23 -0
  14. data/lib/sports_data_api/ncaamb/tournament_list.rb +28 -0
  15. data/lib/sports_data_api/ncaamb/tournament_schedule.rb +51 -0
  16. data/lib/sports_data_api/ncaamb/venue.rb +20 -0
  17. data/lib/sports_data_api/version.rb +1 -1
  18. data/spec/cassettes/sports_data_api_ncaamb.yml +171013 -0
  19. data/spec/cassettes/sports_data_api_ncaamb_broadcast.yml +844 -0
  20. data/spec/cassettes/sports_data_api_ncaamb_game.yml +88015 -0
  21. data/spec/cassettes/sports_data_api_ncaamb_games.yml +844 -0
  22. data/spec/cassettes/sports_data_api_ncaamb_league_hierarchy.yml +9009 -0
  23. data/spec/cassettes/sports_data_api_ncaamb_player.yml +188 -0
  24. data/spec/cassettes/sports_data_api_ncaamb_season.yml +85489 -0
  25. data/spec/cassettes/sports_data_api_ncaamb_team.yml +5259 -0
  26. data/spec/cassettes/sports_data_api_ncaamb_tournament.yml +1773 -0
  27. data/spec/cassettes/sports_data_api_ncaamb_tournament_game.yml +2334 -0
  28. data/spec/cassettes/sports_data_api_ncaamb_tournament_list.yml +71 -0
  29. data/spec/cassettes/sports_data_api_ncaamb_tournament_schedule.yml +1705 -0
  30. data/spec/cassettes/sports_data_api_ncaamb_venue.yml +306 -0
  31. data/spec/lib/sports_data_api/mlb/player_spec.rb +1 -1
  32. data/spec/lib/sports_data_api/mlb/players_spec.rb +1 -1
  33. data/spec/lib/sports_data_api/mlb/team_spec.rb +1 -1
  34. data/spec/lib/sports_data_api/mlb/teams_spec.rb +1 -1
  35. data/spec/lib/sports_data_api/ncaamb/broadcast_spec.rb +18 -0
  36. data/spec/lib/sports_data_api/ncaamb/game_spec.rb +87 -0
  37. data/spec/lib/sports_data_api/ncaamb/games_spec.rb +19 -0
  38. data/spec/lib/sports_data_api/ncaamb/player_spec.rb +68 -0
  39. data/spec/lib/sports_data_api/ncaamb/season_spec.rb +41 -0
  40. data/spec/lib/sports_data_api/ncaamb/team_spec.rb +182 -0
  41. data/spec/lib/sports_data_api/ncaamb/teams_spec.rb +76 -0
  42. data/spec/lib/sports_data_api/ncaamb/tournament_game_spec.rb +38 -0
  43. data/spec/lib/sports_data_api/ncaamb/tournament_list_spec.rb +42 -0
  44. data/spec/lib/sports_data_api/ncaamb/tournament_schedule_spec.rb +43 -0
  45. data/spec/lib/sports_data_api/ncaamb/tournament_spec.rb +25 -0
  46. data/spec/lib/sports_data_api/ncaamb/venue_spec.rb +24 -0
  47. data/spec/lib/sports_data_api/ncaamb_spec.rb +41 -0
  48. data/spec/spec_helper.rb +1 -0
  49. data/sports_data_api.gemspec +1 -1
  50. metadata +72 -7
@@ -0,0 +1,19 @@
1
+ require 'spec_helper'
2
+
3
+ describe SportsDataApi::Ncaamb::Games, vcr: {
4
+ cassette_name: 'sports_data_api_ncaamb_games',
5
+ record: :new_episodes,
6
+ match_requests_on: [:host, :path]
7
+ } do
8
+ context 'results from daily schedule fetch' do
9
+ let(:games) do
10
+ SportsDataApi.set_access_level(:ncaamb, 't')
11
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
12
+ SportsDataApi::Ncaamb.daily(2015, 2, 25)
13
+ end
14
+ subject { games }
15
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::Games) }
16
+ its(:date) { should eq "2015-02-25" }
17
+ its(:count) { should eq 51 }
18
+ end
19
+ end
@@ -0,0 +1,68 @@
1
+ require 'spec_helper'
2
+
3
+ describe SportsDataApi::Ncaamb::Player, vcr: {
4
+ cassette_name: 'sports_data_api_ncaamb_player',
5
+ record: :new_episodes,
6
+ match_requests_on: [:host, :path]
7
+ } do
8
+ before do
9
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
10
+ SportsDataApi.set_access_level(:ncaamb, 't')
11
+ end
12
+ let(:player) { SportsDataApi::Ncaamb.team_roster('c7569eae-5b93-4197-b204-6f3a62146b25').players.last.player }
13
+
14
+ describe 'player' do
15
+ subject { player }
16
+ it 'should have an id' do
17
+ expect(subject[:id]).to eql 'f75e79a3-b9f8-4541-b75e-fb5477c3600f'
18
+ end
19
+
20
+ it 'should have a status' do
21
+ expect(subject[:status]).to eql 'ACT'
22
+ end
23
+
24
+ it 'should have a full_name' do
25
+ expect(subject[:full_name]).to eql 'Sam Dekker'
26
+ end
27
+
28
+ it 'should have a first_name' do
29
+ expect(subject[:first_name]).to eql 'Sam'
30
+ end
31
+
32
+ it 'should have a last_name' do
33
+ expect(subject[:last_name]).to eql 'Dekker'
34
+ end
35
+
36
+ it 'should have an abbr_name' do
37
+ expect(subject[:abbr_name]).to eql 'S.Dekker'
38
+ end
39
+
40
+ it 'should have a height' do
41
+ expect(subject[:height]).to eql '81'
42
+ end
43
+
44
+ it 'should have a weight' do
45
+ expect(subject[:weight]).to eql '230'
46
+ end
47
+
48
+ it 'should have a position' do
49
+ expect(subject[:position]).to eql 'F'
50
+ end
51
+
52
+ it 'should have a primary_position' do
53
+ expect(subject[:primary_position]).to eql 'NA'
54
+ end
55
+
56
+ it 'should have a jersey_number' do
57
+ expect(subject[:jersey_number]).to eql '15'
58
+ end
59
+
60
+ it 'should have an experience' do
61
+ expect(subject[:experience]).to eql 'JR'
62
+ end
63
+
64
+ it 'should have a birth_place' do
65
+ expect(subject[:birth_place]).to eql 'SHEBOYGAN, WI, USA'
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,41 @@
1
+ require 'spec_helper'
2
+
3
+ describe SportsDataApi::Ncaamb::Season, vcr: {
4
+ cassette_name: 'sports_data_api_ncaamb_season',
5
+ record: :new_episodes,
6
+ match_requests_on: [:host, :path]
7
+ } do
8
+ subject { SportsDataApi::Ncaamb::Season }
9
+ describe '.season?' do
10
+ context :CT do
11
+ it { SportsDataApi::Ncaamb::Season.valid?(:CT).should be_true }
12
+ end
13
+ context :REG do
14
+ it { subject.valid?(:REG).should be_true }
15
+ end
16
+ context :PST do
17
+ it { subject.valid?(:PST).should be_true }
18
+ end
19
+ context :ct do
20
+ it { subject.valid?(:ct).should be_false }
21
+ end
22
+ context :reg do
23
+ it { subject.valid?(:reg).should be_false }
24
+ end
25
+ context :pst do
26
+ it { subject.valid?(:pst).should be_false }
27
+ end
28
+ end
29
+ context 'results from schedule fetch' do
30
+ let(:season) do
31
+ SportsDataApi.set_access_level(:ncaamb, 't')
32
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
33
+ SportsDataApi::Ncaamb.schedule(2014, :reg)
34
+ end
35
+ subject { season }
36
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::Season) }
37
+ its(:year) { should eq 2014 }
38
+ its(:type) { should eq :REG }
39
+ its(:games) { should have(5512).games }
40
+ end
41
+ end
@@ -0,0 +1,182 @@
1
+ require 'spec_helper'
2
+
3
+ describe SportsDataApi::Ncaamb::Team, vcr: {
4
+ cassette_name: 'sports_data_api_ncaamb_team',
5
+ record: :new_episodes,
6
+ match_requests_on: [:host, :path]
7
+ } do
8
+ let(:teams) do
9
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
10
+ SportsDataApi.set_access_level(:ncaamb, 't')
11
+ SportsDataApi::Ncaamb.teams
12
+ end
13
+ let(:roster) do
14
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
15
+ SportsDataApi.set_access_level(:ncaamb, 't')
16
+ SportsDataApi::Ncaamb.team_roster('c7569eae-5b93-4197-b204-6f3a62146b25')
17
+ end
18
+ let(:game_summary) do
19
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
20
+ SportsDataApi.set_access_level(:ncaamb, 't')
21
+ SportsDataApi::Ncaamb.game_summary('0b387f08-6c3d-4d82-987e-e0fc3ab151d6')
22
+ end
23
+
24
+ context 'results from teams fetch' do
25
+ subject { teams.first }
26
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::Team) }
27
+ its(:id) { should eq "cd34248e-6f7d-4e0a-b694-567699bd7917" }
28
+ its(:alias) { should eq 'CBAP' }
29
+ its(:conference) { should eq 'ACCA-IND' }
30
+ its(:division) { should eq 'ACCA' }
31
+ its(:market) { should eq 'Champion Baptist' }
32
+ its(:name) { should eq 'Tigers' }
33
+ its(:players) { should eq [] }
34
+ its(:points) { should be_nil }
35
+ end
36
+ context 'results from team roster fetch' do
37
+ subject { roster }
38
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::Team) }
39
+ its(:id) { should eq "c7569eae-5b93-4197-b204-6f3a62146b25" }
40
+ its(:alias) { should eq 'WIS' }
41
+ its(:market) { should eq 'Wisconsin' }
42
+ its(:name) { should eq 'Badgers' }
43
+ its(:players) { should be_an_instance_of(Array) }
44
+ its(:points) { should be_nil }
45
+ context 'players' do
46
+ subject { roster.players }
47
+ its(:count) { should eq 16 }
48
+ end
49
+ end
50
+ context 'results from game_summary fetch' do
51
+ subject { game_summary.home_team }
52
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::Team) }
53
+ its(:id) { should eq 'c7569eae-5b93-4197-b204-6f3a62146b25' }
54
+ its(:market) { should eq 'Wisconsin' }
55
+ its(:name) { should eq 'Badgers' }
56
+ its(:points) { should eq 65 }
57
+ its(:alias) { should be_nil }
58
+ its(:conference) { should be_nil }
59
+ its(:division) { should be_nil }
60
+ its(:players) { should be_an_instance_of(Array) }
61
+
62
+ context 'players' do
63
+ subject { game_summary.home_team.players }
64
+ its(:count) { should eq 16 }
65
+ end
66
+
67
+ context 'player' do
68
+ subject { game_summary.home_team.players[1] }
69
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::Player) }
70
+ it 'should have an id' do
71
+ expect(subject.player[:id]).to eq "cfc15d5a-efc8-443a-9868-39853a28b849"
72
+ end
73
+ it 'should have a full_name' do
74
+ expect(subject.player[:full_name]).to eq "Nigel Hayes"
75
+ end
76
+ it 'should have a first_name' do
77
+ expect(subject.player[:first_name]).to eq "Nigel"
78
+ end
79
+ it 'should have a last_name' do
80
+ expect(subject.player[:last_name]).to eq "Hayes"
81
+ end
82
+ it 'should have a position' do
83
+ expect(subject.player[:position]).to eq "F"
84
+ end
85
+ it 'should have a primary_position' do
86
+ expect(subject.player[:primary_position]).to eq "NA"
87
+ end
88
+ it 'should have a jersey_number' do
89
+ expect(subject.player[:jersey_number]).to eq "10"
90
+ end
91
+ it 'should have a played' do
92
+ expect(subject.player[:played]).to eq "true"
93
+ end
94
+ it 'should have an active' do
95
+ expect(subject.player[:active]).to eq "true"
96
+ end
97
+ its(:stats){ should be_an_instance_of(SportsDataApi::Stats) }
98
+
99
+ context 'stats' do
100
+ subject { game_summary.home_team.players[1].stats.statistics }
101
+ it 'should have minutes' do
102
+ expect(subject[:minutes]).to eql '33:00'
103
+ end
104
+ it 'should have field_goals_made' do
105
+ expect(subject[:field_goals_made]).to eql '2'
106
+ end
107
+ it 'should have field_goals_made' do
108
+ expect(subject[:field_goals_att]).to eql '7'
109
+ end
110
+ it 'should have field_goals_pct' do
111
+ expect(subject[:field_goals_pct]).to eql '28.6'
112
+ end
113
+ it 'should have two_points_made' do
114
+ expect(subject[:two_points_made]).to eql '2'
115
+ end
116
+ it 'should have two_points_att' do
117
+ expect(subject[:two_points_att]).to eql '7'
118
+ end
119
+ it 'should have two_points_pct' do
120
+ expect(subject[:two_points_pct]).to eql '0.286'
121
+ end
122
+ it 'should have three_points_made' do
123
+ expect(subject[:three_points_made]).to eql '0'
124
+ end
125
+ it 'should have three_points_att' do
126
+ expect(subject[:three_points_att]).to eql '0'
127
+ end
128
+ it 'should have three_points_pct' do
129
+ expect(subject[:three_points_pct]).to eql '0.0'
130
+ end
131
+ it 'should have blocked_att' do
132
+ expect(subject[:blocked_att]).to eql '2'
133
+ end
134
+ it 'should have free_throws_made' do
135
+ expect(subject[:free_throws_made]).to eql '7'
136
+ end
137
+ it 'should have free_throws_att' do
138
+ expect(subject[:free_throws_att]).to eql '8'
139
+ end
140
+ it 'should have free_throws_pct' do
141
+ expect(subject[:free_throws_pct]).to eql '87.5'
142
+ end
143
+ it 'should have offensive_rebounds' do
144
+ expect(subject[:offensive_rebounds]).to eql '3'
145
+ end
146
+ it 'should have defensive_rebounds' do
147
+ expect(subject[:defensive_rebounds]).to eql '5'
148
+ end
149
+ it 'should have rebounds' do
150
+ expect(subject[:rebounds]).to eql '8'
151
+ end
152
+ it 'should have assists' do
153
+ expect(subject[:assists]).to eql '2'
154
+ end
155
+ it 'should have turnovers' do
156
+ expect(subject[:turnovers]).to eql '2'
157
+ end
158
+ it 'should have steals' do
159
+ expect(subject[:steals]).to eql '0'
160
+ end
161
+ it 'should have blocks' do
162
+ expect(subject[:blocks]).to eql '0'
163
+ end
164
+ it 'should have assists_turnover_ratio' do
165
+ expect(subject[:assists_turnover_ratio]).to eql '1.0'
166
+ end
167
+ it 'should have personal_fouls' do
168
+ expect(subject[:personal_fouls]).to eql '1'
169
+ end
170
+ it 'should have tech_fouls' do
171
+ expect(subject[:tech_fouls]).to eql '0'
172
+ end
173
+ it 'should have flagrant_fouls' do
174
+ expect(subject[:flagrant_fouls]).to eql '0'
175
+ end
176
+ it 'should have points' do
177
+ expect(subject[:points]).to eql '11'
178
+ end
179
+ end
180
+ end
181
+ end
182
+ end
@@ -0,0 +1,76 @@
1
+ require 'spec_helper'
2
+
3
+ describe SportsDataApi::Ncaamb::Teams, vcr: {
4
+ cassette_name: 'sports_data_api_ncaamb_league_hierarchy',
5
+ record: :new_episodes,
6
+ match_requests_on: [:host, :path]
7
+ } do
8
+ let(:teams) do
9
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
10
+ SportsDataApi.set_access_level(:ncaamb, 't')
11
+ SportsDataApi::Ncaamb.teams
12
+ end
13
+
14
+ let(:url) { 'http://api.sportsdatallc.org/ncaamb-t3/league/hierarchy.xml' }
15
+
16
+ let(:badgers_xml) do
17
+ str = RestClient.get(url, params: { api_key: api_key(:ncaamb) }).to_s
18
+ xml = Nokogiri::XML(str)
19
+ xml.remove_namespaces!
20
+ xml.xpath('/league/division/conference/team[@id=\'c7569eae-5b93-4197-b204-6f3a62146b25\']')
21
+ end
22
+
23
+ let(:badgers) { SportsDataApi::Ncaamb::Team.new(badgers_xml, "BIG10", "D1") }
24
+
25
+ subject { teams }
26
+ its(:divisions) { should eq %w(ACCA NAIA NCAIA USCAA D2 D1 D3 NCCAA).map { |str| str.to_sym } }
27
+ its(:conferences) { should eq %w(ACCA-IND KCAC MCC MSC PCAC HAAC GCAC KIAC NAIA-AAC CROSS CCAC RRAC CCC WHAC TSC DIII-MCC AII NSAA SSAC CALPAC GSAC AMC FRONTIER NAIA-SAC NCAIA USCAA-D2 HVMAC OCAC USCAA-D1 USCAA CIAA GSC NCCAA G-MAC CCAA CC GLVC SAC MIAA SIAC NSIC GLIAC GAC ECC GNAC LSC HC SSC NE10 CACC MEC RMAC DII-IND PSAC PBC PACWEST-D2 PAC12 OVC MVC BIG12 SUNBELT DI-IND BIGSKY AAC SOUTHERN SUMMIT BIGWEST CUSA WAC SOUTHLAND SWAC MEAC ACC AS PATRIOT BIGSOUTH HORIZON MWC SEC MAC BIG10 AE NE IVY COLONIAL WCC BIGEAST A10 MAAC CENT LAND DIII-HC ECAC CSAC MASCAC DIII-SAA OAC NCAC SKY CUNYAC M-IAA UAA TCCC UMAC ASC NECC MIAC SLIAC SCIAC PAC NJAC USAS E8 DIII-GNAC SCAC IIAC NEWMAC DIII-IND CCIW NWC ODAC WNYAC AMCC NEAC NAC NACC CAC D2-MID-WEST D2-EAST D1-WEST D1-MID-EAST D2-MID-EAST D2-SOUTH D2-SOUTHWEST D1-SOUTH D1-CENT).map { |str| str.to_sym } }
28
+ its(:count) { should eq 946 }
29
+
30
+ it { subject[:"c7569eae-5b93-4197-b204-6f3a62146b25"].should eq badgers }
31
+
32
+ describe 'meta methods' do
33
+ it { should respond_to :D1 }
34
+ it { should respond_to :D2 }
35
+ it { should respond_to :d1 }
36
+ it { should respond_to :d2 }
37
+ it { should respond_to :BIG10 }
38
+ it { should respond_to :big10 }
39
+ it { should respond_to :IVY }
40
+
41
+ its(:D1) { should be_a Array }
42
+ its(:D2) { should be_a Array }
43
+
44
+ context '#D1' do
45
+ subject { teams.D1 }
46
+ its(:count) { should eq 351 }
47
+ end
48
+
49
+ context '#d1' do
50
+ subject { teams.d1 }
51
+ its(:count) { should eq 351 }
52
+ end
53
+
54
+ context '#D2' do
55
+ subject { teams.D2 }
56
+ its(:count) { should eq 311 }
57
+ end
58
+
59
+ context '#d2' do
60
+ subject { teams.d2 }
61
+ its(:count) { should eq 311 }
62
+ end
63
+
64
+ context '#big10' do
65
+ subject { teams.big10 }
66
+ its(:count) { should eq 14 }
67
+ it { should include badgers }
68
+ end
69
+
70
+ context '#BIG10' do
71
+ subject { teams.BIG10 }
72
+ its(:count) { should eq 14 }
73
+ it { should include badgers }
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,38 @@
1
+ require 'spec_helper'
2
+
3
+ describe SportsDataApi::Ncaamb::TournamentGame, vcr: {
4
+ cassette_name: 'sports_data_api_ncaamb_tournament_game',
5
+ record: :new_episodes,
6
+ match_requests_on: [:host, :path]
7
+ } do
8
+ let(:tournament_schedule) do
9
+ SportsDataApi.set_access_level(:ncaamb, 't')
10
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
11
+ SportsDataApi::Ncaamb.tournament_schedule(2013, :PST, "541807c8-9a76-4999-a2ad-c0ba8a553c3d")
12
+ end
13
+ context 'results from tournament schedule' do
14
+ subject { tournament_schedule.games[5] }
15
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::TournamentGame) }
16
+ its(:id) { should eq '0e038bb9-cf2a-4920-8a14-7b4e7a61b736' }
17
+ its(:round_number) { should eq 5 }
18
+ its(:round_name) { should eq 'Elite 8' }
19
+ its(:bracket) { should eq 'West Regional' }
20
+ its(:year) { should eq 2013 }
21
+ its(:season) { should eq :PST }
22
+ its(:scheduled) { should eq Time.new(2014, 3, 29, 20, 49, 00, '-04:00') }
23
+ its(:home) { should eq '9b166a3f-e64b-4825-bb6b-92c6f0418263' }
24
+ its(:away) { should eq 'c7569eae-5b93-4197-b204-6f3a62146b25' }
25
+ its(:status) { should eq 'closed' }
26
+ its(:home_team) { should be_an_instance_of(SportsDataApi::Ncaamb::Team) }
27
+ its(:away_team) { should be_an_instance_of(SportsDataApi::Ncaamb::Team) }
28
+ its(:venue) { should be_an_instance_of(SportsDataApi::Ncaamb::Venue) }
29
+ its(:broadcast) { should be_an_instance_of(SportsDataApi::Ncaamb::Broadcast) }
30
+ its(:summary) { should be_an_instance_of(SportsDataApi::Ncaamb::Game) }
31
+ it '#boxscore' do
32
+ expect { subject.boxscore }.to raise_error(NotImplementedError)
33
+ end
34
+ it '#pbp' do
35
+ expect { subject.pbp }.to raise_error(NotImplementedError)
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,42 @@
1
+ require 'spec_helper'
2
+
3
+ describe SportsDataApi::Ncaamb::TournamentList, vcr: {
4
+ cassette_name: 'sports_data_api_ncaamb_tournament_list',
5
+ record: :new_episodes,
6
+ match_requests_on: [:host, :path]
7
+ } do
8
+ subject { SportsDataApi::Ncaamb::TournamentList }
9
+ describe '.valid?' do
10
+ context :CT do
11
+ it { SportsDataApi::Ncaamb::TournamentList.valid?(:CT).should be_true }
12
+ end
13
+ context :REG do
14
+ it { subject.valid?(:REG).should be_true }
15
+ end
16
+ context :PST do
17
+ it { subject.valid?(:PST).should be_true }
18
+ end
19
+ context :ct do
20
+ it { subject.valid?(:ct).should be_false }
21
+ end
22
+ context :reg do
23
+ it { subject.valid?(:reg).should be_false }
24
+ end
25
+ context :pst do
26
+ it { subject.valid?(:pst).should be_false }
27
+ end
28
+ end
29
+ context 'results from tournament list fetch' do
30
+ let(:tournament_list) do
31
+ SportsDataApi.set_access_level(:ncaamb, 't')
32
+ SportsDataApi.set_key(:ncaamb, api_key(:ncaamb))
33
+ SportsDataApi::Ncaamb.tournament_list(2013, :pst)
34
+ end
35
+ subject { tournament_list }
36
+ it { should be_an_instance_of(SportsDataApi::Ncaamb::TournamentList) }
37
+ its(:id) { should eq "203f9d87-c0ed-46fa-ac8e-1b83ea4f3ad8" }
38
+ its(:year) { should eq 2013 }
39
+ its(:season) { should eq :PST }
40
+ its(:tournaments) { should have(4).tournaments }
41
+ end
42
+ end