icu_tournament 1.5.3 → 1.5.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -393,8 +393,8 @@ module ICU
393
393
  rating = @data[44, 4].to_i
394
394
  opt[arg[:fide] ? :fide_rating : :rating] = rating if rating > 0 && rating < 4000
395
395
 
396
- # Obviously wrong DOBs should just be ignored.
397
- opt[:dob] = '' unless opt[:dob].match(/\d/);
396
+ # Strings that can't possibly be DOBs should just be ignored.
397
+ opt[:dob] = '' unless opt[:dob].match(/^(\d{4}.\d\d.\d\d|\d\d.\d\d.\d{4})$/);
398
398
 
399
399
  # IDs can be determined to be FIDE or ICU on the basis of their size.
400
400
  id = @data[53, 11].to_i
@@ -2,6 +2,6 @@
2
2
 
3
3
  module ICU
4
4
  class Tournament
5
- VERSION = "1.5.3"
5
+ VERSION = "1.5.4"
6
6
  end
7
7
  end
@@ -459,7 +459,7 @@ KRAUSE
459
459
  092 Swiss
460
460
  102 Michael Germaine, mlgermaine@eircom.net
461
461
  122 120 minutes per player per game
462
- 001 1 Griffiths,Ryan Rhys IRL 2502054 4.0 1 0000 - = 3 b 1 8 w 1 5 b = 7 w 1
462
+ 001 1 Griffiths,Ryan Rhys IRL 2502054 1993-12-20 4.0 1 0000 - = 3 b 1 8 w 1 5 b = 7 w 1
463
463
  001 2 Hotak,Marian SVK 14909677 3.5 2 3 w 0 6 b = 11 w 1 8 b 1 5 w 1
464
464
  001 3 Duffy,Seamus IRL 3.0 3 2 b 1 1 w 0 4 w 1 6 b = 8 w =
465
465
  001 4 Cafolla,Peter IRL 2500884 3.0 4 7 b 1 5 w = 3 b 0 11 b + 6 w =
@@ -476,7 +476,7 @@ KRAUSE
476
476
  end
477
477
 
478
478
  it "the unaltered example is valid Krause" do
479
- t = @p.parse(@k).should be_instance_of(ICU::Tournament)
479
+ lambda { @p.parse!(@k) }.should_not raise_error
480
480
  end
481
481
 
482
482
  it "removing the line on which the tournament name is specified should cause an error" do
@@ -530,9 +530,21 @@ KRAUSE
530
530
  lambda { @p.parse!(@k) }.should raise_error(/total/)
531
531
  end
532
532
 
533
- it "invalid federations should cause an error" do
533
+ it "invalid federations should cause an error unless an option is used" do
534
534
  @k.sub!('SCO', 'XYZ')
535
535
  lambda { @p.parse!(@k) }.should raise_error(/federation/)
536
+ lambda { @t = @p.parse!(@k, :fed => "skip") }.should_not raise_error
537
+ @t.player(5).fed.should be_nil
538
+ @t.player(1).fed.should == "IRL"
539
+ lambda { @t = @p.parse!(@k, :fed => "ignore") }.should_not raise_error
540
+ @t.player(5).fed.should be_nil
541
+ @t.player(1).fed.should be_nil
542
+ end
543
+
544
+ it "an invalid DOB is silently ignored" do
545
+ @k.sub!(/1993-12-20/, '1993 ')
546
+ lambda { @t = @p.parse!(@k) }.should_not raise_error
547
+ @t.player(1).dob.should be_nil
536
548
  end
537
549
 
538
550
  it "removing any player that somebody else has played should cause an error" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: icu_tournament
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.3
4
+ version: 1.5.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-08-06 00:00:00.000000000 +01:00
13
- default_executable:
12
+ date: 2011-10-01 00:00:00.000000000Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: dbf
17
- requirement: &2152460540 !ruby/object:Gem::Requirement
16
+ requirement: &70190448724460 !ruby/object:Gem::Requirement
18
17
  none: false
19
18
  requirements:
20
19
  - - ~>
@@ -22,10 +21,10 @@ dependencies:
22
21
  version: 1.2.5
23
22
  type: :runtime
24
23
  prerelease: false
25
- version_requirements: *2152460540
24
+ version_requirements: *70190448724460
26
25
  - !ruby/object:Gem::Dependency
27
26
  name: rubyzip
28
- requirement: &2152459800 !ruby/object:Gem::Requirement
27
+ requirement: &70190448703880 !ruby/object:Gem::Requirement
29
28
  none: false
30
29
  requirements:
31
30
  - - ~>
@@ -33,10 +32,10 @@ dependencies:
33
32
  version: 0.9.4
34
33
  type: :runtime
35
34
  prerelease: false
36
- version_requirements: *2152459800
35
+ version_requirements: *70190448703880
37
36
  - !ruby/object:Gem::Dependency
38
37
  name: icu_name
39
- requirement: &2152458560 !ruby/object:Gem::Requirement
38
+ requirement: &70190448702960 !ruby/object:Gem::Requirement
40
39
  none: false
41
40
  requirements:
42
41
  - - ! '>='
@@ -44,10 +43,10 @@ dependencies:
44
43
  version: 1.0.0
