boleto_bancario 0.0.1.beta → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +3 -2
  3. data/.travis.yml +10 -0
  4. data/Changelog.markdown +4 -0
  5. data/Gemfile +1 -1
  6. data/Planning.markdown +18 -86
  7. data/README.markdown +107 -55
  8. data/Rakefile +7 -1
  9. data/TODO.markdown +15 -1
  10. data/boleto_bancario.gemspec +7 -3
  11. data/lib/boleto_bancario.rb +27 -15
  12. data/lib/boleto_bancario/calculos/modulo11_fator_de9a2.rb +65 -0
  13. data/lib/boleto_bancario/calculos/modulo11_fator_de9a2_resto_x.rb +5 -51
  14. data/lib/boleto_bancario/calculos/modulo_numero_de_controle.rb +117 -0
  15. data/lib/boleto_bancario/core/banco_brasil.rb +30 -5
  16. data/lib/boleto_bancario/core/banrisul.rb +182 -0
  17. data/lib/boleto_bancario/core/boleto.rb +67 -34
  18. data/lib/boleto_bancario/core/bradesco.rb +28 -16
  19. data/lib/boleto_bancario/core/caixa.rb +233 -0
  20. data/lib/boleto_bancario/core/hsbc.rb +170 -0
  21. data/lib/boleto_bancario/core/itau.rb +20 -10
  22. data/lib/boleto_bancario/core/real.rb +177 -0
  23. data/lib/boleto_bancario/core/santander.rb +19 -22
  24. data/lib/boleto_bancario/core/sicoob.rb +172 -0
  25. data/lib/boleto_bancario/core/sicredi.rb +290 -0
  26. data/lib/boleto_bancario/version.rb +1 -2
  27. data/spec/boleto_bancario/calculos/modulo10_spec.rb +4 -0
  28. data/spec/boleto_bancario/calculos/modulo11_fator_de2a9_spec.rb +6 -0
  29. data/spec/boleto_bancario/calculos/modulo11_fator_de9a2_spec.rb +31 -0
  30. data/spec/boleto_bancario/calculos/modulo_numero_de_controle_spec.rb +37 -0
  31. data/spec/boleto_bancario/core/banco_brasil_spec.rb +59 -65
  32. data/spec/boleto_bancario/core/banrisul_spec.rb +129 -0
  33. data/spec/boleto_bancario/core/boleto_spec.rb +148 -32
  34. data/spec/boleto_bancario/core/bradesco_spec.rb +29 -36
  35. data/spec/boleto_bancario/core/caixa_spec.rb +111 -0
  36. data/spec/boleto_bancario/core/hsbc_spec.rb +72 -0
  37. data/spec/boleto_bancario/core/itau_spec.rb +33 -36
  38. data/spec/boleto_bancario/core/real_spec.rb +104 -0
  39. data/spec/boleto_bancario/core/santander_spec.rb +26 -24
  40. data/spec/boleto_bancario/core/sicoob_spec.rb +111 -0
  41. data/spec/boleto_bancario/core/sicredi_spec.rb +149 -0
  42. data/spec/inheritance/banco_brasil_spec.rb +22 -0
  43. data/spec/inheritance/banrisul_spec.rb +22 -0
  44. data/spec/inheritance/boleto_spec.rb +15 -0
  45. data/spec/inheritance/bradesco_spec.rb +22 -0
  46. data/spec/inheritance/caixa_spec.rb +22 -0
  47. data/spec/inheritance/hsbc_spec.rb +22 -0
  48. data/spec/inheritance/itau_spec.rb +22 -0
  49. data/spec/inheritance/real_spec.rb +22 -0
  50. data/spec/inheritance/santander_spec.rb +22 -0
  51. data/spec/inheritance/sicoob_spec.rb +22 -0
  52. data/spec/inheritance/sicredi_spec.rb +22 -0
  53. data/spec/shared_examples/boleto_bancario_shared_example.rb +21 -34
  54. data/spec/spec_helper.rb +2 -2
  55. metadata +119 -47
  56. data/.rvmrc +0 -1
@@ -1,4 +1,3 @@
1
1
  module BoletoBancario
2
- # @version '0.0.1'
3
- VERSION = '0.0.1.beta'
2
+ VERSION = '0.0.2'
4
3
  end
@@ -9,6 +9,10 @@ module BoletoBancario
9
9
  Modulo10.new('7123457000').should eq '1'
10
10
  end
11
11
 
