rodders 0.3.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.0
1
+ 1.0.0
@@ -8,13 +8,13 @@ class MutuallyExclusiveCollection
8
8
 
9
9
  # the least likely of the events to occur
10
10
  # @return [FixedOdds] the least likely event
11
- def underdog
11
+ def least_likely
12
12
  @events.first
13
13
  end
14
14
 
15
15
  # the most likely of the events to occur
16
16
  # @return [FixedOdds] the most likely event
17
- def favorite
17
+ def most_likely
18
18
  @events.last
19
19
  end
20
20
 
data/rodders.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "rodders"
8
- s.version = "0.3.0"
8
+ s.version = "1.0.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Nigel Lowry"]
12
- s.date = "2011-12-11"
12
+ s.date = "2012-01-02"
13
13
  s.description = "Converts between fractional, decimal and moneyline odds for betting and gambling. Calculates how much can be won on a given stake."
14
14
  s.email = "nigel-lowry@ultra.eclipse.co.uk"
15
15
  s.extra_rdoc_files = [
@@ -3,8 +3,8 @@ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
3
3
 
4
4
  describe "FixedOdds" do
5
5
 
6
- describe "fractional_odds factory" do
7
- it "should raise error if not fractional odds" do
6
+ describe ".fractional_odds" do
7
+ it "raises error if not fractional odds" do
8
8
  expect {
9
9
  FixedOdds.fractional_odds '5'
10
10
  }.to raise_error(
@@ -13,47 +13,47 @@ describe "FixedOdds" do
13
13
  )
14
14
  end
15
15
 
16
- it "should not modify the input string with 'against'" do
16
+ it "does not change the input string with 'against'" do
17
17
  value = '4/1 against'
18
18
  FixedOdds.fractional_odds(value)
19
19
  value.end_with?('against').should == true
20
20
  end
21
21
 
22
- it "should not modify the input string with 'on'" do
22
+ it "does not modify the input string with 'on'" do
23
23
  value = '4/1 on'
24
24
  FixedOdds.fractional_odds(value)
25
25
  value.end_with?('on').should == true
26
26
  end
27
27
 
28
- it "should treat '4/1 against' the same as '4/1'" do
28
+ it "treats '4/1 against' the same as '4/1'" do
29
29
  FixedOdds.fractional_odds('4/1 against').should == FixedOdds.fractional_odds('4/1')
30
30
  end
31
31
 
32
- it "should treat '4/1 on' the same as '1/4'" do
32
+ it "treats '4/1 on' the same as '1/4'" do
33
33
  FixedOdds.fractional_odds('4/1 on').should == FixedOdds.fractional_odds('1/4')
34
34
  end
35
35
 
36
- it "should treat 'evens' as '1/1'" do
36
+ it "treats 'evens' as '1/1'" do
37
37
  FixedOdds.fractional_odds('evens').should == FixedOdds.fractional_odds('1/1')
38
38
  end
39
39
 
40
- it "should treat 'even money' as '1/1'" do
40
+ it "treats 'even money' as '1/1'" do
41
41
  FixedOdds.fractional_odds('even money').should == FixedOdds.fractional_odds('1/1')
42
42
  end
43
43
 
44
- it "should recognise '4-to-1' as '4/1'" do
44
+ it "recognises '4-to-1' as '4/1'" do
45
45
  FixedOdds.fractional_odds('4-to-1').should == FixedOdds.fractional_odds('4/1')
46
46
  end
47
47
 
48
- it "should recognise '4-to-1 against' as '4/1'" do
48
+ it "recognises '4-to-1 against' as '4/1'" do
49
49
  FixedOdds.fractional_odds('4-to-1 against').should == FixedOdds.fractional_odds('4/1')
50
50
  end
51
51
 
52
- it "should recognise '4-to-1 on' as '1/4'" do
52
+ it "recognises '4-to-1 on' as '1/4'" do
53
53
  FixedOdds.fractional_odds('4-to-1 on').should == FixedOdds.fractional_odds('1/4')
54
54
  end
55
55
 
56
- it "should raise error if numerator has decimal point" do
56
+ it "raises error if numerator has decimal point" do
57
57
  expect {
58
58
  FixedOdds.fractional_odds '1.1/4'
59
59
  }.to raise_error(
@@ -62,7 +62,7 @@ describe "FixedOdds" do
62
62
  )
63
63
  end
64
64
 
65
- it "should raise error if denominator has decimal point" do
65
+ it "raises error if denominator has decimal point" do
66
66
  expect {
67
67
  FixedOdds.fractional_odds '1/4.1'
68
68
  }.to raise_error(
@@ -71,7 +71,7 @@ describe "FixedOdds" do
71
71
  )
72
72
  end
73
73
 
74
- it "should raise error if both numerator and denominator have decimal points" do
74
+ it "raises error if both numerator and denominator have decimal points" do
75
75
  expect {
76
76
  FixedOdds.fractional_odds '1.1/4.1'
77
77
  }.to raise_error(
@@ -81,17 +81,17 @@ describe "FixedOdds" do
81
81
  end
82
82
  end
83
83
 
84
- describe "moneyline_odds factory" do
85
- it "should raise error if not moneyline odds" do
84
+ describe ".moneyline_odds" do
85
+ it "raises error if not moneyline odds" do
86
86
  expect {
87
- FixedOdds.moneyline_odds '1.25'
87
+ FixedOdds.moneyline_odds '1/4'
88
88
  }.to raise_error(
89
89
  RuntimeError,
90
- /could not parse "1.25" as moneyline odds/
90
+ /could not parse "1\/4" as moneyline odds/
91
91
  )
92
92
  end
93
93
 
94
- it "should raise error if moneyline odds has decimal point" do
94
+ it "raises error if moneyline odds has decimal point" do
95
95
  expect {
96
96
  FixedOdds.moneyline_odds '-100.1'
97
97
  }.to raise_error(
@@ -101,32 +101,37 @@ describe "FixedOdds" do
101
101
  end
102
102
 
103
103
  describe "positive figures" do
104
- it "should treat '+400' as meaning winning £400 on a £100 bet" do
104
+ it "treats '+400' as meaning winning £400 on a £100 bet" do
105
105
  plus400 = FixedOdds.moneyline_odds('+400')
106
106
  plus400.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(400, :GBP)
107
107
  end
108
108
 
109
- it "should treat +100 as meaning winning £100 on a £100 bet" do
109
+ it "treats +100 as meaning winning £100 on a £100 bet" do
110
110
  plus100 = FixedOdds.moneyline_odds('+100')
111
111
  plus100.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(100, :GBP)
112
112
  end
113
113
  end
114
114
 
115
115
  describe "negative figures" do
116
- it "should treat '-400' as meaning you need to wager £400 to win £100" do
116
+ it "treats '-400' as meaning you need to wager £400 to win £100" do
117
117
  minus400 = FixedOdds.moneyline_odds('-400')
118
118
  minus400.profit_on_winning_stake(Money.from_fixnum(400, :GBP)).should == Money.from_fixnum(100, :GBP)
119
119
  end
120
120
 
121
- it "should treat '-100' as meaning you need to wager £100 to win £100 (which is identical to '+100')" do
121
+ it "treats '-100' as meaning you need to wager £100 to win £100" do
122
122
  minus100 = FixedOdds.moneyline_odds('-100')
123
123
  minus100.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(100, :GBP)
124
124
  end
125
+
126
+ it "treats '+100' as meaning you need to wager £100 to win £100" do
127
+ plus100 = FixedOdds.moneyline_odds('+100')
128
+ plus100.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(100, :GBP)
129
+ end
125
130
  end
126
131
  end
127
132
 
128
- describe "decimal_odds factory" do
129
- it "should raise error if not decimal odds" do
133
+ describe ".decimal_odds" do
134
+ it "raises error if not decimal odds" do
130
135
  expect {
131
136
  FixedOdds.decimal_odds '-400'
132
137
  }.to raise_error(
@@ -135,25 +140,25 @@ describe "FixedOdds" do
135
140
  )
136
141
  end
137
142
 
138
- it "should treat '2' as meaning you have to wager £100 to win £100" do
143
+ it "treats '2' as meaning you have to wager £100 to win £100" do
139
144
  d2 = FixedOdds.decimal_odds('2')
140
145
  d2.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(100, :GBP)
141
146
  end
142
147
 
143
- it "should treat '5' as meaning you have to wager £100 to win £400" do
148
+ it "treats '5' as meaning you have to wager £100 to win £400" do
144
149
  d5 = FixedOdds.decimal_odds('5')
145
150
  d5.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(400, :GBP)
146
151
  end
147
152
 
148
- it "should treat '1.25' as meaning yo have to wager £400 to win £100" do
153
+ it "treats '1.25' as meaning yo have to wager £400 to win £100" do
149
154
  d1_25 = FixedOdds.decimal_odds('1.25')
150
155
  d1_25.profit_on_winning_stake(Money.from_fixnum(400, :GBP)).should == Money.from_fixnum(100, :GBP)
151
156
  end
152
157
  end
153
158
 
154
- describe "#from_s" do
159
+ describe ".from_s" do
155
160
  describe "bad input" do
156
- it "should reject garbage" do
161
+ it "rejects garbage" do
157
162
  expect {
158
163
  FixedOdds.from_s('garbage')
159
164
  }.to raise_error(
@@ -163,7 +168,7 @@ describe "FixedOdds" do
163
168
  end
164
169
  end
165
170
 
166
- it "should reject an empty string" do
171
+ it "rejects an empty string" do
167
172
  expect {
168
173
  FixedOdds.from_s('')
169
174
  }.to raise_error(
@@ -173,39 +178,39 @@ describe "FixedOdds" do
173
178
  end
174
179
 
175
180
  describe "fractional odds" do
176
- it "should parse '4/1'" do
181
+ it "parses '4/1'" do
177
182
  FixedOdds.from_s('4/1').should == FixedOdds.fractional_odds('4/1')
178
183
  end
179
184
 
180
- it "should parse 'evens'" do
185
+ it "parses 'evens'" do
181
186
  FixedOdds.from_s('evens').should == FixedOdds.fractional_odds('1/1')
182
187
  end
183
188
 
184
- it "should parse 'even money'" do
189
+ it "parses 'even money'" do
185
190
  FixedOdds.from_s('even money').should == FixedOdds.fractional_odds('1/1')
186
191
  end
187
192
 
188
- it "should parse '4/1 against'" do
193
+ it "parses '4/1 against'" do
189
194
  FixedOdds.from_s('4/1 against').should == FixedOdds.fractional_odds('4/1')
190
195
  end
191
196
 
192
- it "should parse '4/1 on'" do
197
+ it "parses '4/1 on'" do
193
198
  FixedOdds.from_s('4/1 on').should == FixedOdds.fractional_odds('1/4')
194
199
  end
195
200
 
196
- it "should parse '4-to-1'" do
201
+ it "parses '4-to-1'" do
197
202
  FixedOdds.from_s('4-to-1').should == FixedOdds.fractional_odds('4/1')
198
203
  end
199
204
 
200
- it "should parse '4-to-1 against'" do
205
+ it "parses '4-to-1 against'" do
201
206
  FixedOdds.from_s('4-to-1 against').should == FixedOdds.fractional_odds('4/1')
202
207
  end
203
208
 
204
- it "should parse '4-to-1 on'" do
209
+ it "parses '4-to-1 on'" do
205
210
  FixedOdds.from_s('4-to-1 on').should == FixedOdds.fractional_odds('1/4')
206
211
  end
207
212
 
208
- it "should raise an error for a zero denominator" do
213
+ it "raises an error for a zero denominator" do
209
214
  expect {
210
215
  FixedOdds.from_s('4/0')
211
216
  }.to raise_error(
@@ -215,17 +220,17 @@ describe "FixedOdds" do
215
220
  end
216
221
 
217
222
  describe "moneyline odds" do
218
- it "should parse positive moneyline odds" do
223
+ it "parses positive moneyline odds" do
219
224
  FixedOdds.from_s('+400').should == FixedOdds.moneyline_odds('+400')
220
225
  end
221
226
 
222
- it "should parse negative moneyline odds" do
227
+ it "parses negative moneyline odds" do
223
228
  FixedOdds.from_s('-400').should == FixedOdds.moneyline_odds('-400')
224
229
  end
225
230
  end
226
231
 
227
232
  describe "decimal odds" do
228
- it "should parse integral odds of '2' as decimal odds, not as fractional odds of '2/1'" do
233
+ it "parses integral odds of '2' as decimal odds, not as fractional odds of '2/1'" do
229
234
  decimal_odds_2 = FixedOdds.from_s('2')
230
235
 
231
236
  decimal_odds_2.should == FixedOdds.decimal_odds('2')
@@ -239,146 +244,146 @@ describe "FixedOdds" do
239
244
  end
240
245
 
241
246
  describe "#==" do
242
- it "should treat similar fractions equally" do
247
+ it "treats equivalent fractions equally" do
243
248
  FixedOdds.fractional_odds('100/30').should == FixedOdds.fractional_odds('10/3')
244
249
  end
245
250
 
246
- it "should recognise '1/1' and '2' are the same" do
251
+ it "recognises '1/1' and '2' are the same" do
247
252
  FixedOdds.fractional_odds('1/1').should == FixedOdds.decimal_odds('2')
248
253
  end
249
254
 
250
- it "should recognise '4/1' and '5' are the same" do
255
+ it "recognises '4/1' and '5' are the same" do
251
256
  FixedOdds.fractional_odds('4/1').should == FixedOdds.decimal_odds('5')
252
257
  end
253
258
 
254
- it "should recognise '1/4' and '1.25' are the same" do
259
+ it "recognises '1/4' and '1.25' are the same" do
255
260
  FixedOdds.fractional_odds('1/4').should == FixedOdds.decimal_odds('1.25')
256
261
  end
257
262
 
258
- it "should recognise '4/1' and '+400' are the same" do
263
+ it "recognises '4/1' and '+400' are the same" do
259
264
  FixedOdds.fractional_odds('4/1').should == FixedOdds.moneyline_odds('+400')
260
265
  end
261
266
 
262
- it "should recognise '1/4' and '-400' are the same" do
267
+ it "recognises '1/4' and '-400' are the same" do
263
268
  FixedOdds.fractional_odds('1/4').should == FixedOdds.moneyline_odds('-400')
264
269
  end
265
270
 
266
- it "should recognise '+100' and '-100' are the same" do
271
+ it "recognises '+100' and '-100' are the same" do
267
272
  FixedOdds.moneyline_odds('+100').should == FixedOdds.moneyline_odds('-100')
268
273
  end
269
274
  end
270
275
 
271
276
  describe "#to_s" do
272
- it "should display the odds in fractional odds format" do
277
+ it "is in fractional odds format" do
273
278
  FixedOdds.from_s('+400').to_s.should == '4/1'
274
279
  end
275
280
  end
276
281
 
277
282
  describe "#to_s_fractional" do
278
- it "should display '4/1' as '4/1'" do
283
+ it "displays '4/1' as '4/1'" do
279
284
  FixedOdds.fractional_odds('4/1').to_s_fractional.should == '4/1'
280
285
  end
281
286
 
282
- it "should print out '100/30' as '10/3' in lowest terms" do
287
+ it "is in the lowest terms" do
283
288
  FixedOdds.fractional_odds('100/30').to_s_fractional.should == '10/3'
284
289
  end
285
290
 
286
- it "should display '+400' as '4/1'" do
291
+ it "is '4/1' for '+400'" do
287
292
  FixedOdds.moneyline_odds('+400').to_s_fractional.should == '4/1'
288
293
  end
289
294
 
290
- it "should display '5' as '4/1'" do
295
+ it "is '4/1' for '5'" do
291
296
  FixedOdds.decimal_odds('5').to_s_fractional.should == '4/1'
292
297
  end
293
298
 
294
- it "should display '+100' as '1/1'" do
299
+ it "is '1/1' for '+100'" do
295
300
  FixedOdds.moneyline_odds('+100').to_s_fractional.should == '1/1'
296
301
  end
297
302
 
298
- it "should display '-100' as '1/1'" do
303
+ it "is '1/1' for '-100'" do
299
304
  FixedOdds.moneyline_odds('-100').to_s_fractional.should == '1/1'
300
305
  end
301
306
  end
302
307
 
303
308
  describe "#to_s_moneyline" do
304
- it "should display '+400' as '+400'" do
309
+ it "is '+400' for '+400'" do
305
310
  FixedOdds.moneyline_odds('+400').to_s_moneyline.should == ('+400')
306
311
  end
307
312
 
308
- it "should display '+100' as '-100' (but this could have equally been '+100')" do
313
+ it "is '-100' for '+100' as '-100'" do
309
314
  FixedOdds.moneyline_odds('+100').to_s_moneyline.should == ('-100')
310
315
  end
311
316
 
312
- it "should display '-100' as '-100' (but this could have equally been '+100')" do
317
+ it "is '-100' as '-100'" do
313
318
  FixedOdds.moneyline_odds('-100').to_s_moneyline.should == ('-100')
314
319
  end
315
320
 
316
- it "should display '4/1' as '+400'" do
321
+ it "is '+400' for '4/1'" do
317
322
  FixedOdds.fractional_odds('4/1').to_s_moneyline.should == '+400'
318
323
  end
319
324
 
320
- it "should display '5' as '+400'" do
325
+ it "is '+400' for '5'" do
321
326
  FixedOdds.decimal_odds('5').to_s_moneyline.should == '+400'
322
327
  end
323
328
 
324
- it "should display '1.25' as '-400'" do
329
+ it "is '-400' for '1.25'" do
325
330
  FixedOdds.decimal_odds('1.25').to_s_moneyline.should == '-400'
326
331
  end
327
332
  end
328
333
 
329
334
  describe "#to_s_decimal" do
330
- it "should display '1.25' as '1.25'" do
335
+ it "is '1.25' for '1.25'" do
331
336
  FixedOdds.decimal_odds('1.25').to_s_decimal.should == '1.25'
332
337
  end
333
338
 
334
- it "should display '1/4' as '1.25'" do
339
+ it "is '1.25' for '1/4'" do
335
340
  FixedOdds.fractional_odds('1/4').to_s_decimal.should == '1.25'
336
341
  end
337
342
 
338
- it "should display '-400' as '1.25'" do
343
+ it "is '1.25' for '-400'" do
339
344
  FixedOdds.moneyline_odds('-400').to_s_decimal.should == '1.25'
340
345
  end
341
346
 
342
- it "should display '+100' as '2'" do
347
+ it "is '2' for '+100'" do
343
348
  FixedOdds.moneyline_odds('+100').to_s_decimal.should == '2'
344
349
  end
345
350
 
346
- it "should display '-100' as '2'" do
351
+ it "is '2' for '-100'" do
347
352
  FixedOdds.moneyline_odds('-100').to_s_decimal.should == '2'
348
353
  end
349
354
  end
350
355
 
351
356
  describe "#profit_on_winning_stake" do
352
- it "should return a profit of £400 on a £100 stake on a 4/1 bet" do
357
+ it "is £400 on a £100 stake on a 4/1 bet" do
353
358
  fourToOne = FixedOdds.fractional_odds '4/1'
354
359
  fourToOne.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(400, :GBP)
355
360
  end
356
361
 
357
- it "should return a profit of £25 on a £100 stake with a 1/4 bet" do
362
+ it "is £25 on a £100 stake with a 1/4 bet" do
358
363
  oneToFour = FixedOdds.fractional_odds '1/4'
359
364
  oneToFour.profit_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(25, :GBP)
360
365
  end
361
366
  end
362
367
 
363
368
  describe "#total_return_on_winning_stake" do
364
- it "should show that the full amount back on a winning 4/1 bet with a £100 stake is £500" do
369
+ it "is £500 on a winning 4/1 bet with a £100 stake" do
365
370
  fourToOne = FixedOdds.fractional_odds '4/1'
366
371
  fourToOne.total_return_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(500, :GBP)
367
372
  end
368
373
 
369
- it "should show that the full amount back on a winning 1/4 bet with a £100 stake is £125" do
374
+ it "is £125 on a winning 1/4 bet with a £100 stake" do
370
375
  oneToFour = FixedOdds.fractional_odds '1/4'
371
376
  oneToFour.total_return_on_winning_stake(Money.from_fixnum(100, :GBP)).should == Money.from_fixnum(125, :GBP)
372
377
  end
373
378
  end
374
379
 
375
380
  describe "#stake_needed_to_win" do
376
- it "should be £1 on a 1/1 to win £1" do
381
+ it "is £1 on a 1/1 to win £1" do
377
382
  oneToOne = FixedOdds.fractional_odds '1/1'
378
383
  oneToOne.stake_needed_to_win(Money.from_fixnum(1, :GBP)).should == Money.from_fixnum(1, :GBP)
379
384
  end
380
385
 
381
- it "should be £100 on 4/1 to win £400" do
386
+ it "is £100 on 4/1 to win £400" do
382
387
  fourToOne = FixedOdds.fractional_odds '4/1'
383
388
  fourToOne.stake_needed_to_win(Money.from_fixnum(400, :GBP)).should == Money.from_fixnum(100, :GBP)
384
389
  end
@@ -10,20 +10,27 @@ describe "MutuallyExclusiveCollection" do
10
10
  @events = MutuallyExclusiveCollection.new [@draw, @bad_team, @good_team]
11
11
  end
12
12
 
13
- it "should return the bad team as the underdog" do
14
- @events.underdog.should == @bad_team
13
+ describe "#least_likely" do
14
+ it "is the least likely event" do
15
+ @events.least_likely.should == @bad_team
16
+ end
15
17
  end
16
18
 
17
- it "should return the good team as the favorite" do
18
- @events.favorite.should == @good_team
19
+ describe "#most_likely" do
20
+ it "is the most likely event" do
21
+ @events.most_likely.should == @good_team
22
+ end
19
23
  end
20
24
 
21
- it "should return the events in descending probability" do
22
- @events.in_descending_probability.should == [@good_team, @draw, @bad_team]
25
+ describe "#in_descending_probability" do
26
+ it "is in descending order of probability" do
27
+ @events.in_descending_probability.should == [@good_team, @draw, @bad_team]
28
+ end
23
29
  end
24
30
 
25
- it "should return the events in ascending probability" do
26
- @events.in_ascending_probability.should == [@bad_team, @draw, @good_team]
31
+ describe "#in_ascending_probability" do
32
+ it "is in ascending order of probability" do
33
+ @events.in_ascending_probability.should == [@bad_team, @draw, @good_team]
34
+ end
27
35
  end
28
-
29
36
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rodders
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-11 00:00:00.000000000Z
12
+ date: 2012-01-02 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: money
16
- requirement: &70347044732340 !ruby/object:Gem::Requirement
16
+ requirement: &70289789377020 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70347044732340
24
+ version_requirements: *70289789377020
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rspec
27
- requirement: &70347044731860 !ruby/object:Gem::Requirement
27
+ requirement: &70289789376500 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 2.3.0
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70347044731860
35
+ version_requirements: *70289789376500
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: yard
38
- requirement: &70347044731320 !ruby/object:Gem::Requirement
38
+ requirement: &70289789353180 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 0.6.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70347044731320
46
+ version_requirements: *70289789353180
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: bundler
49
- requirement: &70347044730800 !ruby/object:Gem::Requirement
49
+ requirement: &70289789352580 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.0.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70347044730800
57
+ version_requirements: *70289789352580
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: jeweler
60
- requirement: &70347044730320 !ruby/object:Gem::Requirement
60
+ requirement: &70289789352000 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.6.4
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70347044730320
68
+ version_requirements: *70289789352000
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rcov
71
- requirement: &70347044729800 !ruby/object:Gem::Requirement
71
+ requirement: &70289789351400 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *70347044729800
79
+ version_requirements: *70289789351400
80
80
  description: Converts between fractional, decimal and moneyline odds for betting and
81
81
  gambling. Calculates how much can be won on a given stake.
82
82
  email: nigel-lowry@ultra.eclipse.co.uk
@@ -116,7 +116,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
116
116
  version: '0'
117
117
  segments:
118
118
  - 0
119
- hash: 2781179272829975536
119
+ hash: 3132446332163279190
120
120
  required_rubygems_version: !ruby/object:Gem::Requirement
121
121
  none: false
122
122
  requirements: