brcobranca 3.2.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +13 -0
  3. data/.ruby-version +1 -1
  4. data/.travis.yml +7 -1
  5. data/Gemfile +13 -2
  6. data/Rakefile +2 -2
  7. data/brcobranca.gemspec +10 -17
  8. data/lib/brcobranca.rb +2 -5
  9. data/lib/brcobranca/arquivos/logos/bancobrasil.eps +0 -0
  10. data/lib/brcobranca/arquivos/logos/bradesco.eps +0 -0
  11. data/lib/brcobranca/arquivos/logos/caixa.eps +0 -0
  12. data/lib/brcobranca/arquivos/logos/hsbc.eps +0 -0
  13. data/lib/brcobranca/arquivos/logos/itau.eps +0 -0
  14. data/lib/brcobranca/arquivos/logos/santander.eps +0 -0
  15. data/lib/brcobranca/arquivos/logos/sicredi.eps +0 -0
  16. data/lib/brcobranca/arquivos/templates/modelo_generico.eps +0 -0
  17. data/lib/brcobranca/boleto/banco_brasil.rb +27 -29
  18. data/lib/brcobranca/boleto/base.rb +29 -30
  19. data/lib/brcobranca/boleto/bradesco.rb +14 -15
  20. data/lib/brcobranca/boleto/caixa.rb +25 -23
  21. data/lib/brcobranca/boleto/hsbc.rb +30 -34
  22. data/lib/brcobranca/boleto/itau.rb +23 -25
  23. data/lib/brcobranca/boleto/santander.rb +17 -19
  24. data/lib/brcobranca/boleto/sicredi.rb +19 -19
  25. data/lib/brcobranca/boleto/template/base.rb +0 -2
  26. data/lib/brcobranca/boleto/template/rghost.rb +72 -74
  27. data/lib/brcobranca/boleto/template/rghost_carne.rb +105 -118
  28. data/lib/brcobranca/calculo.rb +22 -22
  29. data/lib/brcobranca/calculo_data.rb +8 -8
  30. data/lib/brcobranca/currency.rb +11 -11
  31. data/lib/brcobranca/formatacao.rb +16 -16
  32. data/lib/brcobranca/limpeza.rb +4 -4
  33. data/lib/brcobranca/retorno/base.rb +0 -1
  34. data/lib/brcobranca/retorno/retorno_cbr643.rb +35 -35
  35. data/lib/brcobranca/retorno/retorno_cnab240.rb +39 -40
  36. data/lib/brcobranca/retorno/retorno_cnab400.rb +21 -26
  37. data/lib/brcobranca/version.rb +2 -2
  38. data/spec/brcobranca/banco_bradesco_spec.rb +113 -113
  39. data/spec/brcobranca/banco_brasil_spec.rb +167 -167
  40. data/spec/brcobranca/banco_caixa_spec.rb +58 -58
  41. data/spec/brcobranca/banco_hsbc_spec.rb +117 -118
  42. data/spec/brcobranca/banco_sicredi_spec.rb +92 -93
  43. data/spec/brcobranca/base_spec.rb +78 -78
  44. data/spec/brcobranca/boletos_em_lote_spec.rb +22 -22
  45. data/spec/brcobranca/core_ext_spec.rb +134 -135
  46. data/spec/brcobranca/currency_spec.rb +59 -59
  47. data/spec/brcobranca/itau_spec.rb +137 -137
  48. data/spec/brcobranca/retorno_cbr643_spec.rb +32 -32
  49. data/spec/brcobranca/retorno_cnab400_spec.rb +40 -42
  50. data/spec/brcobranca/retorno_cnab_240_spec.rb +17 -19
  51. data/spec/brcobranca/rghost_spec.rb +21 -21
  52. data/spec/brcobranca/santander_spec.rb +80 -80
  53. data/spec/brcobranca_spec.rb +4 -4
  54. data/spec/spec_helper.rb +1 -1
  55. metadata +12 -54
  56. data/VERSION +0 -1
  57. data/lib/brcobranca/arquivos/logos/bancobrasil.jpg +0 -0
  58. data/lib/brcobranca/arquivos/logos/bradesco.jpg +0 -0
  59. data/lib/brcobranca/arquivos/logos/caixa.jpg +0 -0
  60. data/lib/brcobranca/arquivos/logos/hsbc.jpg +0 -0
  61. data/lib/brcobranca/arquivos/logos/itau.jpg +0 -0
  62. data/lib/brcobranca/arquivos/logos/santander.jpg +0 -0
  63. data/lib/brcobranca/arquivos/logos/sicredi.jpg +0 -0
@@ -9,14 +9,13 @@ module Brcobranca
9
9
  class RetornoCnab400 < Base
10
10
  extend ParseLine::FixedWidth # Extendendo parseline
11
11
 
12
- def self.load_lines(file, options={})
13
- default_options = {:except => [1]} #por padrao ignora a primeira linha que é header
12
+ def self.load_lines(file, options = {})
13
+ default_options = { except: [1] } # por padrao ignora a primeira linha que é header
14
14
  options = default_options.merge!(options)
15
15
 
16
16
  super file, options
17
17
  end
18
18
 
19
-
20
19
  fixed_width_layout do |parse|
21
20
 
22
21
  # Todos os campos descritos no documento em ordem
@@ -25,31 +24,31 @@ module Brcobranca
25
24
  # :numero_de_inscricao, 3..17 #numero de inscricao da empresa (cpf/cnpj)
26
25
 
27
26
  # :agencia ,17..20 #agencia mantenedora da conta
28
- parse.field :agencia_com_dv,17..20 #FIXME - SEM DIV
27
+ parse.field :agencia_com_dv, 17..20 # FIXME - SEM DIV
29
28
 
30
29
  # :zeros, 21..22 # complemento de registro
31
30
 
32
31
  # :conta, 23..27 #numero da conta corrente da empresa
33
32
  # :dac, 28..28 #digito de auto conferencia ag/conta empresa
34
- parse.field :cedente_com_dv,23..28
33
+ parse.field :cedente_com_dv, 23..28
35
34
 
36
35
  # :brancos, 29..36 #complemento de registro
37
36
  # :uso_da_empresa, 37..61 #identificacao do titulo na empresa
38
37
 
39
38
  # :nosso_numero,62..69 # identificacao do titulo no banco
40
- parse.field :nosso_numero,62..69
39
+ parse.field :nosso_numero, 62..69
41
40
 
42
41
  # :brancos, 70..81 #complemento do registro
43
42
 
44
43
  # :carteira, 82..84 #numero da carteira
45
- parse.field :carteira_variacao,82..84
44
+ parse.field :carteira_variacao, 82..84
46
45
 
47
46
  # :nosso_numero, 85..92 #identificacao do titulo no banco (novamente?)
48
47
  # :dac_nosso_numero, 93..93 #dac nosso numero
49
48
  # :brancos, 94..106 #complemento do registro
50
49
 
51
50
  # :carteira, 107..107 #código da carteira
52
- parse.field :carteira,107..107
51
+ parse.field :carteira, 107..107
53
52
 