12
+ it "should accept the example from Banrisul" do
13
+ Modulo10.new('00009274').should eq '2'
14
+ end
15
+
12
16
  it "returns zero when number is 0" do
13
17
  Modulo10.new('0').should eq '0'
14
18
  end
@@ -27,6 +27,12 @@ module BoletoBancario
27
27
  it { should eq '1' }
28
28
  end
29
29
 
30
+ context 'with Banrisul example' do
31
+ subject { Modulo11FatorDe2a9.new('0419100100000550002110000000012283256304168') }
32
+
33
+ it { should eq '1' }
34
+ end
35
+
30
36
  context 'when calculations returns 11' do
31
37
  subject { Modulo11FatorDe2a9.new('1049107400000160000001100128701000901200298') }
32
38
 
@@ -0,0 +1,31 @@
1
+ require 'spec_helper'
2
+
3
+ module BoletoBancario
4
+ module Calculos
5
+ describe Modulo11FatorDe9a2 do
6
+ context "when the mod result is 10 (ten)" do
7
+ subject { Modulo11FatorDe9a2.new('3973') }
8
+
9
+ it { should eq '10' }
10
+ end
11
+
12
+ context "when the mod result is zero" do
13
+ subject { Modulo11FatorDe9a2.new('3995') }
14
+
15
+ it { should eq '0' }
16
+ end
17
+
18
+ context "when the result is one" do
19
+ subject { Modulo11FatorDe9a2.new('5964') }
20
+
21
+ it { should eq '1' }
22
+ end
23
+
24
+ context "with a five digit number" do
25
+ subject { Modulo11FatorDe9a2.new('10949') }
26
+
27
+ it { should eq '5' }
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+
3
+ module BoletoBancario
4
+ module Calculos
5
+ describe ModuloNumeroDeControle do
6
+ context "when is simple calculation" do
7
+ subject { ModuloNumeroDeControle.new('00009274') }
8
+
9
+ it { should eq '22' }
10
+ end
11
+
12
+ context "another example" do
13
+ subject { ModuloNumeroDeControle.new('0000001') }
14
+
15
+ it { should eq '83' }
16
+ end
17
+
18
+ context "example with second digit invalid" do
19
+ subject { ModuloNumeroDeControle.new('00009194') }
20
+
21
+ it { should eq '38' }
22
+ end
23
+
24
+ context "example with second digit invalid and first digit with '9'" do
25
+ subject { ModuloNumeroDeControle.new('411') }
26
+
27
+ it { should eq '06' }
28
+ end
29
+
30
+ context 'should calculate when the first digit is not 10 (ten)' do
31
+ subject { ModuloNumeroDeControle.new('5') }
32
+
33
+ it { should eq '90' }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -12,26 +12,26 @@ module BoletoBancario
12
12
  it { should_not have_valid(:agencia).when('12345', '123456', nil, '') }
13
13
  end
14
14
 
15
- context "#digito_agencia" do
16
- it { should have_valid(:digito_agencia).when('1', '3', 'X') }
17
- it { should_not have_valid(:digito_agencia).when('12', nil, '') }
18
- end
19
-
20
15
  context "#conta_corrente" do
21
16
  it { should have_valid(:conta_corrente).when('12345678', '12345', '1234') }
22
17
  it { should_not have_valid(:conta_corrente).when('123456789', nil, '') }
23
18
  end
24
19
 
25
- context "#digito_conta_corrente" do
26
- it { should have_valid(:digito_conta_corrente).when('1') }
27
- it { should_not have_valid(:digito_conta_corrente).when('12', nil, '') }
28
- end
29
-
30
20
  context "#codigo_cedente" do
31
21
  it { should have_valid(:codigo_cedente).when('1234', '123456', '1234567', '12345678') }
32
22
  it { should_not have_valid(:codigo_cedente).when('123', '1', '12', nil, '') }
33
23
  end
34
24
 
25
+ context "#carteira" do
26
+ it { should have_valid(:carteira).when('12', '16', '17', '18', 12, 18) }
27
+ it { should_not have_valid(:carteira).when(nil, '', '5', '20', '100', 14, 19) }
28
+ end
29
+
30
+ describe "#valor_documento" do
31
+ it { should have_valid(:valor_documento).when(1, 1.99, 100.99, 99_999_999.99, '100.99') }
32
+ it { should_not have_valid(:valor_documento).when(nil, '', '100,99', 100_000_000.99) }
33
+ end
34
+
35
35
  context "when 'carteira' is 16 and 'codigo_cedente' 6 digits" do
