sportdb-formats 1.1.3 → 1.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/Manifest.txt +0 -24
  3. data/Rakefile +2 -5
  4. data/lib/sportdb/formats.rb +39 -74
  5. data/lib/sportdb/formats/event/event_reader.rb +1 -1
  6. data/lib/sportdb/formats/league/league_outline_reader.rb +18 -6
  7. data/lib/sportdb/formats/package.rb +2 -2
  8. data/lib/sportdb/formats/team/club_index_history.rb +2 -6
  9. data/lib/sportdb/formats/team/club_reader_history.rb +1 -1
  10. data/lib/sportdb/formats/team/club_reader_props.rb +18 -2
  11. data/lib/sportdb/formats/version.rb +1 -1
  12. data/test/helper.rb +3 -0
  13. metadata +5 -71
  14. data/lib/sportdb/formats/config.rb +0 -40
  15. data/lib/sportdb/formats/match/match_parser_csv.rb +0 -458
  16. data/lib/sportdb/formats/match/match_status_parser.rb +0 -86
  17. data/lib/sportdb/formats/name_helper.rb +0 -87
  18. data/lib/sportdb/formats/score/score_formats.rb +0 -239
  19. data/lib/sportdb/formats/score/score_parser.rb +0 -204
  20. data/lib/sportdb/formats/season_utils.rb +0 -16
  21. data/lib/sportdb/formats/structs/country.rb +0 -31
  22. data/lib/sportdb/formats/structs/group.rb +0 -18
  23. data/lib/sportdb/formats/structs/league.rb +0 -37
  24. data/lib/sportdb/formats/structs/match.rb +0 -157
  25. data/lib/sportdb/formats/structs/matchlist.rb +0 -220
  26. data/lib/sportdb/formats/structs/round.rb +0 -25
  27. data/lib/sportdb/formats/structs/season.rb +0 -192
  28. data/lib/sportdb/formats/structs/standings.rb +0 -268
  29. data/lib/sportdb/formats/structs/team.rb +0 -157
  30. data/lib/sportdb/formats/structs/team_usage.rb +0 -88
  31. data/test/test_clubs.rb +0 -40
  32. data/test/test_csv_reader.rb +0 -31
  33. data/test/test_match.rb +0 -30
  34. data/test/test_match_status_parser.rb +0 -49
  35. data/test/test_name_helper.rb +0 -67
  36. data/test/test_scores.rb +0 -124
  37. data/test/test_season.rb +0 -111