54
53
  # :cod_de_ocorrencia, 108..109 # código de ocorrencia
55
54
  # :data_de_ocorrencia, 110..115 # data de ocorrencia no banco (ddmmaa)
@@ -58,53 +57,50 @@ module Brcobranca
58
57
  # :brancos, 134..145 #complemento de registro
59
58
 
60
59
  # :vencimento, 146..151 #data de vencimento do titulo (ddmmaa)
61
- parse.field :data_vencimento,146..151
60
+ parse.field :data_vencimento, 146..151
62
61
 
63
62
  # :valor_do_titulo, 152..164 #valor nominal do titulo (ultimos 2 digitos, virgula decimal assumida)
64
- parse.field :valor_titulo,152..164
63
+ parse.field :valor_titulo, 152..164
65
64
 
66
65
  # :codigo_do_banco, 165..167 # numero do banco na camara de compensacao
67
- parse.field :banco_recebedor,165..167
66
+ parse.field :banco_recebedor, 165..167
68
67
 
69
68
  # :agencia_cobradora, 168..171 # agencia cobradora, ag de liquidacao ou baixa
70
69
  # :dac_ag_cobradora, 172..172 # dac da agencia cobradora
71
- parse.field :agencia_recebedora_com_dv,168..172
70
+ parse.field :agencia_recebedora_com_dv, 168..172
72
71
 
73
72
  # :especie, 173..174 # especie do titulo
74
- parse.field :especie_documento,173..174
73
+ parse.field :especie_documento, 173..174
75
74
 
76
75
  # :tarifa_de_cobranca, 175..187 #valor da despesa de cobranca (ultimos 2 digitos, virgula decimal assumida)
77
- parse.field :valor_tarifa,175..187
76
+ parse.field :valor_tarifa, 175..187
78
77
 
79
78
  # :brancos, 188..213 #complemento do registro
80
79
 
81
80
  # :valor_do_iof, 214..226 #valor do iof a ser recolhido (ultimos 2 digitos, virgula decimal assumida)
82
- parse.field :iof,214..226
81
+ parse.field :iof, 214..226
83
82
 
84
83
  # :valor_abatimento, 227..239 #valor do abatimento concedido (ultimos 2 digitos, virgula decimal assumida)
85
- parse.field :valor_abatimento,227..239
84
+ parse.field :valor_abatimento, 227..239
86
85
 
87
86
  # :descontos, 240..252 #valor do desconto concedido (ultimos 2 digitos, virgula decimal assumida)
88
- parse.field :desconto,240..252
87
+ parse.field :desconto, 240..252
89
88
 
90
89
  # :valor_principal, 253..265 #valor lancado em conta corrente (ultimos 2 digitos, virgula decimal assumida)
91
90
 
92
- parse.field :valor_recebido,253..265
91
+ parse.field :valor_recebido, 253..265
93
92
 
94
93
  # :juros_mora_multa, 266..278 #valor de mora e multa pagos pelo sacado (ultimos 2 digitos, virgula decimal assumida)
95
- parse.field :juros_mora,266..278
94
+ parse.field :juros_mora, 266..278
96
95
 
97
96
  # :outros_creditos, 279..291 #valor de outros creditos (ultimos 2 digitos, virgula decimal assumida)
98
- parse.field :outros_recebimento,279..291
99
-
100
-
97
+ parse.field :outros_recebimento, 279..291
101
98
 
102
99
  # :boleto_dda, 292..292 #indicador de boleto dda
103
100
  # :brancos, 293..294 #complemento de registro
104
101
 
105
102
  # :data_credito, 295..300 #data de credito desta liquidacao
106
- parse.field :data_credito,295..300
107
-
103
+ parse.field :data_credito, 295..300
108
104
 
109
105
  # :instr_cancelada, 301..304 # codigo da instrucao cancelada
110
106
  # :brancos , 305..310 # complemento de registro
@@ -116,8 +112,7 @@ module Brcobranca
116
112
  # :cod_de_liquidacao, 392..393 #meio pelo qual o título foi liquidado
117
113
 
118
114
  # :numero_sequencial, 394..399 #numero sequencial no arquivo
119
- parse.field :sequencial,394..399
120
-
115
+ parse.field :sequencial, 394..399
121
116
 
122
117
  # Campos da classe base que não encontrei a relação com CNAB400
123
118
  # parse.field :tipo_cobranca,80..80
@@ -1,5 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
 
3
3
  module Brcobranca
4
- VERSION = "3.2.0"
5
- end
4
+ VERSION = '4.0.0'
5
+ end
@@ -4,161 +4,161 @@ require 'spec_helper'
4
4
  describe Brcobranca::Boleto::Bradesco do
5
5
  before(:each) do
6
6
  @valid_attributes = {
7
- :especie_documento => "DM",
8
- :moeda => "9",
9
- :data_documento => Date.today,
10
- :dias_vencimento => 1,
11
- :aceite => "S",
12
- :quantidade => 1,
13
- :valor => 0.0,
14
- :local_pagamento => "QUALQUER BANCO ATÉ O VENCIMENTO",
15
- :cedente => "Kivanio Barbosa",
16
- :documento_cedente => "12345678912",
17
- :sacado => "Claudio Pozzebom",
18
- :sacado_documento => "12345678900",
19
- :agencia => "4042",
20
- :conta_corrente => "61900",
21
- :convenio => 12387989,
22
- :numero_documento => "777700168"
7
+ especie_documento: 'DM',
8
+ moeda: '9',
9
+ data_documento: Date.today,
10
+ dias_vencimento: 1,
11
+ aceite: 'S',
12
+ quantidade: 1,
13
+ valor: 0.0,
14
+ local_pagamento: 'QUALQUER BANCO ATÉ O VENCIMENTO',
15
+ cedente: 'Kivanio Barbosa',
16
+ documento_cedente: '12345678912',
17
+ sacado: 'Claudio Pozzebom',
18
+ sacado_documento: '12345678900',
19
+ agencia: '4042',
20
+ conta_corrente: '61900',
21
+ convenio: 12_387_989,
22
+ numero_documento: '777700168'
23
23
  }
24
24
  end
25
25
 
26
- it "Criar nova instancia com atributos padrões" do
27
- boleto_novo = Brcobranca::Boleto::Bradesco.new
28
- expect(boleto_novo.banco).to eql("237")
29
- expect(boleto_novo.especie_documento).to eql("DM")
30
- expect(boleto_novo.especie).to eql("R$")
31
- expect(boleto_novo.moeda).to eql("9")
26
+ it 'Criar nova instancia com atributos padrões' do
27
+ boleto_novo = described_class.new
28
+ expect(boleto_novo.banco).to eql('237')
29
+ expect(boleto_novo.especie_documento).to eql('DM')
30
+ expect(boleto_novo.especie).to eql('R$')
31
+ expect(boleto_novo.moeda).to eql('9')
32
32
  expect(boleto_novo.data_documento).to eql(Date.today)
33
33
  expect(boleto_novo.dias_vencimento).to eql(1)
34
34
  expect(boleto_novo.data_vencimento).to eql(Date.today + 1)