36
36
  subject { BancoBrasil.new(carteira: 16, codigo_cedente: 123456) }
37
37
 
@@ -73,19 +73,26 @@ module BoletoBancario
73
73
  it { should have_valid(:numero_documento).when('123456789', '1235', '1234567') }
74
74
  it { should_not have_valid(:numero_documento).when(nil, '', '1234567890', '12345678911234567') }
75
75
  end
76
+
77
+ context "when 'codigo_cedente' unsupported" do
78
+ subject { BancoBrasil.new(codigo_cedente: 12345) }
79
+
80
+ it { should have_valid(:numero_documento).when('123456789', '1235', '1234567', '1234567890', '12345678911234567') }
81
+ it { should_not have_valid(:numero_documento).when(nil, '') }
82
+ end
76
83
  end
77
84
 
78
85
  describe "#agencia" do
79
86
  context "when have a value" do
80
87
  subject { BancoBrasil.new(:agencia => '001') }
81
88
 
82
- its(:agencia) { should eq '0001' }
89
+ it { expect(subject.agencia).to eq '0001' }
83
90
  end
84
91
 
85
92
  context "when is nil" do
86
93
  subject { BancoBrasil.new(:agencia => nil) }
87
94
 
88
- its(:agencia) { should be nil }
95
+ it { expect(subject.agencia).to be nil }
89
96
  end
90
97
  end
91
98
 
@@ -93,13 +100,13 @@ module BoletoBancario
93
100
  context "when have a value" do
94
101
  subject { BancoBrasil.new(:conta_corrente => 913) }
95
102
 
96
- its(:conta_corrente) { should eq '00000913' }
103
+ it { expect(subject.conta_corrente).to eq '00000913' }
97
104
  end
98
105
 
99
106
  context "when is nil" do
100
107
  subject { BancoBrasil.new(:conta_corrente => nil) }
101
108
 
102
- its(:conta_corrente) { should be nil }
109
+ it { expect(subject.codigo_cedente).to be nil }
103
110
  end
104
111
  end
105
112
 
@@ -107,77 +114,77 @@ module BoletoBancario
107
114
  context "when have 'codigo_cedente' 4 digits" do
108
115
  subject { BancoBrasil.new(:numero_documento => 913, :codigo_cedente => 1234) }
109
116
 
110
- its(:numero_documento) { should eq '0000913' }
117
+ it { expect(subject.numero_documento).to eq '0000913' }
111
118
  end
112
119
 
113
120
  context "when have 'codigo_cedente' 6 digits" do
114
121
  subject { BancoBrasil.new(:numero_documento => 913, :codigo_cedente => 123456) }
115
122
 
116
- its(:numero_documento) { should eq '00913' }
123
+ it { expect(subject.numero_documento).to eq '00913' }
117
124
  end
118
125
 
119
126
  context "when have 'codigo_cedente' 7 digits" do
120
127
  subject { BancoBrasil.new(:numero_documento => 913, :codigo_cedente => 1234567) }
121
128
 
122
- its(:numero_documento) { should eq '0000000913' }
129
+ it { expect(subject.numero_documento).to eq '0000000913' }
123
130
  end
124
131
 
125
132
  context "when have 'codigo_cedente' 8 digits" do
126
133
  subject { BancoBrasil.new(:numero_documento => 913, :codigo_cedente => 12345678) }
127
134
 
128
- its(:numero_documento) { should eq '000000913' }
135
+ it { expect(subject.numero_documento).to eq '000000913' }
129
136
  end
130
137
 
131
138
  context "when is nil" do
132
139
  subject { BancoBrasil.new(:numero_documento => nil) }
133
140
 
134
- its(:numero_documento) { should be nil }
141
+ it { expect(subject.numero_documento).to be nil }
135
142
  end
136
143
 
137
144
  context "when 'codigo_cedente' is nil" do
138
145
  subject { BancoBrasil.new(:numero_documento => '12') }
139
146
 
140
- its(:numero_documento) { should eq '12' }
147
+ it { expect(subject.numero_documento).to eq '12' }
141
148
  end
142
149
  end
143
150
 
144
151
  describe "#codigo_banco" do
145
- its(:codigo_banco) { should eq '001' }
152
+ it { expect(subject.codigo_banco).to eq '001' }
146
153
  end
147
154
 
148
155
  describe "#digito_codigo_banco" do
149
- its(:digito_codigo_banco) { should eq '9' }
156
+ it { expect(subject.digito_codigo_banco).to eq '9' }
150
157
  end
