brcobranca 6.9.1 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +3 -0
  3. data/CHANGELOG.md +4 -0
  4. data/Gemfile.lock +7 -7
  5. data/README.md +14 -12
  6. data/Rakefile +1 -0
  7. data/brcobranca.gemspec +1 -0
  8. data/lib/brcobranca/arquivos/logos/banrisul.eps +121 -0
  9. data/lib/brcobranca/arquivos/logos/banrisul_carne.eps +121 -0
  10. data/lib/brcobranca/boleto/banco_brasil.rb +8 -8
  11. data/lib/brcobranca/boleto/banco_nordeste.rb +1 -0
  12. data/lib/brcobranca/boleto/banestes.rb +10 -10
  13. data/lib/brcobranca/boleto/banrisul.rb +84 -0
  14. data/lib/brcobranca/boleto/base.rb +6 -5
  15. data/lib/brcobranca/boleto/bradesco.rb +2 -1
  16. data/lib/brcobranca/boleto/caixa.rb +6 -5
  17. data/lib/brcobranca/boleto/hsbc.rb +7 -6
  18. data/lib/brcobranca/boleto/itau.rb +1 -0
  19. data/lib/brcobranca/boleto/santander.rb +1 -0
  20. data/lib/brcobranca/boleto/sicoob.rb +12 -11
  21. data/lib/brcobranca/boleto/sicredi.rb +1 -0
  22. data/lib/brcobranca/boleto/template/base.rb +5 -4
  23. data/lib/brcobranca/boleto/template/rghost.rb +7 -6
  24. data/lib/brcobranca/boleto/template/rghost_carne.rb +9 -9
  25. data/lib/brcobranca/boleto/unicred.rb +1 -1
  26. data/lib/brcobranca/calculo.rb +14 -15
  27. data/lib/brcobranca/calculo_data.rb +2 -0
  28. data/lib/brcobranca/currency.rb +4 -3
  29. data/lib/brcobranca/formatacao.rb +2 -1
  30. data/lib/brcobranca/formatacao_string.rb +1 -0
  31. data/lib/brcobranca/limpeza.rb +1 -0
  32. data/lib/brcobranca/remessa/base.rb +2 -1
  33. data/lib/brcobranca/remessa/cnab240/banco_brasil.rb +7 -6
  34. data/lib/brcobranca/remessa/cnab240/base.rb +16 -15
  35. data/lib/brcobranca/remessa/cnab240/caixa.rb +1 -0
  36. data/lib/brcobranca/remessa/cnab240/sicoob.rb +9 -9
  37. data/lib/brcobranca/remessa/cnab400/banco_brasil.rb +2 -3
  38. data/lib/brcobranca/remessa/cnab400/base.rb +8 -7
  39. data/lib/brcobranca/remessa/cnab400/bradesco.rb +2 -1
  40. data/lib/brcobranca/remessa/cnab400/citibank.rb +3 -2
  41. data/lib/brcobranca/remessa/cnab400/itau.rb +2 -1
  42. data/lib/brcobranca/remessa/cnab400/santander.rb +7 -5
  43. data/lib/brcobranca/remessa/cnab400/sicoob.rb +6 -5
  44. data/lib/brcobranca/remessa/pagamento.rb +4 -4
  45. data/lib/brcobranca/retorno/base.rb +1 -0
  46. data/lib/brcobranca/retorno/cnab240/base.rb +6 -7
  47. data/lib/brcobranca/retorno/cnab240/caixa.rb +1 -0
  48. data/lib/brcobranca/retorno/cnab240/santander.rb +3 -3
  49. data/lib/brcobranca/retorno/cnab240/sicoob.rb +7 -6
  50. data/lib/brcobranca/retorno/cnab400/base.rb +5 -6
  51. data/lib/brcobranca/retorno/cnab400/bradesco.rb +1 -0
  52. data/lib/brcobranca/retorno/cnab400/itau.rb +1 -0
  53. data/lib/brcobranca/retorno/retorno_cbr643.rb +1 -0
  54. data/lib/brcobranca/retorno/retorno_cnab240.rb +3 -2
  55. data/lib/brcobranca/retorno/retorno_cnab400.rb +1 -0
  56. data/lib/brcobranca/util/empresa.rb +2 -3
  57. data/lib/brcobranca/version.rb +2 -1
  58. data/lib/brcobranca.rb +3 -1
  59. data/spec/brcobranca/base_spec.rb +51 -50
  60. data/spec/brcobranca/boleto/banco_brasil_spec.rb +46 -45
  61. data/spec/brcobranca/boleto/banco_nordeste_spec.rb +13 -12
  62. data/spec/brcobranca/boleto/banestes_spec.rb +108 -105
  63. data/spec/brcobranca/boleto/banrisul_spec.rb +165 -0
  64. data/spec/brcobranca/boleto/bradesco_spec.rb +56 -52
  65. data/spec/brcobranca/boleto/caixa_spec.rb +9 -7
  66. data/spec/brcobranca/boleto/hsbc_spec.rb +17 -15
  67. data/spec/brcobranca/boleto/itau_spec.rb +22 -20
  68. data/spec/brcobranca/boleto/santander_spec.rb +16 -14
  69. data/spec/brcobranca/boleto/sicoob_spec.rb +94 -94
  70. data/spec/brcobranca/boleto/sicredi_spec.rb +32 -28
  71. data/spec/brcobranca/boleto/unicred_spec.rb +16 -14
  72. data/spec/brcobranca/boletos_em_lote_spec.rb +4 -3
  73. data/spec/brcobranca/calculo_data_spec.rb +2 -1
  74. data/spec/brcobranca/calculo_spec.rb +97 -97
  75. data/spec/brcobranca/currency_spec.rb +6 -5
  76. data/spec/brcobranca/formatacao_spec.rb +1 -0
  77. data/spec/brcobranca/formatacao_string_spec.rb +1 -2
  78. data/spec/brcobranca/limpeza_spec.rb +1 -0
  79. data/spec/brcobranca/remessa/base_spec.rb +11 -9
  80. data/spec/brcobranca/remessa/cnab240/banco_brasil_spec.rb +11 -9
  81. data/spec/brcobranca/remessa/cnab240/base_spec.rb +11 -9
  82. data/spec/brcobranca/remessa/cnab240/caixa_spec.rb +12 -10
  83. data/spec/brcobranca/remessa/cnab240/sicoob_spec.rb +13 -11
  84. data/spec/brcobranca/remessa/cnab400/banco_brasil_spec.rb +2 -1
  85. data/spec/brcobranca/remessa/cnab400/base_spec.rb +20 -18
  86. data/spec/brcobranca/remessa/cnab400/bradesco_spec.rb +11 -9
  87. data/spec/brcobranca/remessa/cnab400/citibank_spec.rb +11 -9
  88. data/spec/brcobranca/remessa/cnab400/itau_spec.rb +11 -9
  89. data/spec/brcobranca/remessa/cnab400/santander_spec.rb +12 -10
  90. data/spec/brcobranca/remessa/cnab400/sicoob_spec.rb +11 -9
  91. data/spec/brcobranca/remessa/pagamento_spec.rb +12 -10
  92. data/spec/brcobranca/retorno/cnab240/base_spec.rb +10 -9
  93. data/spec/brcobranca/retorno/cnab240/santander_spec.rb +23 -22
  94. data/spec/brcobranca/retorno/cnab240/sicoob_spec.rb +21 -20
  95. data/spec/brcobranca/retorno/cnab400/base_spec.rb +13 -12
  96. data/spec/brcobranca/retorno/cnab400/bradesco_spec.rb +3 -1
  97. data/spec/brcobranca/retorno/cnab400/itau_spec.rb +4 -1
  98. data/spec/brcobranca/retorno/retorno_cbr643_spec.rb +1 -0
  99. data/spec/brcobranca/retorno/retorno_cnab400_spec.rb +1 -0
  100. data/spec/brcobranca/retorno/retorno_cnab_240_spec.rb +1 -0
  101. data/spec/brcobranca/rghost_spec.rb +1 -0
  102. data/spec/brcobranca/util/empresa_spec.rb +13 -12
  103. data/spec/brcobranca_spec.rb +6 -5
  104. data/spec/spec_helper.rb +3 -3
  105. data/spec/support/remessa_helpers.rb +3 -1
  106. data/spec/support/shared_examples/busca_logotipo.rb +2 -0
  107. data/spec/support/shared_examples/cnab240.rb +22 -20
  108. data/spec/support/shared_examples/cnab400.rb +12 -12
  109. data/spec/support/shared_examples/formatos_validos.rb +6 -4
  110. metadata +7 -2
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab240::Base do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:params) do
18
20
  { empresa_mae: 'SOCIEDADE BRASILEIRA DE ZOOLOGIA LTDA',
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab240::Caixa do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:params) do
18
20
  { empresa_mae: 'SOCIEDADE BRASILEIRA DE ZOOLOGIA LTDA',
@@ -142,7 +144,7 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Caixa do
142
144
 
143
145
  context 'geracao remessa' do
144
146
  it_behaves_like 'cnab240'
145
-
147
+
146
148
  context 'trailer lote' do
147
149
  it 'trailer lote deve ter o complemento_trailer na posicao correta' do
148
150
  trailer = caixa.monta_trailer_lote 1, 4
@@ -1,4 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab240::Sicoob do
@@ -130,7 +132,7 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Sicoob do
130
132
 
131
133
  it 'formata o nosso numero' do
132
134
  nosso_numero = sicoob.formata_nosso_numero pagamento
133
- expect(nosso_numero).to eq "000000001201014 "
135
+ expect(nosso_numero).to eq '000000001201014 '
134
136
  end
135
137
  end
136
138
 
@@ -141,25 +143,25 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Sicoob do
141
143
  it 'trailer lote deve ter as informacoes nas posicoes corretas' do
142
144
  trailer = sicoob.monta_trailer_lote 1, 4
143
145
  expect(trailer[0..2]).to eq sicoob.cod_banco # cod. do banco
144
- expect(trailer[3..6]).to eq "0001" # numero do lote
145
- expect(trailer[17..22]).to eq "000004" # qtde de registros no lote
146
+ expect(trailer[3..6]).to eq '0001' # numero do lote
147
+ expect(trailer[17..22]).to eq '000004' # qtde de registros no lote
146
148
  # qtde de titulos em cobranca simples 6
147
149
  # Valor Total dos titulos em carteiras simples 15 2
148
- expect(trailer[23..28]).to eq "000001"
149
- expect(trailer[29..45]).to eq "00000000000005000"
150
+ expect(trailer[23..28]).to eq '000001'
151
+ expect(trailer[29..45]).to eq '00000000000005000'
150
152
 
151
153
  # qtde de titulos em cobranca vinculada 6
152
154
  # Valor Total dos titulos em carteiras vinculada 15 2
153
- expect(trailer[46..51]).to eq "000000"
154
- expect(trailer[52..68]).to eq "00000000000000000"
155
+ expect(trailer[46..51]).to eq '000000'
156
+ expect(trailer[52..68]).to eq '00000000000000000'
155
157
  # qtde de titulos em cobranca caucionada 6
156
158
  # Valor Total dos titulos em carteiras caucionada 15 2
157
- expect(trailer[69..74]).to eq "000000"
158
- expect(trailer[75..91]).to eq "00000000000000000"
159
+ expect(trailer[69..74]).to eq '000000'
160
+ expect(trailer[75..91]).to eq '00000000000000000'
159
161
  # qtde de titulos em cobranca descontada 6
160
162
  # Valor Total dos titulos em carteiras descontada 15 2
161
- expect(trailer[92..97]).to eq "000000"
162
- expect(trailer[98..114]).to eq "00000000000000000"
163
+ expect(trailer[92..97]).to eq '000000'
164
+ expect(trailer[98..114]).to eq '00000000000000000'
163
165
  # numero do aviso de lancamento 8
164
166
  expect(trailer[115..122]).to eq ''.rjust(8, ' ')
165
167
  # CNAB Uso Exclusivo FEBRABAN/CNAB 117
@@ -1,4 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasil do
@@ -135,7 +137,6 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasil do
135
137
  expect(info_conta[5..12]).to eq '00001234' # num. da conta corrente
136
138
  expect(info_conta[13]).to eq banco_brasil.conta_corrente_dv.to_s # digito da conta corrente
137
139
  end
138
-
139
140
  end
140
141
 
141
142
  context 'monta remessa' do
@@ -1,30 +1,32 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab400::Base do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:pagamento_2) do
18
20
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
19
- data_vencimento: Date.current,
20
- nosso_numero: 123,
21
- documento_sacado: '12345678901',
22
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
23
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
24
- bairro_sacado: 'São josé dos quatro apostolos magros',
25
- cep_sacado: '12345678',
26
- cidade_sacado: 'Santa rita de cássia maria da silva',
27
- uf_sacado: 'SP')
21
+ data_vencimento: Date.current,
22
+ nosso_numero: 123,
23
+ documento_sacado: '12345678901',
24
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
25
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
26
+ bairro_sacado: 'São josé dos quatro apostolos magros',
27
+ cep_sacado: '12345678',
28
+ cidade_sacado: 'Santa rita de cássia maria da silva',
29
+ uf_sacado: 'SP')
28
30
  end