35
- expect(boleto_novo.aceite).to eql("S")
35
+ expect(boleto_novo.aceite).to eql('S')
36
36
  expect(boleto_novo.quantidade).to eql(1)
37
37
  expect(boleto_novo.valor).to eql(0.0)
38
38
  expect(boleto_novo.valor_documento).to eql(0.0)
39
- expect(boleto_novo.local_pagamento).to eql("QUALQUER BANCO ATÉ O VENCIMENTO")
40
- expect(boleto_novo.carteira).to eql("06")
39
+ expect(boleto_novo.local_pagamento).to eql('QUALQUER BANCO ATÉ O VENCIMENTO')
40
+ expect(boleto_novo.carteira).to eql('06')
41
41
 
42
42
  end
43
43
 
44
- it "Criar nova instancia com atributos válidos" do
45
- boleto_novo = Brcobranca::Boleto::Bradesco.new(@valid_attributes)
46
- expect(boleto_novo.banco).to eql("237")
47
- expect(boleto_novo.especie_documento).to eql("DM")
48
- expect(boleto_novo.especie).to eql("R$")
49
- expect(boleto_novo.moeda).to eql("9")
44
+ it 'Criar nova instancia com atributos válidos' do
45
+ boleto_novo = described_class.new(@valid_attributes)
46
+ expect(boleto_novo.banco).to eql('237')
47
+ expect(boleto_novo.especie_documento).to eql('DM')
48
+ expect(boleto_novo.especie).to eql('R$')
49
+ expect(boleto_novo.moeda).to eql('9')
50
50
  expect(boleto_novo.data_documento).to eql(Date.today)
51
51
  expect(boleto_novo.dias_vencimento).to eql(1)
52
52
  expect(boleto_novo.data_vencimento).to eql(Date.today + 1)
53
- expect(boleto_novo.aceite).to eql("S")
53
+ expect(boleto_novo.aceite).to eql('S')
54
54
  expect(boleto_novo.quantidade).to eql(1)
55
55
  expect(boleto_novo.valor).to eql(0.0)
56
56
  expect(boleto_novo.valor_documento).to eql(0.0)
57
- expect(boleto_novo.local_pagamento).to eql("QUALQUER BANCO ATÉ O VENCIMENTO")
58
- expect(boleto_novo.cedente).to eql("Kivanio Barbosa")
59
- expect(boleto_novo.documento_cedente).to eql("12345678912")
60
- expect(boleto_novo.sacado).to eql("Claudio Pozzebom")
61
- expect(boleto_novo.sacado_documento).to eql("12345678900")
62
- expect(boleto_novo.conta_corrente).to eql("0061900")
63
- expect(boleto_novo.agencia).to eql("4042")
64
- expect(boleto_novo.convenio).to eql(12387989)
65
- expect(boleto_novo.numero_documento).to eql("00777700168")
66
- expect(boleto_novo.carteira).to eql("06")
57
+ expect(boleto_novo.local_pagamento).to eql('QUALQUER BANCO ATÉ O VENCIMENTO')
58
+ expect(boleto_novo.cedente).to eql('Kivanio Barbosa')
59
+ expect(boleto_novo.documento_cedente).to eql('12345678912')
60
+ expect(boleto_novo.sacado).to eql('Claudio Pozzebom')
61
+ expect(boleto_novo.sacado_documento).to eql('12345678900')
62
+ expect(boleto_novo.conta_corrente).to eql('0061900')
63
+ expect(boleto_novo.agencia).to eql('4042')
64
+ expect(boleto_novo.convenio).to eql(12_387_989)
65
+ expect(boleto_novo.numero_documento).to eql('00777700168')
66
+ expect(boleto_novo.carteira).to eql('06')
67
67
  end
68
68
 
69
- it "Montar código de barras para carteira número 06" do
69
+ it 'Montar código de barras para carteira número 06' do
70
70
  @valid_attributes[:valor] = 2952.95
71
- @valid_attributes[:data_documento] = Date.parse("2009-04-30")
71
+ @valid_attributes[:data_documento] = Date.parse('2009-04-30')
72
72
  @valid_attributes[:dias_vencimento] = 0
73
- @valid_attributes[:numero_documento] = "75896452"
74
- @valid_attributes[:conta_corrente] = "0403005"
75
- @valid_attributes[:agencia] = "1172"
76
- boleto_novo = Brcobranca::Boleto::Bradesco.new(@valid_attributes)
77
-
78
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("1172060007589645204030050")
79
- expect(boleto_novo.codigo_barras).to eql("23795422300002952951172060007589645204030050")
80
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("23791.17209 60007.589645 52040.300502 5 42230000295295")
73
+ @valid_attributes[:numero_documento] = '75896452'
74
+ @valid_attributes[:conta_corrente] = '0403005'
75
+ @valid_attributes[:agencia] = '1172'
76
+ boleto_novo = described_class.new(@valid_attributes)
77
+
78
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('1172060007589645204030050')
79
+ expect(boleto_novo.codigo_barras).to eql('23795422300002952951172060007589645204030050')
80
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('23791.17209 60007.589645 52040.300502 5 42230000295295')
81
81
  end
82
82
 
83
- it "Montar código de barras para carteira número 03" do
83
+ it 'Montar código de barras para carteira número 03' do
84
84
  @valid_attributes[:valor] = 135.00
85
85
  @valid_attributes[:dias_vencimento] = 1
86
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
87
- @valid_attributes[:numero_documento] = "777700168"
88
- @valid_attributes[:conta_corrente] = "61900"
89
- @valid_attributes[:agencia] = "4042"
90
- @valid_attributes[:carteira] = "03"
91
- boleto_novo = Brcobranca::Boleto::Bradesco.new(@valid_attributes)
92
-
93
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("4042030077770016800619000")
94
- expect(boleto_novo.codigo_barras).to eql("23791377000000135004042030077770016800619000")
95
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("23794.04201 30077.770011 68006.190000 1 37700000013500")
86
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
87
+ @valid_attributes[:numero_documento] = '777700168'
88
+ @valid_attributes[:conta_corrente] = '61900'
89
+ @valid_attributes[:agencia] = '4042'
90
+ @valid_attributes[:carteira] = '03'
91
+ boleto_novo = described_class.new(@valid_attributes)
92
+
93
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('4042030077770016800619000')
94
+ expect(boleto_novo.codigo_barras).to eql('23791377000000135004042030077770016800619000')
95
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('23794.04201 30077.770011 68006.190000 1 37700000013500')
96
96
  end
97
97
 
98
- it "Não permitir gerar boleto com atributos inválido" do
99
- boleto_novo = Brcobranca::Boleto::Bradesco.new
98
+ it 'Não permitir gerar boleto com atributos inválido' do
99
+ boleto_novo = described_class.new
100
100
  expect { boleto_novo.codigo_barras }.to raise_error(Brcobranca::BoletoInvalido)
101
101
  expect(boleto_novo.errors.count).to eql(3)
102
102
  end
103
103
 