151
158
 
152
159
  describe "#agencia_codigo_cedente" do
153
- subject { BancoBrasil.new(agencia: 9999, digito_agencia: 6, conta_corrente: 99999, digito_conta_corrente: 7) }
160
+ subject { BancoBrasil.new(agencia: 9999, conta_corrente: 99999) }
154
161
 
155
- its(:agencia_codigo_cedente) { should eq '9999-6 / 00099999-7' }
162
+ it { expect(subject.agencia_codigo_cedente).to eq '9999-6 / 00099999-7' }
156
163
  end
157
164
 
158
165
  describe "#nosso_numero" do
159
166
  context "when 'codigo_cedente 4 digits" do
160
167
  subject { BancoBrasil.new(codigo_cedente: 1234, numero_documento: 1984) }
161
168
 
162
- its(:nosso_numero) { should eq '12340001984-7' }
169
+ it { expect(subject.nosso_numero).to eq '12340001984-7' }
163
170
  end
164
171
 
165
172
  context "when 'codigo_cedente 6 digits" do
166
173
  subject { BancoBrasil.new(codigo_cedente: 123456, numero_documento: 1984) }
167
174
 
168
- its(:nosso_numero) { should eq '12345601984-2' }
175
+ it { expect(subject.nosso_numero).to eq '12345601984-2' }
169
176
  end
170
177
 
171
178
  context "when 'codigo_cedente 7 digits" do
172
179
  subject { BancoBrasil.new(codigo_cedente: 1234567, numero_documento: 1984) }
173
180
 
174
- its(:nosso_numero) { should eq '12345670000001984' }
181
+ it { expect(subject.nosso_numero).to eq '12345670000001984' }
175
182
  end
176
183
 
177
184
  context "when 'codigo_cedente 8 digits" do
178
185
  subject { BancoBrasil.new(codigo_cedente: 12345678, numero_documento: 1984) }
179
186
 
180
- its(:nosso_numero) { should eq '12345678000001984' }
187
+ it { expect(subject.nosso_numero).to eq '12345678000001984' }
181
188
  end
182
189
  end
183
190
 
@@ -185,13 +192,13 @@ module BoletoBancario
185
192
  context "when is true" do
186
193
  subject { BancoBrasil.new(codigo_cedente: 1234) }
187
194
 
188
- its(:codigo_cedente_quatro_digitos?) { should be true }
195
+ it { expect(subject.codigo_cedente_quatro_digitos?).to be true }
189
196
  end
190
197
 
191
198
  context "when is false" do
192
199
  subject { BancoBrasil.new(codigo_cedente: 12345) }
193
200
 
194
- its(:codigo_cedente_quatro_digitos?) { should be false }
201
+ it { expect(subject.codigo_cedente_quatro_digitos?).to be false }
195
202
  end
196
203
  end
197
204
 
@@ -199,13 +206,13 @@ module BoletoBancario
199
206
  context "when is true" do
200
207
  subject { BancoBrasil.new(codigo_cedente: 123456) }
201
208
 
202
- its(:codigo_cedente_seis_digitos?) { should be true }
209
+ it { expect(subject.codigo_cedente_seis_digitos?).to be true }
203
210
  end
204
211
 
205
212
  context "when is false" do
206
213
  subject { BancoBrasil.new(codigo_cedente: 1234567) }
207
214
 
208
- its(:codigo_cedente_seis_digitos?) { should be false }
215
+ it { expect(subject.codigo_cedente_seis_digitos?).to be false }
209
216
  end
210
217
  end
211
218
 
@@ -213,13 +220,13 @@ module BoletoBancario
213
220
  context "when is true" do
214
221
  subject { BancoBrasil.new(codigo_cedente: 1234567) }
215
222
 
216
- its(:codigo_cedente_sete_digitos?) { should be true }
223
+ it { expect(subject.codigo_cedente_sete_digitos?).to be true }
217
224
  end
218
225
 
219
226
  context "when is false" do
220
227
  subject { BancoBrasil.new(codigo_cedente: 12345678) }
221
228
 
222
- its(:codigo_cedente_sete_digitos?) { should be false }
229
+ it { expect(subject.codigo_cedente_sete_digitos?).to be false }
223
230
  end
224
231
  end
225
232
 
@@ -227,13 +234,13 @@ module BoletoBancario
227
234
  context "when is true" do
228
235
  subject { BancoBrasil.new(codigo_cedente: 12345678) }
229
236
 
