icu_ratings 1.8.2 → 1.8.3
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 +7 -0
- data/README.rdoc +1 -1
- data/lib/icu_ratings/version.rb +1 -1
- data/spec/player_spec.rb +84 -84
- data/spec/result_spec.rb +27 -27
- data/spec/tournament_spec.rb +304 -304
- data/spec/util_spec.rb +19 -19
- metadata +26 -42
data/spec/util_spec.rb
CHANGED
@@ -5,60 +5,60 @@ module ICU
|
|
5
5
|
describe Date do
|
6
6
|
context "#parsedate!" do
|
7
7
|
it "should return instances of class Date" do
|
8
|
-
Date.parsedate!('2001-01-01').
|
8
|
+
expect(Date.parsedate!('2001-01-01')).to be_a(::Date)
|
9
9
|
end
|
10
10
|
|
11
11
|
it "should parse standard dates" do
|
12
|
-
Date.parsedate!('2001-01-01').to_s.
|
13
|
-
Date.parsedate!('1955-11-09').to_s.
|
12
|
+
expect(Date.parsedate!('2001-01-01').to_s).to eq('2001-01-01')
|
13
|
+
expect(Date.parsedate!('1955-11-09').to_s).to eq('1955-11-09')
|
14
14
|
end
|
15
15
|
|
16
16
|
it "should handle US format" do
|
17
|
-
Date.parsedate!('03/30/2009').to_s.
|
17
|
+
expect(Date.parsedate!('03/30/2009').to_s).to eq('2009-03-30')
|
18
18
|
end
|
19
19
|
|
20
20
|
it "should handle European format" do
|
21
|
-
Date.parsedate!('30/03/2009').to_s.
|
21
|
+
expect(Date.parsedate!('30/03/2009').to_s).to eq('2009-03-30')
|
22
22
|
end
|
23
23
|
|
24
24
|
it "should prefer European format" do
|
25
|
-
Date.parsedate!('02/03/2009').to_s.
|
25
|
+
expect(Date.parsedate!('02/03/2009').to_s).to eq('2009-03-02')
|
26
26
|
end
|
27
27
|
|
28
28
|
it "should handle US style when there's no alternative" do
|
29
|
-
Date.parsedate!('02/23/2009').to_s.
|
29
|
+
expect(Date.parsedate!('02/23/2009').to_s).to eq('2009-02-23')
|
30
30
|
end
|
31
31
|
|
32
32
|
it "should handle single digits" do
|
33
|
-
Date.parsedate!('9/8/2006').to_s.
|
33
|
+
expect(Date.parsedate!('9/8/2006').to_s).to eq('2006-08-09')
|
34
34
|
end
|
35
35
|
|
36
36
|
it "should handle names of months" do
|
37
|
-
Date.parsedate!('9th Nov 1955').to_s.
|
38
|
-
Date.parsedate!('16th June 1986').to_s.
|
37
|
+
expect(Date.parsedate!('9th Nov 1955').to_s).to eq('1955-11-09')
|
38
|
+
expect(Date.parsedate!('16th June 1986').to_s).to eq('1986-06-16')
|
39
39
|
end
|
40
40
|
|
41
41
|
it "should raise exception on error" do
|
42
|
-
|
42
|
+
expect { Date.parsedate!('2010-13-32') }.to raise_error(/invalid date/)
|
43
43
|
end
|
44
44
|
|
45
45
|
it "should accept Date objects as well as strings" do
|
46
|
-
Date.parsedate!(::Date.parse('2013-07-01')).
|
46
|
+
expect(Date.parsedate!(::Date.parse('2013-07-01'))).to eq(::Date.parse('2013-07-01'))
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
50
50
|
context "#age" do
|
51
51
|
it "should return age in years" do
|
52
|
-
Date.age('2001-01-01', '2001-01-01').
|
53
|
-
Date.age('2001-01-01', '2002-01-01').
|
54
|
-
Date.age('2001-01-01', '2001-01-02').
|
55
|
-
Date.age('2001-01-01', '2001-02-01').
|
56
|
-
Date.age('1955-11-09', '2010-01-17').
|
57
|
-
Date.age('2001-01-01', '2000-01-01').
|
52
|
+
expect(Date.age('2001-01-01', '2001-01-01')).to eq(0.0)
|
53
|
+
expect(Date.age('2001-01-01', '2002-01-01')).to eq(1.0)
|
54
|
+
expect(Date.age('2001-01-01', '2001-01-02')).to be_within(0.01).of(1/365)
|
55
|
+
expect(Date.age('2001-01-01', '2001-02-01')).to be_within(0.01).of(1/12.0)
|
56
|
+
expect(Date.age('1955-11-09', '2010-01-17')).to be_within(0.01).of(54.2)
|
57
|
+
expect(Date.age('2001-01-01', '2000-01-01')).to eq(-1.0)
|
58
58
|
end
|
59
59
|
|
60
60
|
it "should default second date to today" do
|
61
|
-
Date.age(::Date.today).
|
61
|
+
expect(Date.age(::Date.today)).to eq(0.0)
|
62
62
|
end
|
63
63
|
end
|
64
64
|
end
|
metadata
CHANGED
@@ -1,80 +1,71 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: icu_ratings
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
5
|
-
prerelease:
|
4
|
+
version: 1.8.3
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Mark Orr
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2015-03-01 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: bundler
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - "~>"
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version: '
|
19
|
+
version: '1.8'
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - "~>"
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version: '
|
26
|
+
version: '1.8'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - "~>"
|
36
32
|
- !ruby/object:Gem::Version
|
37
|
-
version: '
|
33
|
+
version: '10.4'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - "~>"
|
44
39
|
- !ruby/object:Gem::Version
|
45
|
-
version: '
|
40
|
+
version: '10.4'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rspec
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
47
|
+
version: '3.2'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - "~>"
|
60
53
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
54
|
+
version: '3.2'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: rdoc
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- -
|
59
|
+
- - "~>"
|
68
60
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
61
|
+
version: '4.2'
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- -
|
66
|
+
- - "~>"
|
76
67
|
- !ruby/object:Gem::Version
|
77
|
-
version: '
|
68
|
+
version: '4.2'
|
78
69
|
description: Build an object that represents a chess tournament then get it to calculate
|
79
70
|
ratings of all the players.
|
80
71
|
email: mark.j.l.orr@googlemail.com
|
@@ -84,49 +75,42 @@ extra_rdoc_files:
|
|
84
75
|
- LICENCE
|
85
76
|
- README.rdoc
|
86
77
|
files:
|
78
|
+
- LICENCE
|
79
|
+
- README.rdoc
|
80
|
+
- lib/icu_ratings.rb
|
87
81
|
- lib/icu_ratings/player.rb
|
88
82
|
- lib/icu_ratings/result.rb
|
89
83
|
- lib/icu_ratings/tournament.rb
|
90
84
|
- lib/icu_ratings/util.rb
|
91
85
|
- lib/icu_ratings/version.rb
|
92
|
-
- lib/icu_ratings.rb
|
93
86
|
- spec/player_spec.rb
|
94
87
|
- spec/result_spec.rb
|
95
88
|
- spec/spec_helper.rb
|
96
89
|
- spec/tournament_spec.rb
|
97
90
|
- spec/util_spec.rb
|
98
|
-
- LICENCE
|
99
|
-
- README.rdoc
|
100
91
|
homepage: http://github.com/sanichi/icu_ratings
|
101
92
|
licenses:
|
102
93
|
- MIT
|
94
|
+
metadata: {}
|
103
95
|
post_install_message:
|
104
96
|
rdoc_options: []
|
105
97
|
require_paths:
|
106
98
|
- lib
|
107
99
|
required_ruby_version: !ruby/object:Gem::Requirement
|
108
|
-
none: false
|
109
100
|
requirements:
|
110
|
-
- -
|
101
|
+
- - ">="
|
111
102
|
- !ruby/object:Gem::Version
|
112
103
|
version: '0'
|
113
|
-
segments:
|
114
|
-
- 0
|
115
|
-
hash: 3913753634550486012
|
116
104
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
117
|
-
none: false
|
118
105
|
requirements:
|
119
|
-
- -
|
106
|
+
- - ">="
|
120
107
|
- !ruby/object:Gem::Version
|
121
108
|
version: '0'
|
122
|
-
segments:
|
123
|
-
- 0
|
124
|
-
hash: 3913753634550486012
|
125
109
|
requirements: []
|
126
110
|
rubyforge_project: icu_ratings
|
127
|
-
rubygems_version:
|
111
|
+
rubygems_version: 2.4.5
|
128
112
|
signing_key:
|
129
|
-
specification_version:
|
113
|
+
specification_version: 4
|
130
114
|
summary: For rating chess tournaments.
|
131
115
|
test_files:
|
132
116
|
- spec/player_spec.rb
|