104
- it "Montar nosso_numero_boleto" do
105
- boleto_novo = Brcobranca::Boleto::Bradesco.new(@valid_attributes)
104
+ it 'Montar nosso_numero_boleto' do
105
+ boleto_novo = described_class.new(@valid_attributes)
106
106
 
107
- boleto_novo.numero_documento = "4042"
108
- boleto_novo.carteira = "06"
109
- expect(boleto_novo.nosso_numero_boleto).to eql("06/00000004042-8")
107
+ boleto_novo.numero_documento = '4042'
108
+ boleto_novo.carteira = '06'
109
+ expect(boleto_novo.nosso_numero_boleto).to eql('06/00000004042-8')
110
110
  expect(boleto_novo.nosso_numero_dv).to eql(8)
111
- boleto_novo.numero_documento = "61900"
112
- boleto_novo.carteira = "05"
113
- expect(boleto_novo.nosso_numero_boleto).to eql("05/00000061900-0")
111
+ boleto_novo.numero_documento = '61900'
112
+ boleto_novo.carteira = '05'
113
+ expect(boleto_novo.nosso_numero_boleto).to eql('05/00000061900-0')
114
114
  expect(boleto_novo.nosso_numero_dv).to eql(0)
115
- boleto_novo.numero_documento = "0719"
116
- boleto_novo.carteira = "07"
117
- expect(boleto_novo.nosso_numero_boleto).to eql("07/00000000719-6")
115
+ boleto_novo.numero_documento = '0719'
116
+ boleto_novo.carteira = '07'
117
+ expect(boleto_novo.nosso_numero_boleto).to eql('07/00000000719-6')
118
118
  expect(boleto_novo.nosso_numero_dv).to eql(6)
119
119
  boleto_novo.numero_documento = 4042
120
- boleto_novo.carteira = "06"
121
- expect(boleto_novo.nosso_numero_boleto).to eql("06/00000004042-8")
120
+ boleto_novo.carteira = '06'
121
+ expect(boleto_novo.nosso_numero_boleto).to eql('06/00000004042-8')
122
122
  expect(boleto_novo.nosso_numero_dv).to eql(8)
123
- boleto_novo.numero_documento = 61900
124
- boleto_novo.carteira = "05"
125
- expect(boleto_novo.nosso_numero_boleto).to eql("05/00000061900-0")
123
+ boleto_novo.numero_documento = 61_900
124
+ boleto_novo.carteira = '05'
125
+ expect(boleto_novo.nosso_numero_boleto).to eql('05/00000061900-0')
126
126
  expect(boleto_novo.nosso_numero_dv).to eql(0)
127
127
  boleto_novo.numero_documento = 719
128
- boleto_novo.carteira = "07"
129
- expect(boleto_novo.nosso_numero_boleto).to eql("07/00000000719-6")
128
+ boleto_novo.carteira = '07'
129
+ expect(boleto_novo.nosso_numero_boleto).to eql('07/00000000719-6')
130
130
  expect(boleto_novo.nosso_numero_dv).to eql(6)
131
131
  end
132
132
 
133
- it "Montar agencia_conta_boleto" do
134
- boleto_novo = Brcobranca::Boleto::Bradesco.new(@valid_attributes)
133
+ it 'Montar agencia_conta_boleto' do
134
+ boleto_novo = described_class.new(@valid_attributes)
135
135
 
136
- expect(boleto_novo.agencia_conta_boleto).to eql("4042-8 / 0061900-0")
137
- boleto_novo.agencia = "0719"
138
- expect(boleto_novo.agencia_conta_boleto).to eql("0719-6 / 0061900-0")
139
- boleto_novo.agencia = "0548"
140
- boleto_novo.conta_corrente = "1448"
141
- expect(boleto_novo.agencia_conta_boleto).to eql("0548-7 / 0001448-6")
136
+ expect(boleto_novo.agencia_conta_boleto).to eql('4042-8 / 0061900-0')
137
+ boleto_novo.agencia = '0719'
138
+ expect(boleto_novo.agencia_conta_boleto).to eql('0719-6 / 0061900-0')
139
+ boleto_novo.agencia = '0548'
140
+ boleto_novo.conta_corrente = '1448'
141
+ expect(boleto_novo.agencia_conta_boleto).to eql('0548-7 / 0001448-6')
142
142
  end
143
143
 
144
- it "Busca logotipo do banco" do
145
- boleto_novo = Brcobranca::Boleto::Bradesco.new
144
+ it 'Busca logotipo do banco' do
145
+ boleto_novo = described_class.new
146
146
  expect(File.exist?(boleto_novo.logotipo)).to be_truthy
147
147
  expect(File.stat(boleto_novo.logotipo).zero?).to be_falsey
148
148
  end
149
149
 
150
- it "Gerar boleto nos formatos válidos com método to_" do
150
+ it 'Gerar boleto nos formatos válidos com método to_' do
151
151
  @valid_attributes[:valor] = 2952.95
152
- @valid_attributes[:data_documento] = Date.parse("2009-04-30")
152
+ @valid_attributes[:data_documento] = Date.parse('2009-04-30')
153
153
  @valid_attributes[:dias_vencimento] = 0
154
- @valid_attributes[:numero_documento] = "75896452"
155
- @valid_attributes[:conta_corrente] = "0403005"
156
- @valid_attributes[:agencia] = "1172"
157
- boleto_novo = Brcobranca::Boleto::Bradesco.new(@valid_attributes)
158
-
159
- %w| pdf jpg tif png |.each do |format|
160
- file_body=boleto_novo.send("to_#{format}".to_sym)
161
- tmp_file=Tempfile.new("foobar." << format)
154
+ @valid_attributes[:numero_documento] = '75896452'
155
+ @valid_attributes[:conta_corrente] = '0403005'
156
+ @valid_attributes[:agencia] = '1172'
157
+ boleto_novo = described_class.new(@valid_attributes)
158
+
159
+ %w(pdf jpg tif png).each do |format|
160
+ file_body = boleto_novo.send("to_#{format}".to_sym)
161
+ tmp_file = Tempfile.new('foobar.' << format)
162
162
  tmp_file.puts file_body
163
163
  tmp_file.close
164
164
  expect(File.exist?(tmp_file.path)).to be_truthy
@@ -168,18 +168,18 @@ describe Brcobranca::Boleto::Bradesco do
168
168
  end
169
169
  end
170
170
 
171
- it "Gerar boleto nos formatos válidos" do
171
+ it 'Gerar boleto nos formatos válidos' do
172
172
  @valid_attributes[:valor] = 2952.95
173
- @valid_attributes[:data_documento] = Date.parse("2009-04-30")
173
+ @valid_attributes[:data_documento] = Date.parse('2009-04-30')
174
174
  @valid_attributes[:dias_vencimento] = 0