@@ -1,124 +0,0 @@
1
- # encoding: utf-8
2
-
3
- ###
4
- # to run use
5
- # ruby -I ./lib -I ./test test/test_scores.rb
6
-
7
-
8
- require 'helper'
9
-
10
- class TestScores < MiniTest::Test
11
-
12
- def test_de
13
- ScoreFormats.lang = :de
14
- data = [
15
- [ '10:0', [nil,nil, 10,0]],
16
- [ '1:22', [nil,nil, 1,22]],
17
- [ '1-22', [nil,nil, 1,22]],
18
-
19
- ## do not support three digits for now - why? why not?
20
- [ '1:222', []],
21
- [ '111:0', []],
22
- [ '1-222', []],
23
- [ '111-0', []],
24
-
25
- [ '2:2 (1:1, 1:0) n.V. 5:1 i.E.', [1,0, 1,1, 2,2, 5,1]],
26
- [ '2:2 (1:1, 1:0) n.V.', [1,0, 1,1, 2,2]],
27
- [ '2:2 (1:1, ) n.V. 5:1 i.E.', [nil,nil, 1,1, 2,2, 5,1]],
28
- [ '2:2 (1:1, ) n.V.', [nil,nil, 1,1, 2,2]],
29
-
30
- [ '2:2 (1:1) n.V. 5:1 i.E.', [nil,nil, 1,1, 2,2, 5,1]],
31
- [ '2:2 (1:1) n.V.', [nil,nil, 1,1, 2,2]],
32
-
33
- [ '2-2 (1-1, 1-0) n.V. 5-1 i.E.', [1,0, 1,1, 2,2, 5,1]],
34
- [ '2-2 (1-1, 1-0) n.V.', [1,0, 1,1, 2,2]],
35
- [ '2-2 (1-1, ) n.V. 5-1 i.E.', [nil,nil, 1,1, 2,2, 5,1]],
36
- [ '2-2 (1-1, ) n.V.', [nil,nil, 1,1, 2,2]],
37
-
38
- [ '2 : 2 ( 1 : 1 , 1 : 0 ) n.V. 5 : 1 i.E.', [1,0, 1,1, 2,2, 5,1]],
39
- [ '2 : 2 ( 1 : 1 , 1 : 0 ) n.V.', [1,0, 1,1, 2,2]],
40
- [ '2 : 2 ( 1 : 1 , ) n.V. 5 : 1 i.E.', [nil,nil, 1,1, 2,2, 5,1]],
41
- [ '2 : 2 ( 1 : 1 , ) n.V.', [nil,nil, 1,1, 2,2]],
42
-
43
- ## alternate format
44
- ['i.E. 2:4, n.V. 3:3 (1:1, 1:0)', [1,0, 1,1, 3,3, 2,4]],
45
- ['iE 2:4 nV 3:3 (1:1, 1:0)', [1,0, 1,1, 3,3, 2,4]],
46
- ['i.E. 2:4 n.V. 3:3 (1:1, 1:0)', [1,0, 1,1, 3,3, 2,4]],
47
- ['i.E. 2:4, n.V. 3:3 (1:1)', [nil, nil, 1,1, 3,3, 2,4]],
48
- ['i.E. 2:4 n.V. 3:3 (1:1)', [nil, nil, 1,1, 3,3, 2,4]],
49
- ['n.V. 3:2 (2:2, 1:2)', [1,2, 2,2, 3,2]],
50
- ['n.V. 3:2 (2:2)', [nil, nil, 2,2, 3,2]],
51
- ]
52
-
53
- assert_score( data )
54
- end
55
-
56
- def test_en
57
- ScoreFormats.lang = :en
58
-
59
- data = [
60
- [ '1-22', [nil,nil, 1, 22]],
61
- [ '1x22', [nil,nil, 1, 22]],
62
- [ '1X22', [nil,nil, 1,22]],
63
-
64
- ## do not support three digits for now - why? why not?
65
- [ '1-222', []],
66
- [ '111-0', []],
67
- [ '111x0', []],
68
- [ '111X0', []],
69
-
70
- ## do not support colon sep for now in en locale - why? why not?
71
- [ '2:1', []],
72
- [ '2:1 (1:1)', []],
73
-
74
-
75
- [ '2-1 (1-1)', [1,1, 2,1]],
76
- [ '2x1 (1x1)', [1,1, 2,1]],
77
- [ '2X1 (1X1)', [1,1, 2,1]],
78
-
79
- [ '2-1 a.e.t. (1-1, 0-0)', [0,0, 1,1, 2,1]],
80
- [ '2-1aet (1-1, 0-0)', [0,0, 1,1, 2,1]],
81
- [ '2-1 A.E.T. (1-1, 0-0)', [0,0, 1,1, 2,1]],
82
- [ '2-1AET (1-1, 0-0)', [0,0, 1,1, 2,1]],
83
- [ '2-1 a.e.t.', [nil,nil,nil,nil, 2,1]],
84
-
85
- [ '3-4 pen. 2-2 a.e.t. (1-1, 1-1)', [1,1, 1,1, 2,2, 3,4]],
86
- [ '3-4 pen 2-2 a.e.t. (1-1, 1-1)', [1,1, 1,1, 2,2, 3,4]],
87
- [ '3-4 pen 2-2 a.e.t. (1-1, 1-1)', [1,1, 1,1, 2,2, 3,4]],
88
- [ '3-4p 2-2aet (1-1, 1-1)', [1,1, 1,1, 2,2, 3,4]],
89
- [ '3-4PSO 2-2AET (1-1, 1-1)', [1,1, 1,1, 2,2, 3,4]],
90
- [ '3-4 pen. 2-2 a.e.t.', [nil,nil,nil,nil, 2,2, 3,4]],
91
-
92
- [ '4-3 pen. 1-0 a.e.t. (1-0, )', [nil,nil, 1,0, 1,0, 4,3]],
93
- [ '3-4 pen. 2-1 a.e.t. (2-1, )', [nil,nil, 2,1, 2,1, 3,4]],
94
- [ '4-1 a.e.t. (3-1, )', [nil,nil, 3,1, 4,1]],
95
- [ '3-4aet (1-1,)', [nil,nil, 1,1, 3,4]],
96
- [ '3-4 a.e.t. (1-1,)', [nil,nil, 1,1, 3,4]],
97
-
98
- [ '4-3 pen. 1-0 a.e.t. (1-0)', [nil,nil, 1,0, 1,0, 4,3]],
99
- [ '3-4 pen. 2-1 a.e.t. (2-1)', [nil,nil, 2,1, 2,1, 3,4]],
100
- [ '4-1 a.e.t. (3-1)', [nil,nil, 3,1, 4,1]],
101
- [ '3-4aet (1-1)', [nil,nil, 1,1, 3,4]],
102
- [ '3-4 a.e.t. (1-1)', [nil,nil, 1,1, 3,4]],
103
-
104
- [ '3-1 pen (1-1)', [nil,nil, 1,1, nil, nil, 3,1]],
105
-
106
- ## try with more "liberal" spaces
107
- [ '2 - 1 ( 1 - 1 )', [1,1, 2,1]],
108
- [ '2 - 1 a.e.t. ( 1 - 1 , 0 - 0 )', [0,0, 1,1, 2,1]],
109
- [ '4 - 1 a.e.t. ( 3 - 1, )', [nil,nil, 3,1, 4,1]],
110
- ]
111
-
112
- assert_score( data )
113
- end
114
-
115
- private
116
- def assert_score( data )
117
- data.each do |rec|
118
- line = rec[0].dup
119
- exp = rec[1]
120
-
121
- assert_equal exp, ScoreFormats.find!( line ).to_a, "failed >#{rec[0]}< - >#{line}<"
122
- end
123
- end
124
- end # class TestScores
@@ -1,111 +0,0 @@
1
- # encoding: utf-8
2
-
3
- ###
4
- # to run use
5
- # ruby -I ./lib -I ./test test/test_season.rb
6
-
7
-
8
- require 'helper'
9
-
10
- class TestSeason < MiniTest::Test
11
-
12
-
13
- def test_to_path
14
- assert_equal '2010-11', Season.new( '2010-11' ).to_path
15
- assert_equal '2010-11', Season.new( '2010-2011' ).to_path
16
- assert_equal '2010-11', Season.new( '2010/11' ).to_path
17
- assert_equal '2010-11', Season.new( '2010/1' ).to_path
18
- assert_equal '2010-11', Season.new( '2010/2011' ).to_path
19
- assert_equal '2010', Season.new( '2010' ).to_path
20
-
21
- assert_equal '2010-11', Season.new( 2010, 2011 ).to_path
22
- assert_equal '2010', Season.new( 2010 ).to_path
23
-
24
- assert_equal '2010s/2010-11', Season.new( '2010-11' ).to_path( :decade )
25
- assert_equal '2010s/2010-11', Season.new( '2010-2011' ).to_path( :decade )
26
- assert_equal '2010s/2010', Season.new( '2010' ).to_path( :decade )
27
-
28
- assert_equal '1999-00', Season.new( '1999-00' ).to_path
29
- assert_equal '1999-00', Season.new( '1999-2000' ).to_path
30
- assert_equal '1990s/1999-00', Season.new( '1999-00' ).to_path( :decade )
31
- assert_equal '1990s/1999-00', Season.new( '1999-2000' ).to_path( :decade )
32
-
33
- assert_equal '2000s/2010-11', Season.new( '2010-11' ).to_path( :century )
34
- assert_equal '2000s/2010-11', Season.new( '2010-2011' ).to_path( :century )
35
- assert_equal '2000s/2010', Season.new( '2010' ).to_path( :century )
36
-
37
- assert_equal '1900s/1999-00', Season.new( '1999-00' ).to_path( :century )
38
- assert_equal '1900s/1999-00', Season.new( '1999-2000' ).to_path( :century )
39
- end # method test_to_path
40
-
41
-
42
- def test_key
43
- assert_equal '2010/11', Season.new( '2010-11' ).key
44
- assert_equal '2010/11', Season.new( '2010-2011' ).key
45
- assert_equal '2010/11', Season.new( '2010/11' ).key
46
- assert_equal '2010/11', Season.new( '2010/1' ).key
47
- assert_equal '2010/11', Season.new( '2010/2011' ).key
48
- assert_equal '2010', Season.new( '2010' ).key
49
-
50
- assert_equal '1999/00', Season.new( '1999-00' ).key
51
- assert_equal '1999/00', Season.new( '1999-2000' ).key
52
- end # method test_key
53
-
54
- def test_years
55
- season = Season.new( '1999-00' )
56
- assert_equal 1999, season.start_year
57
- assert_equal 2000, season.end_year
58
-
59
- season = Season.new( '2010/1' )
60
- assert_equal 2010, season.start_year
61
- assert_equal 2011, season.end_year
62
- end
63
-
64
- def test_prev
65
- assert_equal '2009/10', Season.new( '2010-11' ).prev.key
66
- assert_equal '2009/10', Season.new( '2010-2011' ).prev.key
67
- assert_equal '2009', Season.new( '2010' ).prev.key
68
-
69
- assert_equal '1998/99', Season.new( '1999-00' ).prev.key
70
- assert_equal '1998/99', Season.new( '1999-2000' ).prev.key
71
- end
72
-
73
- def test_next
74
- assert_equal '2009/10', Season.new( '2008-09' ).next.key
75
- assert_equal '2009/10', Season.new( '2008-2009' ).next.key
76
- assert_equal '2009', Season.new( '2008' ).next.key
77
-
78
- assert_equal '1998/99', Season.new( '1997-98' ).next.key
79
- assert_equal '1998/99', Season.new( '1997-1998' ).next.key
80
- end
81
-
82
-
83
- def test_range
84
- s2010 = Season.new( '2010' )..Season.new( '2019' )
85
- pp s2010.to_a
86
- # => [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019]
87
-
88
- s2010 = Season.new( '2010-11')..Season.new( '2019-20')
89
- pp s2010.to_a
90
- # => [2010/11, 2011/12, 2012/13, 2013/14, 2014/15,
91
- # 2015/16, 2016/17, 2017/18, 2018/19, 2019/20]
92
-
93
- puts s2010 === Season.new( '2015-16' ) # true
94
- puts s2010 === Season.new( '2015' ) # false - why? if using >= <=
95
- puts s2010 === Season.new( '1999-00' ) # false
96
- puts s2010 === Season.new( '2020-21' ) # false
97
-
98
- puts Season.new( '2010-11' ) < Season.new( '2015' ) # true
99
- puts Season.new( '2015' ) < Season.new( '2019-20') # true
100
-
101
- puts Season.new( '2015' ) == Season.new( '2015-16') # false
102
- puts Season.new( '2015' ) < Season.new( '2015-16') # true
103
- puts Season.new( '2015' ) == Season.new( '2015') # true
104
-
105
- puts
106
- puts s2010.include? Season.new( '2015-16' ) # true
107
- puts s2010.include? Season.new( '2015' ) # false
108
- puts s2010.include? Season.new( '1999-00' ) # false
109
- end
110
-
111
- end # class TestSeason