bravo 0.4.0 → 1.0.0.alpha

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.
@@ -1,106 +1,124 @@
1
- require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
1
+ # encoding: utf-8
2
+ require 'spec_helper'
2
3
 
3
4
  describe "Bill" do
4
- it "should setup a header hash" do
5
- @header = Bravo::Bill.header(0)
6
- @header.size.should == 3
7
- ["CantReg", "CbteTipo", "PtoVta"].each do |key|
8
- @header.has_key?(key).should == true
5
+ let(:bill) { @bill = Bravo::Bill.new }
6
+
7
+ describe ".header" do
8
+ it "sets up the header hash" do
9
+ @header = Bravo::Bill.header(0)
10
+ @header.size.should == 3
11
+ ["CantReg", "CbteTipo", "PtoVta"].each do |key|
12
+ @header.has_key?(key).should == true
13
+ end
9
14
  end
10
15
  end
11
16
 
12
- describe "instance" do
13
- before(:each) {@bill = Bravo::Bill.new}
17
+ describe ".initialize" do
18
+ it "applies Bravo's defaults" do
19
+ bill.client.class.name.should == "Savon::Client"
14
20
 
15
- it "should initialize according to Bravo defaults" do
16
- @bill.client.class.name.should == "Savon::Client"
17
21
  ["Token", "Sign", "Cuit"].each do |key|
18
- @bill.body["Auth"][key].should_not == nil
22
+ bill.body["Auth"][key].should_not == nil
19
23
  end
20
- @bill.documento.should == Bravo.default_documento
21
- @bill.moneda.should == Bravo.default_moneda
22
- end
23
24
 
24
- it "should calculate it's cbte_tipo for Responsable Inscripto" do
25
- @bill.iva_cond = :responsable_inscripto
26
- @bill.cbte_type.should == "01"
25
+ bill.documento.should == Bravo.default_documento
26
+ bill.moneda.should == Bravo.default_moneda
27
27
  end
28
+ end
28
29
 
29
- it "should calculate it's cbte_tipo for Consumidor Final" do
30
- @bill.iva_cond = :consumidor_final
31
- @bill.cbte_type.should == "06"
32
- end
30
+ describe "#cbte_type" do
31
+ before { bill.invoice_type = :invoice }
32
+ it "returns the bill type for Responsable Inscripto" do
33
+ bill.iva_cond = :responsable_inscripto
33
34
 
34
- it "raise error on nil iva cond" do
35
- @bill.iva_cond = 12
36
- expect{@bill.cbte_type}.to raise_error(Bravo::NullOrInvalidAttribute)
35
+ bill.cbte_type.should == "01"
37
36
  end
38
37
 
39
- it "should fetch non Peso currency's exchange rate" do
40
- @bill.moneda = :dolar
41
- @bill.exchange_rate.to_i.should be > 0
38
+ it "returns the bill type for Consumidor Final" do
39
+ bill.iva_cond = :consumidor_final
40
+
41
+ bill.cbte_type.should == "06"
42
42
  end
43
43
 
44
- it "should return 1 for Peso currency" do
45
- @bill.moneda = :peso
46
- @bill.exchange_rate.should == 1
44
+ it "raises error on nil or invalid iva cond" do
45
+ bill.iva_cond = 12
46
+
47
+ expect { bill.cbte_type }.to raise_error(Bravo::NullOrInvalidAttribute)
47
48
  end
49
+ end
48
50
 
49
- it "should calculate the IVA array values" do
50
- @bill.iva_cond = :responsable_inscripto
51
- @bill.moneda = :peso
52
- @bill.net = 100.89
53
- @bill.aliciva_id = 2
51
+ describe "#iva_sum and #total" do
52
+ it "calculate the IVA array values" do
53
+ bill.iva_cond = :responsable_inscripto
54
+ bill.moneda = :peso
55
+ bill.net = 100.89
56
+ bill.aliciva_id = 2
54
57
 