230
- its(:codigo_cedente_oito_digitos?) { should be true }
237
+ it { expect(subject.codigo_cedente_oito_digitos?).to be true }
231
238
  end
232
239
 
233
240
  context "when is false" do
234
241
  subject { BancoBrasil.new(codigo_cedente: 123456789) }
235
242
 
236
- its(:codigo_cedente_oito_digitos?) { should be false }
243
+ it { expect(subject.codigo_cedente_oito_digitos?).to be false }
237
244
  end
238
245
  end
239
246
 
@@ -241,25 +248,25 @@ module BoletoBancario
241
248
  context "when 'carteira' 18, 'numero_documento' 17 digits and 'codigo_cedente' 6 digits" do
242
249
  subject { BancoBrasil.new(numero_documento: 12345678911234567, carteira: 18, codigo_cedente: 123456) }
243
250
 
244
- its(:nosso_numero_dezessete_posicoes?) { should be true }
251
+ it { expect(subject.nosso_numero_dezessete_posicoes?).to be true }
245
252
  end
246
253
 
247
254
  context "when 'carteira' 16, 'numero_documento' 17 digits and 'codigo_cedente' 6 digits" do
248
255
  subject { BancoBrasil.new(numero_documento: 12345678911234567, carteira: 16, codigo_cedente: 123456) }
249
256
 
250
- its(:nosso_numero_dezessete_posicoes?) { should be true }
257
+ it { expect(subject.nosso_numero_dezessete_posicoes?).to be true }
251
258
  end
252
259
 
253
260
  context "when is 'carteira' is not supported" do
254
261
  subject { BancoBrasil.new(numero_documento: 123456789, carteira: 12, codigo_cedente: 123456) }
255
262
 
256
- its(:nosso_numero_dezessete_posicoes?) { should be false }
263
+ it { expect(subject.nosso_numero_dezessete_posicoes?).to be false }
257
264
  end
258
265
 
259
266
  context "when is 'codigo_cedente' is not supported" do
260
267
  subject { BancoBrasil.new(numero_documento: 123456789, carteira: 16, codigo_cedente: 1234567) }
261
268
 
262
- its(:nosso_numero_dezessete_posicoes?) { should be false }
269
+ it { expect(subject.nosso_numero_dezessete_posicoes?).to be false }
263
270
  end
264
271
  end
265
272
 
@@ -271,16 +278,14 @@ module BoletoBancario
271
278
  banco_brasil.valor_documento = 2952.95
272
279
  banco_brasil.numero_documento = 90801
273
280
  banco_brasil.agencia = 7123
274
- banco_brasil.digito_agencia = 6
275
281
  banco_brasil.conta_corrente = 19345
276
- banco_brasil.digito_conta_corrente = 7
277
282
  banco_brasil.data_vencimento = Date.parse('2012-12-28')
278
283
  banco_brasil.codigo_cedente = 4321
279
284
  end
280
285
  end
281
286
 
282
- its(:codigo_de_barras) { should eq '00193556100002952954321009080171230001934518' }
283
- its(:linha_digitavel) { should eq '00194.32103 09080.171235 00019.345180 3 55610000295295' }
287
+ it { expect(subject.codigo_de_barras).to eq '00193556100002952954321009080171230001934518' }
288
+ it { expect(subject.linha_digitavel).to eq '00194.32103 09080.171235 00019.345180 3 55610000295295' }
284
289
  end
285
290
 
286
291
  context "'codigo_cedente' with 6 digits" do
@@ -290,16 +295,14 @@ module BoletoBancario
290
295
  banco_brasil.valor_documento = 14001.99
291
296
  banco_brasil.numero_documento = 12901
292
297
  banco_brasil.agencia = 5030
293
- banco_brasil.digito_agencia = 6
294
298
  banco_brasil.conta_corrente = 14204195
295
- banco_brasil.digito_conta_corrente = 7
296
299
  banco_brasil.data_vencimento = Date.parse('2012-12-28')
297
300
  banco_brasil.codigo_cedente = 555444
298
301
  end
299
302
  end
300
303
 
301
- its(:codigo_de_barras) { should eq '00197556100014001995554441290150301420419518' }
302
- its(:linha_digitavel) { should eq '00195.55440 41290.150303 14204.195185 7 55610001400199' }
304
+ it { expect(subject.codigo_de_barras).to eq '00197556100014001995554441290150301420419518' }
305
+ it { expect(subject.linha_digitavel).to eq '00195.55440 41290.150303 14204.195185 7 55610001400199' }
303
306
  end