175
- @valid_attributes[:numero_documento] = "75896452"
176
- @valid_attributes[:conta_corrente] = "0403005"
177
- @valid_attributes[:agencia] = "1172"
178
- boleto_novo = Brcobranca::Boleto::Bradesco.new(@valid_attributes)
179
-
180
- %w| pdf jpg tif png |.each do |format|
181
- file_body=boleto_novo.to(format)
182
- tmp_file=Tempfile.new("foobar." << format)
175
+ @valid_attributes[:numero_documento] = '75896452'
176
+ @valid_attributes[:conta_corrente] = '0403005'
177
+ @valid_attributes[:agencia] = '1172'
178
+ boleto_novo = described_class.new(@valid_attributes)
179
+
180
+ %w(pdf jpg tif png).each do |format|
181
+ file_body = boleto_novo.to(format)
182
+ tmp_file = Tempfile.new('foobar.' << format)
183
183
  tmp_file.puts file_body
184
184
  tmp_file.close
185
185
  expect(File.exist?(tmp_file.path)).to be_truthy
@@ -5,289 +5,289 @@ describe Brcobranca::Boleto::BancoBrasil do #:nodoc:[all]
5
5
 
6
6
  before(:each) do
7
7
  @valid_attributes = {
8
- :especie_documento => "DM",
9
- :moeda => "9",
10
- :data_documento => Date.today,
11
- :dias_vencimento => 1,
12
- :aceite => "S",
13
- :quantidade => 1,
14
- :valor => 0.0,
15
- :local_pagamento => "QUALQUER BANCO ATÉ O VENCIMENTO",
16
- :cedente => "Kivanio Barbosa",
17
- :documento_cedente => "12345678912",
18
- :sacado => "Claudio Pozzebom",
19
- :sacado_documento => "12345678900",
20
- :agencia => "4042",
21
- :conta_corrente => "61900",
22
- :convenio => 12387989,
23
- :numero_documento => "777700168"
8
+ especie_documento: 'DM',
9
+ moeda: '9',
10
+ data_documento: Date.today,
11
+ dias_vencimento: 1,
12
+ aceite: 'S',
13
+ quantidade: 1,
14
+ valor: 0.0,
15
+ local_pagamento: 'QUALQUER BANCO ATÉ O VENCIMENTO',
16
+ cedente: 'Kivanio Barbosa',
17
+ documento_cedente: '12345678912',
18
+ sacado: 'Claudio Pozzebom',
19
+ sacado_documento: '12345678900',
20
+ agencia: '4042',
21
+ conta_corrente: '61900',
22
+ convenio: 12_387_989,
23
+ numero_documento: '777700168'
24
24
  }
25
25
  end
26
26
 
27
- it "Criar nova instancia com atributos padrões" do
28
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new
29
- expect(boleto_novo.banco).to eql("001")
30
- expect(boleto_novo.especie_documento).to eql("DM")
31
- expect(boleto_novo.especie).to eql("R$")
32
- expect(boleto_novo.moeda).to eql("9")
27
+ it 'Criar nova instancia com atributos padrões' do
28
+ boleto_novo = described_class.new
29
+ expect(boleto_novo.banco).to eql('001')
30
+ expect(boleto_novo.especie_documento).to eql('DM')
31
+ expect(boleto_novo.especie).to eql('R$')
32
+ expect(boleto_novo.moeda).to eql('9')
33
33
  expect(boleto_novo.data_documento).to eql(Date.today)
34
34
  expect(boleto_novo.dias_vencimento).to eql(1)
35
35
  expect(boleto_novo.data_vencimento).to eql(Date.today + 1)
36
- expect(boleto_novo.aceite).to eql("S")
36
+ expect(boleto_novo.aceite).to eql('S')
37
37
  expect(boleto_novo.quantidade).to eql(1)
38
38
  expect(boleto_novo.valor).to eql(0.0)
39
39
  expect(boleto_novo.valor_documento).to eql(0.0)
40
- expect(boleto_novo.local_pagamento).to eql("QUALQUER BANCO ATÉ O VENCIMENTO")
41
- expect(boleto_novo.carteira).to eql("18")
40
+ expect(boleto_novo.local_pagamento).to eql('QUALQUER BANCO ATÉ O VENCIMENTO')
41
+ expect(boleto_novo.carteira).to eql('18')
42
42
  expect(boleto_novo.codigo_servico).to be_falsey
43
43
  end
44
44
 
45
- it "Criar nova instancia com atributos válidos" do
46
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
47
- expect(boleto_novo.banco).to eql("001")
48
- expect(boleto_novo.especie_documento).to eql("DM")
49
- expect(boleto_novo.especie).to eql("R$")
50
- expect(boleto_novo.moeda).to eql("9")
45
+ it 'Criar nova instancia com atributos válidos' do
46
+ boleto_novo = described_class.new(@valid_attributes)
47
+ expect(boleto_novo.banco).to eql('001')
48
+ expect(boleto_novo.especie_documento).to eql('DM')
49
+ expect(boleto_novo.especie).to eql('R$')
50
+ expect(boleto_novo.moeda).to eql('9')
51
51
  expect(boleto_novo.data_documento).to eql(Date.today)
52
52
  expect(boleto_novo.dias_vencimento).to eql(1)
53
53
  expect(boleto_novo.data_vencimento).to eql(Date.today + 1)
54
- expect(boleto_novo.aceite).to eql("S")
54
+ expect(boleto_novo.aceite).to eql('S')
55
55
  expect(boleto_novo.quantidade).to eql(1)
56
56
  expect(boleto_novo.valor).to eql(0.0)
57
57
  expect(boleto_novo.valor_documento).to eql(0.0)
58
- expect(boleto_novo.local_pagamento).to eql("QUALQUER BANCO ATÉ O VENCIMENTO")
59
- expect(boleto_novo.cedente).to eql("Kivanio Barbosa")
60
- expect(boleto_novo.documento_cedente).to eql("12345678912")
61
- expect(boleto_novo.sacado).to eql("Claudio Pozzebom")
62
- expect(boleto_novo.sacado_documento).to eql("12345678900")
63
- expect(boleto_novo.conta_corrente).to eql("00061900")
64
- expect(boleto_novo.agencia).to eql("4042")
65
- expect(boleto_novo.convenio).to eql(12387989)
66
- expect(boleto_novo.numero_documento).to eql("777700168")
67
- expect(boleto_novo.carteira).to eql("18")
58
+ expect(boleto_novo.local_pagamento).to eql('QUALQUER BANCO ATÉ O VENCIMENTO')
59
+ expect(boleto_novo.cedente).to eql('Kivanio Barbosa')
60
+ expect(boleto_novo.documento_cedente).to eql('12345678912')
61
+ expect(boleto_novo.sacado).to eql('Claudio Pozzebom')
62
+ expect(boleto_novo.sacado_documento).to eql('12345678900')
63
+ expect(boleto_novo.conta_corrente).to eql('00061900')
64
+ expect(boleto_novo.agencia).to eql('4042')
65
+ expect(boleto_novo.convenio).to eql(12_387_989)
66
+ expect(boleto_novo.numero_documento).to eql('777700168')
67
+ expect(boleto_novo.carteira).to eql('18')
68
68
  expect(boleto_novo.codigo_servico).to be_falsey
69
69
  end
70
70
 