55
- @bill.iva_sum.should be_within(0.05).of(21.18)
56
- @bill.total.should be_within(0.05).of(122.07)
58
+ bill.iva_sum.should be_within(0.05).of(21.18)
59
+ bill.total.should be_within(0.05).of(122.07)
57
60
  end
61
+ end
58
62
 
59
- it "should use give due date an service dates, or todays date" do
60
- @bill.net = 100
61
- @bill.aliciva_id = 2
62
- @bill.doc_num = "30710151543"
63
- @bill.iva_cond = :responsable_inscripto
64
- @bill.concepto = "Servicios"
63
+ describe "#setup_bill" do
64
+ before do
65
+ bill.net = 100
66
+ bill.aliciva_id = 2
67
+ bill.doc_num = "30710151543"
68
+ bill.iva_cond = :responsable_inscripto
69
+ bill.concepto = "Servicios"
70
+ end
65
71
 
66
- @bill.setup_bill
72
+ it "uses today dates when due and service dates are ommitted" do
73
+ bill.setup_bill
67
74
 
68
- detail = @bill.body["FeCAEReq"]["FeDetReq"]["FECAEDetRequest"]
75
+ detail = bill.body["FeCAEReq"]["FeDetReq"]["FECAEDetRequest"]
69
76
 
70
77
  detail["FchServDesde"].should == Time.new.strftime('%Y%m%d')
71
78
  detail["FchServHasta"].should == Time.new.strftime('%Y%m%d')
72
79
  detail["FchVtoPago"].should == Time.new.strftime('%Y%m%d')
80
+ end
73
81
 
74
- @bill.due_date = Date.new(2011, 12, 10).strftime('%Y%m%d')
75
- @bill.fch_serv_desde = Date.new(2011, 11, 01).strftime('%Y%m%d')
76
- @bill.fch_serv_hasta = Date.new(2011, 11, 30).strftime('%Y%m%d')
82
+ it "uses given due and service dates" do
83
+ bill.due_date = Date.new(2011, 12, 10).strftime('%Y%m%d')
84
+ bill.fch_serv_desde = Date.new(2011, 11, 01).strftime('%Y%m%d')
85
+ bill.fch_serv_hasta = Date.new(2011, 11, 30).strftime('%Y%m%d')
77
86
 
78
- @bill.setup_bill
87
+ bill.setup_bill
79
88
 
80
- detail = @bill.body["FeCAEReq"]["FeDetReq"]["FECAEDetRequest"]
89
+ detail = bill.body["FeCAEReq"]["FeDetReq"]["FECAEDetRequest"]
81
90
 
82
91
  detail["FchServDesde"].should == "20111101"
83
92
  detail["FchServHasta"].should == "20111130"
84
93
  detail["FchVtoPago"].should == "20111210"
85
94
  end
95
+ end
86
96
 
87
- Bravo::BILL_TYPE[Bravo.own_iva_cond].keys.each do |target_iva_cond|
88
- it "should authorize a valid bill for #{target_iva_cond.to_s}" do
89
- @bill.net = 1000000
90
- @bill.aliciva_id = 2
91
- @bill.doc_num = "30710151543"
92
- @bill.iva_cond = target_iva_cond
93
- @bill.concepto = "Servicios"
94
-
95
- @bill.authorized?.should == false
96
- @bill.authorize.should == true
97
- @bill.authorized?.should == true
98
-
99
- response = @bill.response
100
-
101
- response.length.should == 28
102
- response.cae.length.should == 14
97
+ describe "#authorize" do
98
+ describe "for facturas" do
99
+ Bravo::BILL_TYPE[Bravo.own_iva_cond].keys.each do |target_iva_cond|
100
+ describe "issued to #{ target_iva_cond.to_s }" do
101
+ Bravo::BILL_TYPE[Bravo.own_iva_cond][target_iva_cond].keys.each do |bill_type|
102
+ it "authorizes bill type #{ bill_type }" do
103
+ bill.net = 10000.00
104
+ bill.aliciva_id = 2
105
+ bill.doc_num = "30710151543"
106
+ bill.iva_cond = target_iva_cond
107
+ bill.concepto = "Servicios"
108
+ bill.invoice_type = bill_type
109
+
110
+ bill.authorized?.should == false
111
+ bill.authorize.should == true
112
+ bill.authorized?.should == true
113
+
114
+ response = bill.response
115
+
116
+ response.length.should == 28
117
+ response.cae.length.should == 14
118
+ end
119
+ end
120
+ end
103
121
  end
