betfair 0.0.17 → 0.0.18

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.
data/lib/betfair/api.rb CHANGED
@@ -55,9 +55,9 @@ module Betfair
55
55
 
56
56
 
57
57
  def place_multiple_bets(session_token, exchange_id, bets)
58
- bf_bet = []
58
+ bf_bets = []
59
59
  bets.each do |bet|
60
- bf_bet << {
60
+ bf_bets << {
61
61
  :marketId => bet[:market_id],
62
62
  :selectionId => bet[:runner_id],
63
63
  :betType => bet[:bet_type],
@@ -74,12 +74,11 @@ module Betfair
74
74
  session_request( session_token,
75
75
  :placeBets,
76
76
  :place_bets_response,
77
- :bets => { 'PlaceBets' => bf_bet } )
77
+ :bets => { 'PlaceBets' => bf_bets } )
78
78
 
79
79
  return response.maybe_result( :bet_results, :place_bets_result )
80
80
  end
81
-
82
-
81
+
83
82
  def cancel_bet(session_token, exchange_id, bet_id)
84
83
  bf_bet = { :betId => bet_id }
85
84
 
@@ -94,19 +93,35 @@ module Betfair
94
93
 
95
94
 
96
95
  def cancel_multiple_bets(session_token, exchange_id, bets)
97
- bf_bet = []
98
- bets.each { |bet_id| bf_bet << { :betId => bet_id } }
96
+ bf_bets = []
97
+ bets.each { |bet_id| bf_bets << { :betId => bet_id } }
99
98
 
100
99
  response = exchange(exchange_id).
101
100
  session_request( session_token,
102
101
  :cancelBets,
103
102
  :cancel_bets_response,
104
- :bets => { 'CancelBets' => bf_bet } ) # "CancelBets" has to be a string, not a symbol!
103
+ :bets => { 'CancelBets' => bf_bets } ) # "CancelBets" has to be a string, not a symbol!
105
104
 
106
105
  return response.maybe_result( :bet_results, :cancel_bets_result )
107
106
  end
108
107
 
108
+ def cancel_bet_by_market(session_token, exchange_id, market_id)
109
+
110
+ end
111
+
112
+ def cancel_bets_by_market(session_token, exchange_id, market_ids)
113
+
114
+ end
115
+
116
+ def update_bet(session_token, exchange_id, market_id)
117
+
118
+ end
109
119
 
120
+ def update_bets(session_token, exchange_id, market_ids)
121
+
122
+ end
123
+
124
+
110
125
  def get_market(session_token, exchange_id, market_id, locale = nil)
111
126
  response = exchange(exchange_id).