45
44
  type: :runtime
46
45
  prerelease: false
47
- version_requirements: *2152458560
46
+ version_requirements: *70190448702960
48
47
  - !ruby/object:Gem::Dependency
49
48
  name: bundler
50
- requirement: &2152455380 !ruby/object:Gem::Requirement
49
+ requirement: &70190448702120 !ruby/object:Gem::Requirement
51
50
  none: false
52
51
  requirements:
53
52
  - - ! '>='
@@ -55,10 +54,10 @@ dependencies:
55
54
  version: '0'
56
55
  type: :development
57
56
  prerelease: false
58
- version_requirements: *2152455380
57
+ version_requirements: *70190448702120
59
58
  - !ruby/object:Gem::Dependency
60
59
  name: rake
61
- requirement: &2152454800 !ruby/object:Gem::Requirement
60
+ requirement: &70190448701400 !ruby/object:Gem::Requirement
62
61
  none: false
63
62
  requirements:
64
63
  - - ! '>='
@@ -66,10 +65,10 @@ dependencies:
66
65
  version: '0'
67
66
  type: :development
68
67
  prerelease: false
69
- version_requirements: *2152454800
68
+ version_requirements: *70190448701400
70
69
  - !ruby/object:Gem::Dependency
71
70
  name: rspec
72
- requirement: &2152454140 !ruby/object:Gem::Requirement
71
+ requirement: &70190448700540 !ruby/object:Gem::Requirement
73
72
  none: false
74
73
  requirements:
75
74
  - - ! '>='
@@ -77,10 +76,10 @@ dependencies:
77
76
  version: '0'
78
77
  type: :development
79
78
  prerelease: false
80
- version_requirements: *2152454140
79
+ version_requirements: *70190448700540
81
80
  - !ruby/object:Gem::Dependency
82
81
  name: guard-rspec
83
- requirement: &2152453040 !ruby/object:Gem::Requirement
82
+ requirement: &70190448699360 !ruby/object:Gem::Requirement
84
83
  none: false
85
84
  requirements:
86
85
  - - ! '>='
@@ -88,10 +87,10 @@ dependencies:
88
87
  version: '0'
89
88
  type: :development
90
89
  prerelease: false
91
- version_requirements: *2152453040
90
+ version_requirements: *70190448699360
92
91
  - !ruby/object:Gem::Dependency
93
92
  name: rdoc
94
- requirement: &2152452420 !ruby/object:Gem::Requirement
93
+ requirement: &70190448698680 !ruby/object:Gem::Requirement
95
94
  none: false
96
95
  requirements:
97
96
  - - ! '>='
@@ -99,10 +98,10 @@ dependencies:
99
98
  version: '0'
100
99
  type: :development
101
100
  prerelease: false
102
- version_requirements: *2152452420
101
+ version_requirements: *70190448698680
103
102
  - !ruby/object:Gem::Dependency
104
103
  name: rb-fsevent
105
- requirement: &2152451400 !ruby/object:Gem::Requirement
104
+ requirement: &70190448697860 !ruby/object:Gem::Requirement
106
105
  none: false
107
106
  requirements:
108
107
  - - ! '>='
@@ -110,10 +109,10 @@ dependencies:
110
109
  version: '0'
111
110
  type: :development
112
111
  prerelease: false
113
- version_requirements: *2152451400
112
+ version_requirements: *70190448697860
114
113
  - !ruby/object:Gem::Dependency
115
114
  name: growl
116
- requirement: &2152450300 !ruby/object:Gem::Requirement
115
+ requirement: &70190448696860 !ruby/object:Gem::Requirement
117
116
  none: false
118
117
  requirements:
119
118
  - - ! '>='
@@ -121,7 +120,7 @@ dependencies:
121
120
  version: '0'
122
121
  type: :development
123
122
  prerelease: false
124
- version_requirements: *2152450300
123
+ version_requirements: *70190448696860
125
124
  description: Convert files of chess tournament data in different formats to ruby classes
126
125
  and vice-versa.
127
126
  email: mark.j.l.orr@googlemail.com
@@ -158,7 +157,6 @@ files:
158
157
  - spec/util_spec.rb
159
158
  - LICENCE
160
159
  - README.rdoc
161
- has_rdoc: true
162
160
  homepage: http://github.com/sanichi/icu_tournament
163
161
  licenses: []
164
162
  post_install_message:
@@ -173,7 +171,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
173
171
  version: '0'
174
172
  segments:
175
173
  - 0
176
- hash: -3124934539921807363
174
+ hash: 1118276685210611974
177
175
  required_rubygems_version: !ruby/object:Gem::Requirement
178
176
  none: false
179
177
  requirements:
@@ -182,10 +180,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
182
180
  version: '0'
183
181
  segments:
184
182
  - 0
185
- hash: -3124934539921807363
183
+ hash: 1118276685210611974
186
184
  requirements: []
187
185
  rubyforge_project: icu_tournament
188
- rubygems_version: 1.6.2
186
+ rubygems_version: 1.8.6
189
187
  signing_key:
190
188
  specification_version: 3
191
189
  summary: For reading and writing files of chess tournament data.