104
122
  end
105
123
  end
106
- end
124
+ end
@@ -0,0 +1,12 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+
4
+ describe "Reference" do
5
+ # context ".slip_types" do
6
+ # it "returns a hash of slip codes and description" do
7
+ # Bravo::Reference.slip_types.should be_true
8
+ # end
9
+ #
10
+ #
11
+ # end
12
+ end
@@ -0,0 +1,43 @@
1
+ require 'spec_helper'
2
+
3
+ describe "Wssa" do
4
+ before do
5
+ @stub_now = Time.now
6
+ Time.stub(:now).and_return(@stub_now)
7
+
8
+ @now = Time.now
9
+ Time.now.should == @now
10
+ from = @now.strftime("%FT%T%:z")
11
+ to = ((@now - 120) + (24*60*60)).strftime("%FT%T%:z")
12
+ id = @now.strftime("%s")
13
+ @tra = <<-EOF
14
+ <?xml version="1.0" encoding="UTF-8"?>
15
+ <loginTicketRequest version="1.0">
16
+ <header>
17
+ <uniqueId>#{ id }</uniqueId>
18
+ <generationTime>#{ from }</generationTime>
19
+ <expirationTime>#{ to }</expirationTime>
20
+ </header>
21
+ <service>wsfe</service>
22
+ </loginTicketRequest>
23
+ EOF
24
+ end
25
+
26
+ describe ".build_tra" do
27
+ it "sets the body for the ticket request" do
28
+ Bravo::Wsaa.build_tra.should == @tra
29
+ end
30
+ end
31
+
32
+ describe ".build_cms" do
33
+ it "returns the cms with the tra in it" do
34
+ pending "find a proper way to stub openssl"
35
+ end
36
+ end
37
+
38
+ describe ".login" do
39
+ it "should work" do
40
+ Bravo::Wsaa.login.should be_true
41
+ end
42
+ end
43
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,23 +1,38 @@
1
1
  $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
2
  require 'bravo'
3
3
  require 'rspec'
4
- require 'ruby-debug'
5
4
 
6
- class SpecHelper
7
- include Savon::Logger
5
+ begin
6
+ require 'debugger'
7
+ rescue LoadError
8
8
  end
9
9
 
10
- # Requires supporting files with custom matchers and macros, etc,
11
- # in ./support/ and its subdirectories.
12
- Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
13
10
 
14
- Bravo.pkey = "spec/fixtures/pkey"
15
- Bravo.cert = "spec/fixtures/cert.crt"
16
- Bravo.cuit = ENV["CUIT"] || raise(Bravo::NullOrInvalidAttribute.new, "Please set CUIT env variable.")
17
- Bravo.sale_point = "0002"
18
- Bravo.auth_url = "https://wsaahomo.afip.gov.ar/ws/services/LoginCms"
19
- Bravo.service_url = "http://wswhomo.afip.gov.ar/wsfev1/service.asmx?WSDL"
20
- Bravo.default_concepto = "Productos y Servicios"
11
+ RSpec.configure do |config|
12
+ config.treat_symbols_as_metadata_keys_with_true_values = true
13
+ config.filter_run :focus => true
14
+ config.run_all_when_everything_filtered = true
15
+ end
16
+
17
+ Bravo.pkey = "spec/fixtures/certs/pkey"
18
+ Bravo.cert = "spec/fixtures/certs/cert.crt"
19
+ Bravo.cuit = ENV["CUIT"] || "20287740027"
20
+ Bravo.sale_point = ENV["SALE"] || "0002"
21
+ Bravo.default_concepto = "Productos y Servicios"
21
22
  Bravo.default_documento = "CUIT"
