sportdb-models 1.13.0 → 1.14.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.
- checksums.yaml +4 -4
- data/Manifest.txt +3 -0
- data/lib/sportdb/readers/event.rb +33 -7
- data/lib/sportdb/version.rb +1 -1
- data/test/data/at-austria/2015_16/1-bundesliga.yml +28 -0
- data/test/data/at-austria/2015_16/cup.yml +77 -0
- data/test/test_event_reader.rb +52 -0
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2cebb6c98e88a5cbb12889d6a90b4a890d09ac21
|
4
|
+
data.tar.gz: 7d9017176287c6f00a2a209fa6a9e1877fabf286
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 42901342ef3482dfc37ad8abb60b0870c91c718922c85493129249e7ab4ca55bb95aa8fcba3e3f9a04f57b513705003eefddfd55828301e44186e432bc682c53
|
7
|
+
data.tar.gz: d514e02328829f767cac4bf4b75499ba9e9acf4358498e8a77bd8043869120720b9e138b38ed0eeed02bcb1f4d64d77fa3d25588b7e8883f642d8c58c2fc36f0
|
data/Manifest.txt
CHANGED
@@ -83,6 +83,8 @@ test/data/at-austria/2013_14/el.yml
|
|
83
83
|
test/data/at-austria/2013_14/squads/austria.txt
|
84
84
|
test/data/at-austria/2013_14/squads/salzburg.txt
|
85
85
|
test/data/at-austria/2014_15/1-bundesliga-ii.txt
|
86
|
+
test/data/at-austria/2015_16/1-bundesliga.yml
|
87
|
+
test/data/at-austria/2015_16/cup.yml
|
86
88
|
test/data/at-austria/leagues.txt
|
87
89
|
test/data/at-austria/teams.txt
|
88
90
|
test/data/at-austria/teams_2.txt
|
@@ -127,6 +129,7 @@ test/test_assoc_reader.rb
|
|
127
129
|
test/test_changes.rb
|
128
130
|
test/test_cursor.rb
|
129
131
|
test/test_date.rb
|
132
|
+
test/test_event_reader.rb
|
130
133
|
test/test_goals.rb
|
131
134
|
test/test_lang.rb
|
132
135
|
test/test_load.rb
|
@@ -140,13 +140,42 @@ class EventReader
|
|
140
140
|
end
|
141
141
|
|
142
142
|
event_attribs['ground_ids'] = ground_ids
|
143
|
-
|
143
|
+
|
144
|
+
elsif key == 'team3' ## note: check before teams (to avoid future gotchas)
|
145
|
+
## for now always assume false # todo: fix - use value and convert to boolean if not boolean
|
146
|
+
event_attribs['team3'] = false
|
147
|
+
|
148
|
+
elsif key == 'teams' || key.downcase =~ /teams/
|
144
149
|
## assume teams value is an array
|
145
|
-
|
150
|
+
|
151
|
+
### check if key includes number of teams; if yes - use for checksum/assert
|
152
|
+
if key =~ /(\d+)/
|
153
|
+
if value.size != $1.to_i
|
154
|
+
puts "[fatal] event reader - team key - expecting #{$1.to_i} teams; got #{value.size}"
|
155
|
+
exit 1
|
156
|
+
end
|
157
|
+
end
|
158
|
+
|
146
159
|
team_ids = []
|
147
160
|
value.each do |item|
|
148
161
|
team_key = item.to_s.strip
|
149
|
-
|
162
|
+
|
163
|
+
## check if team_key includes uppercase letters
|
164
|
+
if team_key =~ /[A-Z]/
|
165
|
+
## assume team name (NOT team key); try to lookup team key in database
|
166
|
+
## todo/fix:
|
167
|
+
## remove subtitle from title e.g. everything in ()
|
168
|
+
## SV Oberwart (RL Ost) => SV Oberwart
|
169
|
+
team = Team.find_by( title: team_key )
|
170
|
+
if team.nil?
|
171
|
+
## next try synonyms
|
172
|
+
team = Team.where( "synonyms LIKE ?", "%#{team_key}%" ).first
|
173
|
+
end
|
174
|
+
else
|
175
|
+
## assume "verbatim/literal" team_key (use as is 1:1)
|
176
|
+
team = Team.find_by( key: team_key )
|
177
|
+
end
|
178
|
+
|
150
179
|
if team.nil?
|
151
180
|
### print better error message than just
|
152
181
|
## *** error: Couldn't find SportDb::Model::Team
|
@@ -155,14 +184,11 @@ class EventReader
|
|
155
184
|
exit 1
|
156
185
|
### fix/todo: throw exception/error
|
157
186
|
end
|
187
|
+
|
158
188
|
team_ids << team.id
|
159
189
|
end
|
160
190
|
|
161
191
|
event_attribs['team_ids'] = team_ids
|
162
|
-
|
163
|
-
elsif key == 'team3'
|
164
|
-
## for now always assume false # todo: fix - use value and convert to boolean if not boolean
|
165
|
-
event_attribs['team3'] = false
|
166
192
|
|
167
193
|
elsif key == 'fixtures' || key == 'sources'
|
168
194
|
### todo: check for mulitiple fixtures/sources ?? allow disallow?? why? why not?
|
data/lib/sportdb/version.rb
CHANGED
@@ -0,0 +1,28 @@
|
|
1
|
+
#########################################################################
|
2
|
+
# Österreichische Bundesliga 2015/16 (104. Meisterschaft / 42. Saison)
|
3
|
+
|
4
|
+
league: at
|
5
|
+
season: 2015/16
|
6
|
+
start_at: 2015-07-25
|
7
|
+
|
8
|
+
# num/edition - 104 or 42 ?? ##
|
9
|
+
# note: timezone for games (play_at) is *always* CET (central european time)
|
10
|
+
|
11
|
+
fixtures:
|
12
|
+
- 1-bundesliga-i
|
13
|
+
- 1-bundesliga-ii
|
14
|
+
|
15
|
+
|
16
|
+
10 Teams:
|
17
|
+
- RB Salzburg
|
18
|
+
- Rapid Wien
|
19
|
+
- Sturm Graz
|
20
|
+
- Wolfsberger AC
|
21
|
+
- SV Ried
|
22
|
+
- Austria Wien
|
23
|
+
- Admira Wacker
|
24
|
+
- SCR Altach
|
25
|
+
- SV Grödig
|
26
|
+
- SV Mattersburg ## Aufsteiger
|
27
|
+
|
28
|
+
|
@@ -0,0 +1,77 @@
|
|
1
|
+
#################################
|
2
|
+
# ÖFB Cup 2015/16
|
3
|
+
|
4
|
+
league: at.cup
|
5
|
+
season: 2015/16
|
6
|
+
start_at: 2015-07-17
|
7
|
+
team3: false # no game for 3rd/4th place
|
8
|
+
|
9
|
+
# note: timezone for games (play_at) is *always* CET (central european time)
|
10
|
+
|
11
|
+
|
12
|
+
64 Teams:
|
13
|
+
- RB Salzburg ## Bundesliga (10)
|
14
|
+
- Rapid Wien
|
15
|
+
- Admira Wacker
|
16
|
+
- Austria Wien
|
17
|
+
- Sturm Graz
|
18
|
+
- SV Ried
|
19
|
+
- SCR Altach
|
20
|
+
- SV Mattersburg
|
21
|
+
- SV Grödig
|
22
|
+
- Wolfsburger AC
|
23
|
+
- KSV 1919 ## Erste Liga (9) - excl. FC Liefering
|
24
|
+
- Wacker Innsbruck
|
25
|
+
- Austria Lustenau
|
26
|
+
- SKN St. Pölten
|
27
|
+
- SC Wr. Neustadt
|
28
|
+
- Austria Klagenfurt
|
29
|
+
- LASK Linz
|
30
|
+
- Austria Salzburg
|
31
|
+
- Floridsdorfer AC
|
32
|
+
- SC/ESV Parndorf 1919 (RL Ost) ## Burgenland (4)
|
33
|
+
- SC Ritzing (RL Ost)
|
34
|
+
- SV Oberwart (RL Ost)
|
35
|
+
- SC Trausdorf (2. Liga Nord Burgenland)
|
36
|
+
- SV Schwechat (RL Ost) ## Wien (5)
|
37
|
+
- First Vienna FC 1894 (RL Ost)
|
38
|
+
- FC Stadlau (RL Ost)
|
39
|
+
- Wiener Sportklub (RL Ost)
|
40
|
+
- SC Red Star Penzing (2. LL Wien)
|
41
|
+
- 1. SC Sollenau (RL Ost) ## Niederösterreich (7)
|
42
|
+
- SV Horn (RL Ost)
|
43
|
+
- ASK Ebreichsdorf (RL Ost)
|
44
|
+
- SKU Amstetten (RL Ost)
|
45
|
+
- SC Krems (NÖ Landesliga)
|
46
|
+
- SV Leobendorf (NÖ Landesliga)
|
47
|
+
- ASK Kottingsbrunn (NÖ Landesliga)
|
48
|
+
- SV Wallern (RL Mitte) ## Oberösterreich (6)
|
49
|
+
- Union Gurten (RL Mitte)
|
50
|
+
- FC Blau Weiß Linz (RL Mitte)
|
51
|
+
- SK Vorwärts Steyr (RL Mitte)
|
52
|
+
- ATSV Stadl Paura (RL Mitte)
|
53
|
+
- FC Wels (OÖ Liga)
|
54
|
+
- SV Seekirchen 1945 (RL West) ## Salzburg (5)
|
55
|
+
- TSV Neumarkt (RL West)
|
56
|
+
- TSV St. Johann Pongau (RL West)
|
57
|
+
- USC Eugendorf (RL West)
|
58
|
+
- SC Golling (Salzburger Liga)
|
59
|
+
- SV Lafnitz (RL Mitte) ## Steiermark (6)
|
60
|
+
- TSV Hartberg (RL Mitte)
|
61
|
+
- SC Weiz (RL Mitte)
|
62
|
+
- Deutschlandsberger SC (RL Mitte)
|
63
|
+
- SV Allerheiligen (RL Mitte)
|
64
|
+
- FC Piberstein Lankowitz (LL Steiermark)
|
65
|
+
- ASV Annabichler SV 1923 (RL Mitte) ## Kärnten (4)
|
66
|
+
- ASKÖ Köttmannsdorf (Kärntner Liga)
|
67
|
+
- VST Völkermarkt (Kärntner Liga)
|
68
|
+
- FC Lendorf (Kärntner Liga)
|
69
|
+
- WSG Wattens (RL West) ## Tirol (4)
|
70
|
+
- SVG Reichenau (RL West)
|
71
|
+
- FC Kitzbühel (RL West)
|
72
|
+
- SV Innsbruck (Tiroler Liga)
|
73
|
+
- FC Hard (RL West) ## Vorarlberg (4)
|
74
|
+
- FC Dornbirn 1913 (RL West)
|
75
|
+
- SC Schwarz Weiß Bregenz (RL West)
|
76
|
+
- FC Höchst (Vorarlberg-Liga)
|
77
|
+
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
###
|
4
|
+
# to run use
|
5
|
+
# ruby -I ./lib -I ./test test/test_event_reader.rb
|
6
|
+
# or better
|
7
|
+
# rake -I ./lib test
|
8
|
+
|
9
|
+
|
10
|
+
require 'helper'
|
11
|
+
|
12
|
+
class TestEventReaderXX < MiniTest::Test # note: TestEventReader alreay defined, thus, add xx
|
13
|
+
|
14
|
+
def setup
|
15
|
+
WorldDb.delete!
|
16
|
+
SportDb.delete!
|
17
|
+
PersonDb.delete!
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_bl
|
21
|
+
at = Country.create!( key: 'at', name: 'Austria', code: 'AUT', pop: 1, area: 1)
|
22
|
+
season = Season.create!( key: '2015/16', title: '2015/16' )
|
23
|
+
bl = League.create!( key: 'at', title: 'Bundesliga', club: true, country_id: at.id )
|
24
|
+
|
25
|
+
## read teams (required for db key lookup)
|
26
|
+
teamreader = TestTeamReader.from_file( 'at-austria/teams', country_id: at.id )
|
27
|
+
teamreader.read
|
28
|
+
teamreader = TestTeamReader.from_file( 'at-austria/teams_2', country_id: at.id )
|
29
|
+
teamreader.read
|
30
|
+
|
31
|
+
r = TestEventReader.from_file( 'at-austria/2015_16/1-bundesliga' )
|
32
|
+
r.read
|
33
|
+
|
34
|
+
assert true ## if we get here; assume everything ok
|
35
|
+
end
|
36
|
+
|
37
|
+
### fix/todo:
|
38
|
+
## to be done - add support for Wiener Sportklub (RL Ost) => Wiener Sportklub lookups
|
39
|
+
def xxxx_test_cup
|
40
|
+
at = Country.create!( key: 'at', name: 'Austria', code: 'AUT', pop: 1, area: 1)
|
41
|
+
season = Season.create!( key: '2015/16', title: '2015/16' )
|
42
|
+
cup = League.create!( key: 'at.cup', title: 'Cup', club: true, country_id: at.id )
|
43
|
+
|
44
|
+
r = TestEventReader.from_file( 'at-austria/2015_16/cup' )
|
45
|
+
r.read
|
46
|
+
|
47
|
+
assert true ## if we get here; assume everything ok
|
48
|
+
end
|
49
|
+
|
50
|
+
end # class TestEventReader
|
51
|
+
|
52
|
+
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sportdb-models
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.14.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gerald Bauer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-08-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: worlddb-models
|
@@ -161,6 +161,8 @@ files:
|
|
161
161
|
- test/data/at-austria/2013_14/squads/austria.txt
|
162
162
|
- test/data/at-austria/2013_14/squads/salzburg.txt
|
163
163
|
- test/data/at-austria/2014_15/1-bundesliga-ii.txt
|
164
|
+
- test/data/at-austria/2015_16/1-bundesliga.yml
|
165
|
+
- test/data/at-austria/2015_16/cup.yml
|
164
166
|
- test/data/at-austria/leagues.txt
|
165
167
|
- test/data/at-austria/teams.txt
|
166
168
|
- test/data/at-austria/teams_2.txt
|
@@ -205,6 +207,7 @@ files:
|
|
205
207
|
- test/test_changes.rb
|
206
208
|
- test/test_cursor.rb
|
207
209
|
- test/test_date.rb
|
210
|
+
- test/test_event_reader.rb
|
208
211
|
- test/test_goals.rb
|
209
212
|
- test/test_lang.rb
|
210
213
|
- test/test_load.rb
|
@@ -253,6 +256,7 @@ test_files:
|
|
253
256
|
- test/test_load.rb
|
254
257
|
- test/test_cursor.rb
|
255
258
|
- test/test_standings.rb
|
259
|
+
- test/test_event_reader.rb
|
256
260
|
- test/test_squad_club_reader.rb
|
257
261
|
- test/test_scores.rb
|
258
262
|
- test/test_winner.rb
|