71
- it "Montar código de barras para convenio de 8 digitos e nosso número de 9" do
71
+ it 'Montar código de barras para convenio de 8 digitos e nosso número de 9' do
72
72
  @valid_attributes[:valor] = 135.00
73
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
73
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
74
74
  @valid_attributes[:dias_vencimento] = 0
75
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
75
+ boleto_novo = described_class.new(@valid_attributes)
76
76
 
77
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("0000001238798977770016818")
78
- expect(boleto_novo.codigo_barras).to eql("00193376900000135000000001238798977770016818")
79
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00190.00009 01238.798977 77700.168188 3 37690000013500")
77
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('0000001238798977770016818')
78
+ expect(boleto_novo.codigo_barras).to eql('00193376900000135000000001238798977770016818')
79
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00190.00009 01238.798977 77700.168188 3 37690000013500')
80
80
  expect(boleto_novo.conta_corrente_dv).to eql(0)
81
81
  expect(boleto_novo.nosso_numero_dv).to eql(7)
82
82
 
83
83
  @valid_attributes[:dias_vencimento] = 1
84
- @valid_attributes[:numero_documento] = "7700168"
85
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
84
+ @valid_attributes[:numero_documento] = '7700168'
85
+ boleto_novo = described_class.new(@valid_attributes)
86
86
 
87
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("0000001238798900770016818")
88
- expect(boleto_novo.codigo_barras).to eql("00193377000000135000000001238798900770016818")
89
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00190.00009 01238.798902 07700.168185 3 37700000013500")
87
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('0000001238798900770016818')
88
+ expect(boleto_novo.codigo_barras).to eql('00193377000000135000000001238798900770016818')
89
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00190.00009 01238.798902 07700.168185 3 37700000013500')
90
90
  expect(boleto_novo.conta_corrente_dv).to eql(0)
91
91
  expect(boleto_novo.nosso_numero_dv).to eql(7)
92
92
  end
93
93
 
94
- it "Montar código de barras para convenio de 7 digitos e nosso numero de 10" do
94
+ it 'Montar código de barras para convenio de 7 digitos e nosso numero de 10' do
95
95
  @valid_attributes[:valor] = 135.00
96
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
96
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
97
97
  @valid_attributes[:dias_vencimento] = 2
98
- @valid_attributes[:convenio] = 1238798
99
- @valid_attributes[:numero_documento] = "7777700168"
100
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
98
+ @valid_attributes[:convenio] = 1_238_798
99
+ @valid_attributes[:numero_documento] = '7777700168'
100
+ boleto_novo = described_class.new(@valid_attributes)
101
101
 
102
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("0000001238798777770016818")
103
- expect(boleto_novo.codigo_barras).to eql("00193377100000135000000001238798777770016818")
104
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00190.00009 01238.798779 77700.168188 3 37710000013500")
102
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('0000001238798777770016818')
103
+ expect(boleto_novo.codigo_barras).to eql('00193377100000135000000001238798777770016818')
104
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00190.00009 01238.798779 77700.168188 3 37710000013500')
105
105
  expect(boleto_novo.conta_corrente_dv).to eql(0)
106
106
 
107
107
  @valid_attributes[:valor] = 723.56
108
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
108
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
109
109
  @valid_attributes[:dias_vencimento] = 2
110
- @valid_attributes[:convenio] = 1238798
111
- @valid_attributes[:numero_documento] = "7777700168"
112
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
110
+ @valid_attributes[:convenio] = 1_238_798
111
+ @valid_attributes[:numero_documento] = '7777700168'
112
+ boleto_novo = described_class.new(@valid_attributes)
113
113
 
114
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("0000001238798777770016818")
115
- expect(boleto_novo.codigo_barras).to eql("00195377100000723560000001238798777770016818")
116
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00190.00009 01238.798779 77700.168188 5 37710000072356")
114
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('0000001238798777770016818')
115
+ expect(boleto_novo.codigo_barras).to eql('00195377100000723560000001238798777770016818')
116
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00190.00009 01238.798779 77700.168188 5 37710000072356')
117
117
  expect(boleto_novo.conta_corrente_dv).to eql(0)
118
118
 
119
119
  @valid_attributes[:valor] = 723.56
120
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
120
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
121
121
  @valid_attributes[:dias_vencimento] = 0
122
- @valid_attributes[:convenio] = 1238798
123
- @valid_attributes[:numero_documento] = "7777700168"
124
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
122
+ @valid_attributes[:convenio] = 1_238_798
123
+ @valid_attributes[:numero_documento] = '7777700168'
124
+ boleto_novo = described_class.new(@valid_attributes)
125
125
 
126
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("0000001238798777770016818")
127
- expect(boleto_novo.codigo_barras).to eql("00194376900000723560000001238798777770016818")
128
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00190.00009 01238.798779 77700.168188 4 37690000072356")
126
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('0000001238798777770016818')
127
+ expect(boleto_novo.codigo_barras).to eql('00194376900000723560000001238798777770016818')
128
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00190.00009 01238.798779 77700.168188 4 37690000072356')
129
129
  expect(boleto_novo.conta_corrente_dv).to eql(0)
130
130
  end
131
131
 
132
- it "Montar código de barras para convenio de 6 digitos e nosso numero de 5" do
132
+ it 'Montar código de barras para convenio de 6 digitos e nosso numero de 5' do
133
133
  @valid_attributes[:valor] = 135.00
134
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
134
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
135
135
  @valid_attributes[:dias_vencimento] = 0
136
- @valid_attributes[:convenio] = 123879
137
- @valid_attributes[:numero_documento] = "1234"
138
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
136
+ @valid_attributes[:convenio] = 123_879
137
+ @valid_attributes[:numero_documento] = '1234'
138
+ boleto_novo = described_class.new(@valid_attributes)
139
139
 
140
140
  expect(boleto_novo.conta_corrente_dv).to eql(0)
141
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("1238790123440420006190018")
142
- expect(boleto_novo.codigo_barras).to eql("00192376900000135001238790123440420006190018")
143
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00191.23876 90123.440423 00061.900189 2 37690000013500")
141
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('1238790123440420006190018')
142
+ expect(boleto_novo.codigo_barras).to eql('00192376900000135001238790123440420006190018')
143
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00191.23876 90123.440423 00061.900189 2 37690000013500')
144
144
  end
145
145
 
146
- it "Montar código de barras para convenio de 6 digitos, nosso numero de 17 e carteira 16" do
146
+ it 'Montar código de barras para convenio de 6 digitos, nosso numero de 17 e carteira 16' do
147
147
  @valid_attributes[:valor] = 135.00
148
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
148
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
149
149
  @valid_attributes[:dias_vencimento] = 0
150
- @valid_attributes[:convenio] = 123879
151
- @valid_attributes[:numero_documento] = "1234567899"
152
- @valid_attributes[:carteira] = "16"
150
+ @valid_attributes[:convenio] = 123_879
151
+ @valid_attributes[:numero_documento] = '1234567899'
152
+ @valid_attributes[:carteira] = '16'
153
153
  @valid_attributes[:codigo_servico] = true
154
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
154
+ boleto_novo = described_class.new(@valid_attributes)
155
155
 