22
- Bravo.default_moneda = :peso
23
- Bravo.own_iva_cond = :responsable_inscripto
23
+ Bravo.default_moneda = :peso
24
+ Bravo.own_iva_cond = :responsable_inscripto
25
+ Bravo.verbose = "true"
26
+ Bravo.openssl_bin = "/usr/local/Cellar/openssl/1.0.1c/bin/openssl"
27
+ Bravo::AuthData.environment = :test
28
+
29
+ # TODO: refactor into actual validations
30
+ unless Bravo.cuit
31
+ raise(Bravo::NullOrInvalidAttribute.new, "Please set CUIT env variable.")
32
+ end
33
+
34
+ [Bravo.pkey, Bravo.cert].each do |file|
35
+ unless File.exists?("#{ file }")
36
+ raise(Bravo::MissingCertificate.new, "No existe #{ file }")
37
+ end
38
+ end
metadata CHANGED
@@ -1,217 +1,162 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: bravo
3
- version: !ruby/object:Gem::Version
4
- hash: 15
5
- prerelease:
6
- segments:
7
- - 0
8
- - 4
9
- - 0
10
- version: 0.4.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0.alpha
5
+ prerelease: 6
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Leandro Marcucci
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-03-21 00:00:00 -03:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2011-03-14 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: savon
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
18
+ requirements:
27
19
  - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 19
30
- segments:
31
- - 0
32
- - 7
33
- - 8
34
- version: 0.7.8
20
+ - !ruby/object:Gem::Version
21
+ version: 2.1.0
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: ruby-debug
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
41
25
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 3
46
- segments:
47
- - 0
48
- version: "0"
49
- type: :development
50
- version_requirements: *id002
51
- - !ruby/object:Gem::Dependency
52
- name: ruby-debug-base19
53
- prerelease: false
54
- requirement: &id003 !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: 2.1.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: thor
32
+ requirement: !ruby/object:Gem::Requirement
55
33
  none: false
56
- requirements:
57
- - - "="
58
- - !ruby/object:Gem::Version
59
- hash: 3
60
- segments:
61
- - 0
62
- - 11
63
- - 24
64
- version: 0.11.24
65
- type: :development
66
- version_requirements: *id003
67
- - !ruby/object:Gem::Dependency
68
- name: ruby-debug19
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: 0.16.0
38
+ type: :runtime
69
39
  prerelease: false
70
- requirement: &id004 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
71
41
  none: false
72
- requirements:
73
- - - "="
74
- - !ruby/object:Gem::Version
75
- hash: 63
76
- segments:
77
- - 0
78
- - 11
79
- - 6
80
- version: 0.11.6
81
- type: :development
82
- version_requirements: *id004
83
- - !ruby/object:Gem::Dependency
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 0.16.0
46
+ - !ruby/object:Gem::Dependency
84
47
  name: rspec
85
- prerelease: false
86
- requirement: &id005 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
87
49
  none: false
88
- requirements:
50
+ requirements:
89
51
  - - ~>
90
- - !ruby/object:Gem::Version
91
- hash: 31
92
- segments:
93
- - 2
94
- - 4
95
- - 0
96
- version: 2.4.0
52
+ - !ruby/object:Gem::Version
53
+ version: 2.12.0
97
54
  type: :development
98
- version_requirements: *id005
99
- - !ruby/object:Gem::Dependency
100
- name: bundler
101
55
  prerelease: false
102
- requirement: &id006 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 2.12.0
62
+ - !ruby/object:Gem::Dependency
63
+ name: rspec-mocks
64
+ requirement: !ruby/object:Gem::Requirement
103
65
  none: false