112
127
  session_request( session_token,
@@ -199,6 +214,14 @@ module Betfair
199
214
 
200
215
  return response.maybe_result( :header, :session_token )
201
216
  end
217
+
218
+ def keep_alive
219
+
220
+ end
221
+
222
+ def logout
223
+
224
+ end
202
225
 
203
226
  #
204
227
  ## END OF API METHODS
@@ -412,17 +435,18 @@ module Betfair
412
435
  # parsing first the auxiliary price info
413
436
  aux = pieces.first
414
437
  aux.gsub! "\0", '\:'
415
- aux_hash = { :market_id => aux.split('~')[0].to_i,
416
- :currency => aux.split('~')[1].to_s,
417
- :market_status => aux.split('~')[2].to_s,
418
- :in_play_delay => aux.split('~')[3].to_i,
419
- :number_of_winners => aux.split('~')[4].to_i,
420
- :market_information => aux.split('~')[5].to_s,
421
- :discount_allowed => aux.split('~')[6] == 'true' ? true : false,
422
- :market_base_rate => aux.split('~')[7].to_s,
423
- :refresh_time_in_milliseconds => aux.split('~')[8].to_i,
424
- :removed_runners => aux.split('~')[9].to_s,
425
- :bsp_market => aux.split('~')[10] == 'Y' ? true : false
438
+ aux_hash = {
439
+ :market_id => aux.split('~')[0].to_i,
440
+ :currency => aux.split('~')[1].to_s,
441
+ :market_status => aux.split('~')[2].to_s,
442
+ :in_play_delay => aux.split('~')[3].to_i,
443
+ :number_of_winners => aux.split('~')[4].to_i,
444
+ :market_information => aux.split('~')[5].to_s,
445
+ :discount_allowed => aux.split('~')[6] == 'true' ? true : false,
446
+ :market_base_rate => aux.split('~')[7].to_s,
447
+ :refresh_time_in_milliseconds => aux.split('~')[8].to_i,
448
+ :removed_runners => aux.split('~')[9].to_s,
449
+ :bsp_market => aux.split('~')[10] == 'Y' ? true : false
426
450
  }
427
451
 
428
452
  # now iterating over the prices excluding the first piece that we already parsed above
@@ -498,6 +522,21 @@ module Betfair
498
522
  return price
499
523
  end
500
524
 
525
+ # Pass in the string returned from the get_all_markets() API call and get back a proper hash
526
+ def split_markets_string(markets)
527
+ foo = []
528
+ if markets.is_a?(String)
529
+ markets.split(':').each do |market|
530
+ bar = market.split('~')
531
+ doh = { market_id: bar[0].to_i, market_name: bar[1], market_type: bar[2], market_status: bar[3], event_date: bar[4].to_i, menu_path: bar[5], event_heirachy: bar[6],
532
+ bet_delay: bar[7].to_i, exchange_id: bar[8].to_i, iso3_country_code: bar[9], last_refresh: bar[10].to_i, number_of_runners: bar[11].to_i, number_of_winners: bar[12].to_i,
533
+ total_amount_matched: bar[13].to_f, bsp_market: bar[14], turning_in_play: bar[15] }
534
+ foo << doh if !doh[:market_name].nil?
535
+ end
536
+ end
537
+ return foo
538
+ end
539
+
501
540
  end
502
-
541
+
503
542
  end
@@ -1,3 +1,3 @@
1
1
  module Betfair
2
- VERSION = "0.0.17"
2
+ VERSION = "0.0.18"
3
3
  end
@@ -11,6 +11,15 @@ module Betfair
11
11
  @helpers = Betfair::Helpers.new
12
12
  end
13
13
 
14
+ describe "Create a hash from the get_all_markets API call" do
15
+ it "pulls the relevant stuff out of get_all_markets and puts it in a hash" do
16
+ savon.expects(:get_all_markets).returns(:success)
17
+ markets = @bf.get_all_markets(@session_token, 2)
18
+ markets = @helpers.split_markets_string(markets)
19
+ markets.should_not be_nil
20
+ end
21
+ end
22
+
14
23
  describe "Create a hash for the market details" do
15
24
  it "pulls the relevant stuff out of market details and puts it in a hash" do
16
25
  savon.expects(:get_market).returns(:success)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: betfair
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.17
4
+ version: 0.0.18
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: 2012-03-23 00:00:00.000000000Z
12
+ date: 2012-03-27 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: savon
16
- requirement: &70181452429080 !ruby/object:Gem::Requirement
16
+ requirement: &70316480491140 !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: *70181452429080
24
+ version_requirements: *70316480491140
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rake
27
- requirement: &70181452427520 !ruby/object:Gem::Requirement
27
+ requirement: &70316480490700 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70181452427520
35
+ version_requirements: *70316480490700
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rspec
38
- requirement: &70181452426460 !ruby/object:Gem::Requirement
38
+ requirement: &70316480489520 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70181452426460
46
+ version_requirements: *70316480489520
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: savon_spec
49
- requirement: &70181452425740 !ruby/object:Gem::Requirement
49
+ requirement: &70316480488940 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70181452425740
57
+ version_requirements: *70316480488940
58
58
  description: Gem for accessing the Betfair API.
59
59
  email:
60
60
  - lukeb@lukebyrne.com
@@ -105,7 +105,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
105
105
  version: '0'
106
106
  segments:
107
107
  - 0
108
- hash: -4185997546867498005
108
+ hash: -3087323840172885691
109
109
  required_rubygems_version: !ruby/object:Gem::Requirement
110
110
  none: false
111
111
  requirements:
@@ -114,7 +114,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
114
114
  version: '0'
115
115
  segments:
116
116
  - 0
117
- hash: -4185997546867498005
117
+ hash: -3087323840172885691
118
118
  requirements: []
119
119
  rubyforge_project: betfair
120
120
  rubygems_version: 1.8.10