29
31
  let(:params) do
30
32
  { empresa_mae: 'SOCIEDADE BRASILEIRA DE ZOOLOGIA LTDA',
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab400::Bradesco do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:params) do
18
20
  { carteira: '01',
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab400::Citibank do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:params) do
18
20
  {
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab400::Itau do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:params) do
18
20
  { carteira: '123',
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab400::Santander do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:params) do
18
20
  {
@@ -38,7 +40,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Santander do
38
40
  it 'deve ser invalido' do
39
41
  object = subject.class.new
40
42
  expect(object.invalid?).to be true
41
- expect(object.errors.full_messages).to eq(["Pagamentos não pode estar em branco.", "Pagamentos deve ser uma coleção (Array).", "Empresa mae não pode estar em branco.", "Documento cedente não pode estar em branco.", "Documento cedente deve ter entre 11 e 14 dígitos.", "Codigo transmissao não pode estar em branco.", "Agencia não pode estar em branco.", "Conta corrente não pode estar em branco.", "Digito conta não pode estar em branco."])
43
+ expect(object.errors.full_messages).to eq(['Pagamentos não pode estar em branco.', 'Pagamentos deve ser uma coleção (Array).', 'Empresa mae não pode estar em branco.', 'Documento cedente não pode estar em branco.', 'Documento cedente deve ter entre 11 e 14 dígitos.', 'Codigo transmissao não pode estar em branco.', 'Agencia não pode estar em branco.', 'Conta corrente não pode estar em branco.', 'Digito conta não pode estar em branco.'])
42
44
  end
43
45
 
44
46
  it 'deve ser invalido se a carteira tiver mais de 3 digitos' do
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Cnab400::Sicoob do
5
7
  let(:pagamento) do
6
8
  Brcobranca::Remessa::Pagamento.new(valor: 199.9,
7
- data_vencimento: Date.current,
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.current,
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
  let(:params) do
18
20
  { carteira: '01',
@@ -1,18 +1,20 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Remessa::Pagamento do
5
7
  let(:pagamento) do
6
8
  subject.class.new(valor: 199.9,
7
- data_vencimento: Date.parse('2015-06-25'),
8
- nosso_numero: 123,
9
- documento_sacado: '12345678901',
10
- nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
11
- endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
12
- bairro_sacado: 'São josé dos quatro apostolos magros',
13
- cep_sacado: '12345678',
14
- cidade_sacado: 'Santa rita de cássia maria da silva',
15
- uf_sacado: 'SP')
9
+ data_vencimento: Date.parse('2015-06-25'),
10
+ nosso_numero: 123,
11
+ documento_sacado: '12345678901',
12
+ nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
13
+ endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
14
+ bairro_sacado: 'São josé dos quatro apostolos magros',
15
+ cep_sacado: '12345678',
16
+ cidade_sacado: 'Santa rita de cássia maria da silva',
17
+ uf_sacado: 'SP')
16
18
  end
17
19
 
18
20
  context 'validacoes' do
@@ -66,7 +68,7 @@ RSpec.describe Brcobranca::Remessa::Pagamento do
66
68
  end
67
69
 
68
70
  it 'deve ser invalido se UF do sacado for maior que 2 caracteres' do
69
- pagamento.uf_sacado = "Santa Catarina"
71
+ pagamento.uf_sacado = 'Santa Catarina'
70
72
  expect(pagamento.invalid?).to be true
71
73
  expect(pagamento.errors.full_messages).to include('Uf sacado deve ter 2 dígitos.')
72
74
  end
@@ -1,22 +1,23 @@
1
1
  # -*_ encoding: utf-8 -*-
2
- require "spec_helper"
2
+ #
3
+ require 'spec_helper'
3
4
 
4
5
  RSpec.describe Brcobranca::Retorno::Cnab240::Base do
5
- let(:arquivo) { File.join(File.dirname(__FILE__), "..", "..", "..", "arquivos", nome_arquivo) }
6
+ let(:arquivo) { File.join(File.dirname(__FILE__), '..', '..', '..', 'arquivos', nome_arquivo) }
6
7
 
7
- describe "#load_lines" do
8
- it "retorna nil se o arquivo é nil" do
9
- expect(Brcobranca::Retorno::Cnab240::Base.load_lines(nil)).to be_nil
8
+ describe '#load_lines' do
9
+ it 'retorna nil se o arquivo é nil' do
10
+ expect(described_class.load_lines(nil)).to be_nil
10
11
  end
11
12
 
12
- context "Sicoob" do
13
- let(:nome_arquivo) { "CNAB240SICOOB.RET" }
13
+ context 'Sicoob' do
14
+ let(:nome_arquivo) { 'CNAB240SICOOB.RET' }
14
15
 
15
16
  subject { Brcobranca::Retorno::Cnab240::Sicoob }
16
17
 
17
- it "lê o arquivo pela classe do Sicoob" do
18
+ it 'lê o arquivo pela classe do Sicoob' do
18
19
  expect(subject).to receive(:load_lines).with(arquivo, {})
19
- Brcobranca::Retorno::Cnab240::Base.load_lines(arquivo)
20
+ described_class.load_lines(arquivo)
20
21
  end
21
22
  end
22
23
  end
@@ -1,32 +1,33 @@
1
1
  # -*_ encoding: utf-8 -*-
2
- require "spec_helper"
2
+ #
3
+ require 'spec_helper'
3
4
  RSpec.describe Brcobranca::Retorno::Cnab240::Santander do
4
5
  before do
5
- @arquivo = File.join(File.dirname(__FILE__), "..", "..", "..", "arquivos", "CNAB240SANTANDER.RET")
6
+ @arquivo = File.join(File.dirname(__FILE__), '..', '..', '..', 'arquivos', 'CNAB240SANTANDER.RET')
6
7
  end
7
8
 
8
- it "Transforma arquivo de retorno em objetos de retorno retornando somente as linhas de pagamentos de titulos sem registro" do
9
+ it 'Transforma arquivo de retorno em objetos de retorno retornando somente as linhas de pagamentos de titulos sem registro' do
9
10
  pagamentos = described_class.load_lines(@arquivo)
10
11
  expect(pagamentos.size).to eq(6)
11
12
  pagamento = pagamentos.last
12
- expect(pagamento.agencia_com_dv).to eql("999991")
13
- expect(pagamento.nosso_numero_com_dv).to eql("0000000289647")
14
- expect(pagamento.nosso_numero).to eql("000000028964")
15
- expect(pagamento.carteira).to eql("1")
16
- expect(pagamento.data_vencimento).to eql("28042016")
17
- expect(pagamento.valor_titulo).to eql("000000000000126")
18
- expect(pagamento.banco_recebedor).to eql("001")
19
- expect(pagamento.agencia_recebedora_com_dv).to eql("1234")
20
- expect(pagamento.data_credito).to eql("29042016")
21
- expect(pagamento.outras_despesas).to eql("000000000000000")
22
- expect(pagamento.iof_desconto).to eql("000000000000000")
23
- expect(pagamento.valor_abatimento).to eql("000000000000000")
24
- expect(pagamento.desconto_concedito).to eql("000000000000000")
25
- expect(pagamento.valor_recebido).to eql("000000000000126")
26
- expect(pagamento.juros_mora).to eql("000000000000000")
27
- expect(pagamento.outros_recebimento).to eql("000000000000000")
28
- expect(pagamento.sequencial).to eql("00011")
29
- expect(pagamento.valor_tarifa).to eql("000000000000600")
30
- expect(pagamento.data_ocorrencia).to eql("28042016")
13
+ expect(pagamento.agencia_com_dv).to eql('999991')
14
+ expect(pagamento.nosso_numero_com_dv).to eql('0000000289647')
15
+ expect(pagamento.nosso_numero).to eql('000000028964')
16
+ expect(pagamento.carteira).to eql('1')
17
+ expect(pagamento.data_vencimento).to eql('28042016')
18
+ expect(pagamento.valor_titulo).to eql('000000000000126')
19
+ expect(pagamento.banco_recebedor).to eql('001')
20
+ expect(pagamento.agencia_recebedora_com_dv).to eql('1234')
21
+ expect(pagamento.data_credito).to eql('29042016')
22
+ expect(pagamento.outras_despesas).to eql('000000000000000')
23
+ expect(pagamento.iof_desconto).to eql('000000000000000')
24
+ expect(pagamento.valor_abatimento).to eql('000000000000000')
25
+ expect(pagamento.desconto_concedito).to eql('000000000000000')
26
+ expect(pagamento.valor_recebido).to eql('000000000000126')
27
+ expect(pagamento.juros_mora).to eql('000000000000000')
28
+ expect(pagamento.outros_recebimento).to eql('000000000000000')
29
+ expect(pagamento.sequencial).to eql('00011')
30
+ expect(pagamento.valor_tarifa).to eql('000000000000600')
31
+ expect(pagamento.data_ocorrencia).to eql('28042016')
31
32
  end
32
33
  end
@@ -1,31 +1,32 @@
1
1
  # -*_ encoding: utf-8 -*-
2
+ #
2
3
  RSpec.describe Brcobranca::Retorno::Cnab240::Sicoob do
3
4
  before do
4
- @arquivo = File.join(File.dirname(__FILE__), "..", "..", "..", "arquivos", "CNAB240SICOOB.RET")
5
+ @arquivo = File.join(File.dirname(__FILE__), '..', '..', '..', 'arquivos', 'CNAB240SICOOB.RET')
5
6
  end
6
7
 
7
- it "Transforma arquivo de retorno em objetos de retorno retornando somente as linhas de pagamentos de titulos sem registro" do
8
+ it 'Transforma arquivo de retorno em objetos de retorno retornando somente as linhas de pagamentos de titulos sem registro' do
8
9
  pagamentos = described_class.load_lines(@arquivo)
9
10
  expect(pagamentos.size).to eq(3)
10
11
  pagamento = pagamentos.first
11
- expect(pagamento.agencia_com_dv).to eql("030390")
12
- expect(pagamento.cedente_com_dv).to eql("0000000489816")
13
- expect(pagamento.nosso_numero).to eql("0000000083")
14
- expect(pagamento.carteira).to eql("1")
15
- expect(pagamento.data_vencimento).to eql("13082015")
16
- expect(pagamento.valor_titulo).to eql("000000000000200")
17
- expect(pagamento.banco_recebedor).to eql("756")
18
- expect(pagamento.agencia_recebedora_com_dv).to eql("030390")
19
- expect(pagamento.data_credito).to eql("10082015")
20
- expect(pagamento.outras_despesas).to eql("000000000000000")
21
- expect(pagamento.iof_desconto).to eql("000000000000000")
22
- expect(pagamento.valor_abatimento).to eql("000000000000000")
23
- expect(pagamento.desconto_concedito).to eql("000000000000000")
24
- expect(pagamento.valor_recebido).to eql("000000000000200")
25
- expect(pagamento.juros_mora).to eql("000000000000000")
26
- expect(pagamento.outros_recebimento).to eql("000000000000000")
27
- expect(pagamento.sequencial).to eql("00001")
28
- expect(pagamento.valor_tarifa).to eql("000000000000170")
12
+ expect(pagamento.agencia_com_dv).to eql('030390')
13
+ expect(pagamento.cedente_com_dv).to eql('0000000489816')
14
+ expect(pagamento.nosso_numero).to eql('0000000083')
15
+ expect(pagamento.carteira).to eql('1')
16
+ expect(pagamento.data_vencimento).to eql('13082015')
17
+ expect(pagamento.valor_titulo).to eql('000000000000200')
18
+ expect(pagamento.banco_recebedor).to eql('756')
19
+ expect(pagamento.agencia_recebedora_com_dv).to eql('030390')
20
+ expect(pagamento.data_credito).to eql('10082015')
21
+ expect(pagamento.outras_despesas).to eql('000000000000000')
22
+ expect(pagamento.iof_desconto).to eql('000000000000000')
23
+ expect(pagamento.valor_abatimento).to eql('000000000000000')
24
+ expect(pagamento.desconto_concedito).to eql('000000000000000')
25
+ expect(pagamento.valor_recebido).to eql('000000000000200')
26
+ expect(pagamento.juros_mora).to eql('000000000000000')
27
+ expect(pagamento.outros_recebimento).to eql('000000000000000')
28
+ expect(pagamento.sequencial).to eql('00001')
29
+ expect(pagamento.valor_tarifa).to eql('000000000000170')
29
30
 
30
31
  # Dados que não consegui extrair dos registros T e U
31
32
  # pagamento.convenio.should eql("")
@@ -1,34 +1,35 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Retorno::Cnab400::Base do
5
7
  let(:arquivo) { File.join(File.dirname(__FILE__), '..', '..', '..', 'arquivos', nome_arquivo) }
6
8
 
7
- describe "#load_lines" do
8
-
9
- it "retorna nil se o arquivo é nil" do
10
- expect(Brcobranca::Retorno::Cnab400::Base.load_lines(nil)).to be_nil
9
+ describe '#load_lines' do
10
+ it 'retorna nil se o arquivo é nil' do
11
+ expect(described_class.load_lines(nil)).to be_nil
11
12
  end
12
13
 
13
- context "Bradesco" do
14
- let(:nome_arquivo) { "CNAB400BRADESCO.RET" }
14
+ context 'Bradesco' do
15
+ let(:nome_arquivo) { 'CNAB400BRADESCO.RET' }
15
16
 
16
17
  subject { Brcobranca::Retorno::Cnab400::Bradesco }
17
18
 
18
- it "lê o arquivo pela classe do Bradesco" do
19
+ it 'lê o arquivo pela classe do Bradesco' do
19
20
  expect(subject).to receive(:load_lines).with(arquivo, {})
20
- Brcobranca::Retorno::Cnab400::Base.load_lines(arquivo)
21
+ described_class.load_lines(arquivo)
21
22
  end
22
23
  end
23
24
 
24
- context "Itaú" do
25
- let(:nome_arquivo) { "CNAB400ITAU.RET" }
25
+ context 'Itaú' do
26
+ let(:nome_arquivo) { 'CNAB400ITAU.RET' }
26
27
 
27
28
  subject { Brcobranca::Retorno::Cnab400::Itau }
28
29
 
29
- it "lê o arquivo pela classe do Itaú" do
30
+ it 'lê o arquivo pela classe do Itaú' do
30
31
  expect(subject).to receive(:load_lines).with(arquivo, {})
31
- Brcobranca::Retorno::Cnab400::Base.load_lines(arquivo)
32
+ described_class.load_lines(arquivo)
32
33
  end
33
34
  end
34
35
  end
@@ -1,4 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Retorno::Cnab400::Bradesco do
@@ -34,7 +36,7 @@ RSpec.describe Brcobranca::Retorno::Cnab400::Bradesco do
34
36
  expect(pagamento.outros_recebimento).to eql('0000000000000')
35
37
  expect(pagamento.data_credito).to eql('150515')
36
38
  expect(pagamento.sequencial).to eql('000002')
37
- expect(pagamento.cod_de_ocorrencia).to eql("02")
39
+ expect(pagamento.cod_de_ocorrencia).to eql('02')
38
40
 
39
41
  # Campos da classe base que não encontrei a relação com CNAB400
40
42
  # parse.field :tipo_cobranca,80..80
@@ -1,4 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ #
3
+
2
4
  require 'spec_helper'
3
5
 
4
6
  RSpec.describe Brcobranca::Retorno::Cnab400::Itau do
@@ -6,7 +8,8 @@ RSpec.describe Brcobranca::Retorno::Cnab400::Itau do
6
8
  @arquivo = File.join(File.dirname(__FILE__), '..', '..', '..', 'arquivos', 'CNAB400ITAU.RET')
7
9
  end
8
10
 
9
- it 'Ignora primeira linha que é header' do pagamentos = described_class.load_lines(@arquivo)
11
+ it 'Ignora primeira linha que é header' do
12
+ pagamentos = described_class.load_lines(@arquivo)
10
13
  pagamento = pagamentos.first
11
14
  expect(pagamento.sequencial).to eql('000002')
12
15
  end