104
- requirements:
66
+ requirements:
105
67
  - - ~>
106
- - !ruby/object:Gem::Version
107
- hash: 23
108
- segments:
109
- - 1
110
- - 0
111
- - 0
112
- version: 1.0.0
68
+ - !ruby/object:Gem::Version
69
+ version: 2.12.1
113
70
  type: :development
114
- version_requirements: *id006
115
- - !ruby/object:Gem::Dependency
116
- name: jeweler
117
71
  prerelease: false
118
- requirement: &id007 !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 2.12.1
78
+ - !ruby/object:Gem::Dependency
79
+ name: rake
80
+ requirement: !ruby/object:Gem::Requirement
119
81
  none: false
120
- requirements:
82
+ requirements:
121
83
  - - ~>
122
- - !ruby/object:Gem::Version
123
- hash: 1
124
- segments:
125
- - 1
126
- - 5
127
- - 1
128
- version: 1.5.1
84
+ - !ruby/object:Gem::Version
85
+ version: 10.0.3
129
86
  type: :development
130
- version_requirements: *id007
131
- - !ruby/object:Gem::Dependency
132
- name: rcov
133
87
  prerelease: false
134
- requirement: &id008 !ruby/object:Gem::Requirement
88
+ version_requirements: !ruby/object:Gem::Requirement
135
89
  none: false
136
- requirements:
137
- - - ">="
138
- - !ruby/object:Gem::Version
139
- hash: 3
140
- segments:
141
- - 0
142
- version: "0"
143
- type: :development
144
- version_requirements: *id008
145
- description: Adaptador para el Web Service de Facturacion Electronica de AFIP
146
- email: leanucci@vurbia.com
147
- executables: []
148
-
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 10.0.3
94
+ description: Adaptador para el Web Service de Facturacion Electrónica de AFIP
95
+ email:
96
+ - leanucci@gmail.com
97
+ executables:
98
+ - bravo
149
99
  extensions: []
150
-
151
- extra_rdoc_files:
152
- - LICENSE.txt
153
- - README.textile
154
- files:
100
+ extra_rdoc_files: []
101
+ files:
155
102
  - .document
103
+ - .gitignore
104
+ - .travis.yml
105
+ - .yardopts
156
106
  - CHANGELOG
157
107
  - Gemfile
158
- - Gemfile.lock
108
+ - Guardfile
159
109
  - LICENSE.txt
160
- - README.textile
110
+ - README.md
161
111
  - Rakefile
162
112
  - VERSION
163
113
  - autotest/discover.rb
114
+ - bin/bravo
164
115
  - bravo.gemspec
165
116
  - lib/bravo.rb
166
117
  - lib/bravo/auth_data.rb
167
- - lib/bravo/authorizer.rb
168
118
  - lib/bravo/bill.rb
169
119
  - lib/bravo/constants.rb
170
120
  - lib/bravo/core_ext/float.rb
171
121
  - lib/bravo/core_ext/hash.rb
172
122
  - lib/bravo/core_ext/string.rb
123
+ - lib/bravo/reference.rb
173
124
  - lib/bravo/version.rb
125
+ - lib/bravo/wsaa.rb
174
126
  - spec/bravo/auth_data_spec.rb
175
- - spec/bravo/authorizer_spec.rb
176
127
  - spec/bravo/bill_spec.rb
128
+ - spec/bravo/reference_spec.rb
129
+ - spec/bravo/wsaa_spec.rb
177
130
  - spec/spec_helper.rb
178
- - wsaa-client.sh
179
- has_rdoc: true
180
- homepage: http://github.com/Vurbia/Bravo
181
- licenses:
182
- - MIT
131
+ homepage: http://github.com/leanucci/bravo
132
+ licenses: []
183
133
  post_install_message:
184
134
  rdoc_options: []