156
156
  expect(boleto_novo.conta_corrente_dv).to eql(0)
157
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("1238790000000123456789921")
158
- expect(boleto_novo.codigo_barras).to eql("00199376900000135001238790000000123456789921")
159
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00191.23876 90000.000126 34567.899215 9 37690000013500")
157
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('1238790000000123456789921')
158
+ expect(boleto_novo.codigo_barras).to eql('00199376900000135001238790000000123456789921')
159
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00191.23876 90000.000126 34567.899215 9 37690000013500')
160
160
  end
161
161
 
162
- it "Montar código de barras para convenio de 6 digitos, nosso numero de 17 e carteira 18" do
162
+ it 'Montar código de barras para convenio de 6 digitos, nosso numero de 17 e carteira 18' do
163
163
  @valid_attributes[:valor] = 135.00
164
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
164
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
165
165
  @valid_attributes[:dias_vencimento] = 0
166
- @valid_attributes[:convenio] = 123879
167
- @valid_attributes[:numero_documento] = "1234567899"
168
- @valid_attributes[:carteira] = "18"
166
+ @valid_attributes[:convenio] = 123_879
167
+ @valid_attributes[:numero_documento] = '1234567899'
168
+ @valid_attributes[:carteira] = '18'
169
169
  @valid_attributes[:codigo_servico] = true
170
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
170
+ boleto_novo = described_class.new(@valid_attributes)
171
171
 
172
172
  expect(boleto_novo.conta_corrente_dv).to eql(0)
173
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("1238790000000123456789921")
174
- expect(boleto_novo.codigo_barras).to eql("00199376900000135001238790000000123456789921")
175
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00191.23876 90000.000126 34567.899215 9 37690000013500")
173
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('1238790000000123456789921')
174
+ expect(boleto_novo.codigo_barras).to eql('00199376900000135001238790000000123456789921')
175
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00191.23876 90000.000126 34567.899215 9 37690000013500')
176
176
  end
177
177
 
178
- it "Não montar código de barras para convenio de 6 digitos, nosso numero de 17 e carteira 17" do
178
+ it 'Não montar código de barras para convenio de 6 digitos, nosso numero de 17 e carteira 17' do
179
179
  @valid_attributes[:valor] = 135.00
180
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
180
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
181
181
  @valid_attributes[:dias_vencimento] = 0
182
- @valid_attributes[:convenio] = 123879
183
- @valid_attributes[:numero_documento] = "1234567899"
184
- @valid_attributes[:carteira] = "17"
182
+ @valid_attributes[:convenio] = 123_879
183
+ @valid_attributes[:numero_documento] = '1234567899'
184
+ @valid_attributes[:carteira] = '17'
185
185
  @valid_attributes[:codigo_servico] = true
186
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
186
+ boleto_novo = described_class.new(@valid_attributes)
187
187
 
188
188
  expect(boleto_novo.conta_corrente_dv).to eql(0)
189
189
  expect { boleto_novo.codigo_barras_segunda_parte }.to raise_error(RuntimeError)
190
- expect { boleto_novo.codigo_barras_segunda_parte }.to raise_error("Só é permitido emitir boletos com nosso número de 17 dígitos com carteiras 16 ou 18. Sua carteira atual é 17")
190
+ expect { boleto_novo.codigo_barras_segunda_parte }.to raise_error('Só é permitido emitir boletos com nosso número de 17 dígitos com carteiras 16 ou 18. Sua carteira atual é 17')
191
191
  end
192
192
 
193
- it "Montar código de barras para convenio de 4 digitos e nosso numero de 7" do
193
+ it 'Montar código de barras para convenio de 4 digitos e nosso numero de 7' do
194
194
  @valid_attributes[:valor] = 135.00
195
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
195
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
196
196
  @valid_attributes[:dias_vencimento] = 0
197
197
  @valid_attributes[:convenio] = 1238
198
- @valid_attributes[:numero_documento] = "123456"
198
+ @valid_attributes[:numero_documento] = '123456'
199
199
  @valid_attributes[:codigo_servico] = true
200
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
200
+ boleto_novo = described_class.new(@valid_attributes)
201
201
 
202
202
  expect(boleto_novo.conta_corrente_dv).to eql(0)
203
- expect(boleto_novo.codigo_barras_segunda_parte).to eql("1238012345640420006190018")
204
- expect(boleto_novo.codigo_barras).to eql("00191376900000135001238012345640420006190018")
205
- expect(boleto_novo.codigo_barras.linha_digitavel).to eql("00191.23801 12345.640424 00061.900189 1 37690000013500")
203
+ expect(boleto_novo.codigo_barras_segunda_parte).to eql('1238012345640420006190018')
204
+ expect(boleto_novo.codigo_barras).to eql('00191376900000135001238012345640420006190018')
205
+ expect(boleto_novo.codigo_barras.linha_digitavel).to eql('00191.23801 12345.640424 00061.900189 1 37690000013500')
206
206
  end
207
207
 
208
- it "Não permitir gerar boleto com atributos inválido" do
209
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new
208
+ it 'Não permitir gerar boleto com atributos inválido' do
209
+ boleto_novo = described_class.new
210
210
  expect { boleto_novo.codigo_barras }.to raise_error(Brcobranca::NaoImplementado)
211
211
  expect(boleto_novo.errors.count).to eql(2)
212
212
  end
213
213
 
214
- it "Calcular agencia_dv" do
215
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
216
- boleto_novo.agencia = "85068014982"
214
+ it 'Calcular agencia_dv' do
215
+ boleto_novo = described_class.new(@valid_attributes)
216
+ boleto_novo.agencia = '85068014982'
217
217
  expect(boleto_novo.agencia_dv).to eql(9)
218
- boleto_novo.agencia = "05009401448"
218
+ boleto_novo.agencia = '05009401448'
219
219
  expect(boleto_novo.agencia_dv).to eql(1)
220
- boleto_novo.agencia = "12387987777700168"
220
+ boleto_novo.agencia = '12387987777700168'
221
221
  expect(boleto_novo.agencia_dv).to eql(2)
222
- boleto_novo.agencia = "4042"
222
+ boleto_novo.agencia = '4042'
223
223
  expect(boleto_novo.agencia_dv).to eql(8)
224
- boleto_novo.agencia = "61900"
224
+ boleto_novo.agencia = '61900'
225
225
  expect(boleto_novo.agencia_dv).to eql(0)
226
- boleto_novo.agencia = "0719"
226
+ boleto_novo.agencia = '0719'
227
227
  expect(boleto_novo.agencia_dv).to eql(6)
228
- boleto_novo.agencia = 85068014982
228
+ boleto_novo.agencia = 85_068_014_982
229
229
  expect(boleto_novo.agencia_dv).to eql(9)
230
- boleto_novo.agencia = 5009401448
230
+ boleto_novo.agencia = 5_009_401_448
231
231
  expect(boleto_novo.agencia_dv).to eql(1)
232
- boleto_novo.agencia = 12387987777700168
232
+ boleto_novo.agencia = 12_387_987_777_700_168
233
233
  expect(boleto_novo.agencia_dv).to eql(2)