304
307
 
305
308
  context "'codigo_cedente' with 6 digits and 'nosso numero' with 17 digits" do
@@ -309,18 +312,15 @@ module BoletoBancario
309
312
  banco_brasil.valor_documento = 14001.99
310
313
  banco_brasil.numero_documento = 12345678911234567
311
314
  banco_brasil.agencia = 5030
312
- banco_brasil.digito_agencia = 6
313
315
  banco_brasil.conta_corrente = 14204195
314
- banco_brasil.digito_conta_corrente = 7
315
316
  banco_brasil.data_vencimento = Date.parse('2012-12-28')
316
317
  banco_brasil.codigo_cedente = 555444
317
318
  end
318
319
  end
319
320
 
320
- its(:linha_digitavel) { should eq "" }
321
+ it { expect(subject.linha_digitavel).to eq '' }
321
322
  end
322
323
 
323
-
324
324
  context "'codigo_cedente' with 6 digits and 'nosso numero' with 17 digits" do
325
325
  subject do
326
326
  BancoBrasil.new do |banco_brasil|
@@ -328,16 +328,14 @@ module BoletoBancario
328
328
  banco_brasil.valor_documento = 14001.99
329
329
  banco_brasil.numero_documento = 12345678911234567
330
330
  banco_brasil.agencia = 5030
331
- banco_brasil.digito_agencia = 6
332
331
  banco_brasil.conta_corrente = 14204195
333
- banco_brasil.digito_conta_corrente = 7
334
332
  banco_brasil.data_vencimento = Date.parse('2012-12-28')
335
333
  banco_brasil.codigo_cedente = 555444
336
334
  end
337
335
  end
338
336
 
339
- its(:codigo_de_barras) { should eq '00194556100014001995554441234567891123456721' }
340
- its(:linha_digitavel) { should eq "00195.55440 41234.567893 11234.567219 4 55610001400199" }
337
+ it { expect(subject.codigo_de_barras).to eq '00194556100014001995554441234567891123456721' }
338
+ it { expect(subject.linha_digitavel).to eq '00195.55440 41234.567893 11234.567219 4 55610001400199' }
341
339
  end
342
340
 
343
341
  context "'codigo_cedente' with 7 digits" do
@@ -347,16 +345,14 @@ module BoletoBancario
347
345
  banco_brasil.valor_documento = 2952.95
348
346
  banco_brasil.numero_documento = 87654
349
347
  banco_brasil.agencia = 9999
350
- banco_brasil.digito_agencia = 6
351
348
  banco_brasil.conta_corrente = 99999
352
- banco_brasil.digito_conta_corrente = 7
353
349
  banco_brasil.data_vencimento = Date.parse('2012-12-28')
354
350
  banco_brasil.codigo_cedente = 7777777
355
351
  end
356
352
  end
357
353
 
358
- its(:codigo_de_barras) { should eq '00197556100002952950000007777777000008765418' }
359
- its(:linha_digitavel) { should eq '00190.00009 07777.777009 00087.654182 7 55610000295295' }
354
+ it { expect(subject.codigo_de_barras).to eq '00197556100002952950000007777777000008765418' }
355
+ it { expect(subject.linha_digitavel).to eq '00190.00009 07777.777009 00087.654182 7 55610000295295' }
360
356
  end
361
357
 
362
358
  context "'codigo_cedente' with 8 digits" do
@@ -366,18 +362,16 @@ module BoletoBancario
366
362
  banco_brasil.valor_documento = 2952.95
367
363
  banco_brasil.numero_documento = 87654
368
364
  banco_brasil.agencia = 9999
369
- banco_brasil.digito_agencia = 6
370
365
  banco_brasil.conta_corrente = 99999
371
- banco_brasil.digito_conta_corrente = 7
372
366
  banco_brasil.data_vencimento = Date.parse('2012-12-28')
373
367
  banco_brasil.codigo_cedente = 77777778
374
368
  end
375
369
  end
376
370
 
377
- its(:codigo_de_barras) { should eq '00191556100002952950000007777777800008765418' }
378
- its(:linha_digitavel) { should eq '00190.00009 07777.777801 00087.654182 1 55610000295295' }
371
+ it { expect(subject.codigo_de_barras).to eq '00191556100002952950000007777777800008765418' }
372
+ it { expect(subject.linha_digitavel).to eq '00190.00009 07777.777801 00087.654182 1 55610000295295' }
379
373
  end
380
374
  end
381
375
  end
382
376
  end
383
- end
377
+ end