185
-
186
- require_paths:
135
+ require_paths:
187
136
  - lib
188
- required_ruby_version: !ruby/object:Gem::Requirement
137
+ - bin
138
+ required_ruby_version: !ruby/object:Gem::Requirement
189
139
  none: false
190
- requirements:
191
- - - ">="
192
- - !ruby/object:Gem::Version
193
- hash: 3
194
- segments:
195
- - 0
196
- version: "0"
197
- required_rubygems_version: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ! '>='
142
+ - !ruby/object:Gem::Version
143
+ version: '0'
144
+ required_rubygems_version: !ruby/object:Gem::Requirement
198
145
  none: false
199
- requirements:
200
- - - ">="
201
- - !ruby/object:Gem::Version
202
- hash: 3
203
- segments:
204
- - 0
205
- version: "0"
146
+ requirements:
147
+ - - ! '>'
148
+ - !ruby/object:Gem::Version
149
+ version: 1.3.1
206
150
  requirements: []
207
-
208
151
  rubyforge_project:
209
- rubygems_version: 1.6.2
152
+ rubygems_version: 1.8.23
210
153
  signing_key:
211
154
  specification_version: 3
212
- summary: Adaptador AFIP wsfe.
213
- test_files:
155
+ summary: Adaptador WSFE
156
+ test_files:
214
157
  - spec/bravo/auth_data_spec.rb
215
- - spec/bravo/authorizer_spec.rb
216
158
  - spec/bravo/bill_spec.rb
159
+ - spec/bravo/reference_spec.rb
160
+ - spec/bravo/wsaa_spec.rb
217
161
  - spec/spec_helper.rb
162
+ has_rdoc:
data/Gemfile.lock DELETED
@@ -1,57 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- archive-tar-minitar (0.5.2)
5
- builder (3.0.0)
6
- columnize (0.3.2)
7
- crack (0.1.8)
8
- diff-lcs (1.1.2)
9
- git (1.2.5)
10
- jeweler (1.5.2)
11
- bundler (~> 1.0.0)
12
- git (>= 1.2.5)
13
- rake
14
- linecache (0.43)
15
- linecache19 (0.5.11)
16
- ruby_core_source (>= 0.1.4)
17
- rake (0.8.7)
18
- rcov (0.9.9)
19
- rspec (2.4.0)
20
- rspec-core (~> 2.4.0)
21
- rspec-expectations (~> 2.4.0)
22
- rspec-mocks (~> 2.4.0)
23
- rspec-core (2.4.0)
24
- rspec-expectations (2.4.0)
25
- diff-lcs (~> 1.1.2)
26
- rspec-mocks (2.4.0)
27
- ruby-debug (0.10.4)
28
- columnize (>= 0.1)
29
- ruby-debug-base (~> 0.10.4.0)
30
- ruby-debug-base (0.10.4)
31
- linecache (>= 0.3)
32
- ruby-debug-base19 (0.11.24)
33
- columnize (>= 0.3.1)
34
- linecache19 (>= 0.5.11)
35
- ruby_core_source (>= 0.1.4)
36
- ruby-debug19 (0.11.6)
37
- columnize (>= 0.3.1)
38
- linecache19 (>= 0.5.11)
39
- ruby-debug-base19 (>= 0.11.19)
40
- ruby_core_source (0.1.4)
41
- archive-tar-minitar (>= 0.5.2)
42
- savon (0.7.9)
43
- builder (>= 2.1.2)
44
- crack (>= 0.1.4)
45
-
46
- PLATFORMS
47
- ruby
48
-
49
- DEPENDENCIES
50
- bundler (~> 1.0.0)
51
- jeweler (~> 1.5.1)
52
- rcov
53
- rspec (~> 2.4.0)
54
- ruby-debug
55
- ruby-debug-base19 (= 0.11.24)
56
- ruby-debug19 (= 0.11.6)
57
- savon (~> 0.7.8)