234
234
  boleto_novo.agencia = 4042
235
235
  expect(boleto_novo.agencia_dv).to eql(8)
236
- boleto_novo.agencia = 61900
236
+ boleto_novo.agencia = 61_900
237
237
  expect(boleto_novo.agencia_dv).to eql(0)
238
238
  boleto_novo.agencia = 719
239
239
  expect(boleto_novo.agencia_dv).to eql(6)
240
240
  end
241
241
 
242
- it "Montar nosso_numero_boleto" do
243
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
244
- boleto_novo.numero_documento = "4042"
245
- expect(boleto_novo.nosso_numero_boleto).to eql("12387989000004042-4")
242
+ it 'Montar nosso_numero_boleto' do
243
+ boleto_novo = described_class.new(@valid_attributes)
244
+ boleto_novo.numero_documento = '4042'
245
+ expect(boleto_novo.nosso_numero_boleto).to eql('12387989000004042-4')
246
246
  expect(boleto_novo.nosso_numero_dv).to eql(4)
247
- boleto_novo.numero_documento = "61900"
248
- expect(boleto_novo.nosso_numero_boleto).to eql("12387989000061900-7")
247
+ boleto_novo.numero_documento = '61900'
248
+ expect(boleto_novo.nosso_numero_boleto).to eql('12387989000061900-7')
249
249
  expect(boleto_novo.nosso_numero_dv).to eql(7)
250
- boleto_novo.numero_documento = "0719"
251
- expect(boleto_novo.nosso_numero_boleto).to eql("12387989000000719-2")
250
+ boleto_novo.numero_documento = '0719'
251
+ expect(boleto_novo.nosso_numero_boleto).to eql('12387989000000719-2')
252
252
  expect(boleto_novo.nosso_numero_dv).to eql(2)
253
253
  boleto_novo.numero_documento = 4042
254
- expect(boleto_novo.nosso_numero_boleto).to eql("12387989000004042-4")
254
+ expect(boleto_novo.nosso_numero_boleto).to eql('12387989000004042-4')
255
255
  expect(boleto_novo.nosso_numero_dv).to eql(4)
256
- boleto_novo.numero_documento = 61900
257
- expect(boleto_novo.nosso_numero_boleto).to eql("12387989000061900-7")
256
+ boleto_novo.numero_documento = 61_900
257
+ expect(boleto_novo.nosso_numero_boleto).to eql('12387989000061900-7')
258
258
  expect(boleto_novo.nosso_numero_dv).to eql(7)
259
259
  boleto_novo.numero_documento = 719
260
- expect(boleto_novo.nosso_numero_boleto).to eql("12387989000000719-2")
260
+ expect(boleto_novo.nosso_numero_boleto).to eql('12387989000000719-2')
261
261
  expect(boleto_novo.nosso_numero_dv).to eql(2)
262
262
  end
263
263
 
264
- it "Montar agencia_conta_boleto" do
265
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
264
+ it 'Montar agencia_conta_boleto' do
265
+ boleto_novo = described_class.new(@valid_attributes)
266
266
 
267
- expect(boleto_novo.agencia_conta_boleto).to eql("4042-8 / 00061900-0")
268
- boleto_novo.agencia = "0719"
269
- expect(boleto_novo.agencia_conta_boleto).to eql("0719-6 / 00061900-0")
270
- boleto_novo.agencia = "0548"
271
- boleto_novo.conta_corrente = "1448"
272
- expect(boleto_novo.agencia_conta_boleto).to eql("0548-7 / 00001448-6")
267
+ expect(boleto_novo.agencia_conta_boleto).to eql('4042-8 / 00061900-0')
268
+ boleto_novo.agencia = '0719'
269
+ expect(boleto_novo.agencia_conta_boleto).to eql('0719-6 / 00061900-0')
270
+ boleto_novo.agencia = '0548'
271
+ boleto_novo.conta_corrente = '1448'
272
+ expect(boleto_novo.agencia_conta_boleto).to eql('0548-7 / 00001448-6')
273
273
  end
274
274
 
275
- it "Busca logotipo do banco" do
276
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new
275
+ it 'Busca logotipo do banco' do
276
+ boleto_novo = described_class.new
277
277
  expect(File.exist?(boleto_novo.logotipo)).to be_truthy
278
278
  expect(File.stat(boleto_novo.logotipo).zero?).to be_falsey
279
279
  end
280
280
 
281
- it "Gerar boleto nos formatos válidos com método to_" do
281
+ it 'Gerar boleto nos formatos válidos com método to_' do
282
282
  @valid_attributes[:valor] = 135.00
283
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
283
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
284
284
  @valid_attributes[:dias_vencimento] = 2
285
- @valid_attributes[:convenio] = 1238798
286
- @valid_attributes[:numero_documento] = "7777700168"
287
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
288
- %w| pdf jpg tif png |.each do |format|
289
- file_body=boleto_novo.send("to_#{format}".to_sym)
290
- tmp_file=Tempfile.new("foobar." << format)
285
+ @valid_attributes[:convenio] = 1_238_798
286
+ @valid_attributes[:numero_documento] = '7777700168'
287
+ boleto_novo = described_class.new(@valid_attributes)
288
+ %w(pdf jpg tif png).each do |format|
289
+ file_body = boleto_novo.send("to_#{format}".to_sym)
290
+ tmp_file = Tempfile.new('foobar.' << format)
291
291
  tmp_file.puts file_body
292
292
  tmp_file.close
293
293
  expect(File.exist?(tmp_file.path)).to be_truthy
@@ -297,16 +297,16 @@ describe Brcobranca::Boleto::BancoBrasil do #:nodoc:[all]
297
297
  end
298
298
  end
299
299
 
300
- it "Gerar boleto nos formatos válidos" do
300
+ it 'Gerar boleto nos formatos válidos' do
301
301
  @valid_attributes[:valor] = 135.00
302
- @valid_attributes[:data_documento] = Date.parse("2008-02-01")
302
+ @valid_attributes[:data_documento] = Date.parse('2008-02-01')
303
303
  @valid_attributes[:dias_vencimento] = 2
304
- @valid_attributes[:convenio] = 1238798
305
- @valid_attributes[:numero_documento] = "7777700168"
306
- boleto_novo = Brcobranca::Boleto::BancoBrasil.new(@valid_attributes)
307
- %w| pdf jpg tif png |.each do |format|
308
- file_body=boleto_novo.to(format)
309
- tmp_file=Tempfile.new("foobar." << format)
304
+ @valid_attributes[:convenio] = 1_238_798
305
+ @valid_attributes[:numero_documento] = '7777700168'
306
+ boleto_novo = described_class.new(@valid_attributes)
307
+ %w(pdf jpg tif png).each do |format|
308
+ file_body = boleto_novo.to(format)
309
+ tmp_file = Tempfile.new('foobar.' << format)
310
310
  tmp_file.puts file_body
311
311
  tmp_file.close
312
312
  expect(File.exist?(tmp_file.path)).to be_truthy