brcobranca 9.2.4 → 10.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +43 -9
- data/HISTORY.md +71 -0
- data/README.md +47 -54
- data/Rakefile +4 -4
- data/lib/brcobranca/arquivos/logos/ailos.eps +412 -0
- data/lib/brcobranca/arquivos/logos/ailos_carne.eps +412 -0
- data/lib/brcobranca/arquivos/logos/safra.eps +0 -0
- data/lib/brcobranca/arquivos/logos/safra_carne.eps +0 -0
- data/lib/brcobranca/boleto/{cecred.rb → ailos.rb} +7 -5
- data/lib/brcobranca/boleto/banco_brasil.rb +9 -5
- data/lib/brcobranca/boleto/banco_brasilia.rb +5 -5
- data/lib/brcobranca/boleto/banco_nordeste.rb +4 -3
- data/lib/brcobranca/boleto/banestes.rb +4 -3
- data/lib/brcobranca/boleto/banrisul.rb +4 -3
- data/lib/brcobranca/boleto/base.rb +12 -7
- data/lib/brcobranca/boleto/bradesco.rb +4 -3
- data/lib/brcobranca/boleto/caixa.rb +10 -8
- data/lib/brcobranca/boleto/citibank.rb +9 -8
- data/lib/brcobranca/boleto/credisis.rb +6 -4
- data/lib/brcobranca/boleto/hsbc.rb +8 -6
- data/lib/brcobranca/boleto/itau.rb +5 -5
- data/lib/brcobranca/boleto/safra.rb +4 -4
- data/lib/brcobranca/boleto/santander.rb +4 -2
- data/lib/brcobranca/boleto/sicoob.rb +4 -3
- data/lib/brcobranca/boleto/sicredi.rb +6 -3
- data/lib/brcobranca/boleto/template/base.rb +2 -3
- data/lib/brcobranca/boleto/template/rghost.rb +18 -13
- data/lib/brcobranca/boleto/template/rghost_carne.rb +18 -12
- data/lib/brcobranca/boleto/unicred.rb +61 -103
- data/lib/brcobranca/calculo.rb +14 -9
- data/lib/brcobranca/calculo_data.rb +6 -5
- data/lib/brcobranca/currency.rb +10 -10
- data/lib/brcobranca/formatacao.rb +2 -1
- data/lib/brcobranca/formatacao_string.rb +7 -6
- data/lib/brcobranca/limpeza.rb +3 -3
- data/lib/brcobranca/remessa/base.rb +7 -10
- data/lib/brcobranca/remessa/cnab240/{cecred.rb → ailos.rb} +18 -15
- data/lib/brcobranca/remessa/cnab240/banco_brasil.rb +14 -11
- data/lib/brcobranca/remessa/cnab240/base.rb +56 -39
- data/lib/brcobranca/remessa/cnab240/base_correspondente.rb +25 -17
- data/lib/brcobranca/remessa/cnab240/caixa.rb +21 -13
- data/lib/brcobranca/remessa/cnab240/sicoob.rb +33 -30
- data/lib/brcobranca/remessa/cnab240/sicoob_banco_brasil.rb +14 -7
- data/lib/brcobranca/remessa/cnab240/sicredi.rb +28 -22
- data/lib/brcobranca/remessa/cnab240/unicred.rb +2 -1
- data/lib/brcobranca/remessa/cnab400/banco_brasil.rb +9 -9
- data/lib/brcobranca/remessa/cnab400/banco_brasilia.rb +29 -28
- data/lib/brcobranca/remessa/cnab400/banco_nordeste.rb +11 -10
- data/lib/brcobranca/remessa/cnab400/banrisul.rb +13 -10
- data/lib/brcobranca/remessa/cnab400/base.rb +22 -9
- data/lib/brcobranca/remessa/cnab400/bradesco.rb +30 -5
- data/lib/brcobranca/remessa/cnab400/citibank.rb +6 -5
- data/lib/brcobranca/remessa/cnab400/credisis.rb +7 -5
- data/lib/brcobranca/remessa/cnab400/itau.rb +9 -6
- data/lib/brcobranca/remessa/cnab400/santander.rb +17 -15
- data/lib/brcobranca/remessa/cnab400/sicoob.rb +8 -11
- data/lib/brcobranca/remessa/cnab400/unicred.rb +185 -69
- data/lib/brcobranca/remessa/pagamento.rb +43 -11
- data/lib/brcobranca/retorno/base.rb +5 -43
- data/lib/brcobranca/retorno/cnab240/{cecred.rb → ailos.rb} +12 -10
- data/lib/brcobranca/retorno/cnab240/base.rb +8 -9
- data/lib/brcobranca/retorno/cnab240/caixa.rb +4 -5
- data/lib/brcobranca/retorno/cnab240/santander.rb +12 -8
- data/lib/brcobranca/retorno/cnab240/sicoob.rb +11 -9
- data/lib/brcobranca/retorno/cnab240/sicredi.rb +12 -9
- data/lib/brcobranca/retorno/cnab400/banco_brasil.rb +3 -3
- data/lib/brcobranca/retorno/cnab400/banco_brasilia.rb +2 -1
- data/lib/brcobranca/retorno/cnab400/banco_nordeste.rb +2 -1
- data/lib/brcobranca/retorno/cnab400/banrisul.rb +1 -1
- data/lib/brcobranca/retorno/cnab400/base.rb +13 -12
- data/lib/brcobranca/retorno/cnab400/bradesco.rb +4 -4
- data/lib/brcobranca/retorno/cnab400/credisis.rb +2 -1
- data/lib/brcobranca/retorno/cnab400/itau.rb +6 -5
- data/lib/brcobranca/retorno/cnab400/santander.rb +8 -7
- data/lib/brcobranca/retorno/cnab400/unicred.rb +63 -58
- data/lib/brcobranca/retorno/retorno_cbr643.rb +1 -2
- data/lib/brcobranca/retorno/retorno_cnab240.rb +11 -9
- data/lib/brcobranca/retorno/retorno_cnab400.rb +6 -5
- data/lib/brcobranca/util/date.rb +2 -1
- data/lib/brcobranca/util/empresa.rb +2 -1
- data/lib/brcobranca/util/errors.rb +31 -31
- data/lib/brcobranca/validations.rb +127 -151
- data/lib/brcobranca/version.rb +2 -3
- data/lib/brcobranca.rb +5 -5
- data/spec/brcobranca/base_spec.rb +20 -11
- data/spec/brcobranca/boleto/{cecred_spec.rb → ailos_spec.rb} +13 -12
- data/spec/brcobranca/boleto/banco_brasil_spec.rb +14 -12
- data/spec/brcobranca/boleto/banco_brasilia_spec.rb +11 -10
- data/spec/brcobranca/boleto/banco_nordeste_spec.rb +2 -3
- data/spec/brcobranca/boleto/banestes_spec.rb +10 -11
- data/spec/brcobranca/boleto/banrisul_spec.rb +10 -12
- data/spec/brcobranca/boleto/bradesco_spec.rb +36 -33
- data/spec/brcobranca/boleto/caixa_spec.rb +11 -12
- data/spec/brcobranca/boleto/citibank_spec.rb +10 -11
- data/spec/brcobranca/boleto/credisis_spec.rb +18 -17
- data/spec/brcobranca/boleto/hsbc_spec.rb +9 -10
- data/spec/brcobranca/boleto/itau_spec.rb +11 -12
- data/spec/brcobranca/boleto/safra_spec.rb +10 -11
- data/spec/brcobranca/boleto/santander_spec.rb +9 -10
- data/spec/brcobranca/boleto/sicoob_spec.rb +10 -11
- data/spec/brcobranca/boleto/sicredi_spec.rb +14 -10
- data/spec/brcobranca/boleto/unicred_spec.rb +28 -38
- data/spec/brcobranca/boletos_em_lote_spec.rb +7 -7
- data/spec/brcobranca/calculo_data_spec.rb +2 -2
- data/spec/brcobranca/calculo_spec.rb +13 -11
- data/spec/brcobranca/currency_spec.rb +26 -26
- data/spec/brcobranca/formatacao_spec.rb +2 -2
- data/spec/brcobranca/formatacao_string_spec.rb +10 -4
- data/spec/brcobranca/limpeza_spec.rb +2 -2
- data/spec/brcobranca/remessa/base_spec.rb +1 -2
- data/spec/brcobranca/remessa/cnab240/{cecred_spec.rb → ailos_spec.rb} +48 -47
- data/spec/brcobranca/remessa/cnab240/banco_brasil_spec.rb +18 -13
- data/spec/brcobranca/remessa/cnab240/base_spec.rb +33 -10
- data/spec/brcobranca/remessa/cnab240/caixa_spec.rb +19 -17
- data/spec/brcobranca/remessa/cnab240/sicoob_banco_brasil_spec.rb +12 -8
- data/spec/brcobranca/remessa/cnab240/sicoob_spec.rb +28 -26
- data/spec/brcobranca/remessa/cnab240/sicredi_spec.rb +12 -10
- data/spec/brcobranca/remessa/cnab240/unicred_spec.rb +11 -9
- data/spec/brcobranca/remessa/cnab400/banco_brasil_spec.rb +6 -3
- data/spec/brcobranca/remessa/cnab400/banco_brasilia_spec.rb +24 -19
- data/spec/brcobranca/remessa/cnab400/banco_nordeste_spec.rb +19 -14
- data/spec/brcobranca/remessa/cnab400/banrisul_spec.rb +17 -15
- data/spec/brcobranca/remessa/cnab400/base_spec.rb +23 -8
- data/spec/brcobranca/remessa/cnab400/bradesco_spec.rb +19 -17
- data/spec/brcobranca/remessa/cnab400/citibank_spec.rb +14 -12
- data/spec/brcobranca/remessa/cnab400/credisis_spec.rb +21 -19
- data/spec/brcobranca/remessa/cnab400/itau_spec.rb +18 -16
- data/spec/brcobranca/remessa/cnab400/santander_spec.rb +24 -22
- data/spec/brcobranca/remessa/cnab400/sicoob_spec.rb +20 -20
- data/spec/brcobranca/remessa/cnab400/unicred_spec.rb +167 -166
- data/spec/brcobranca/remessa/pagamento_spec.rb +16 -15
- data/spec/brcobranca/retorno/cnab240/base_spec.rb +10 -9
- data/spec/brcobranca/retorno/cnab240/cecred_spec.rb +4 -2
- data/spec/brcobranca/retorno/cnab240/santander_spec.rb +2 -0
- data/spec/brcobranca/retorno/cnab240/sicoob_spec.rb +2 -0
- data/spec/brcobranca/retorno/cnab240/sicredi_spec.rb +2 -0
- data/spec/brcobranca/retorno/cnab400/banco_brasilia_spec.rb +2 -1
- data/spec/brcobranca/retorno/cnab400/banco_nordeste_spec.rb +2 -1
- data/spec/brcobranca/retorno/cnab400/banrisul_spec.rb +2 -1
- data/spec/brcobranca/retorno/cnab400/base_spec.rb +25 -25
- data/spec/brcobranca/retorno/cnab400/bradesco_spec.rb +2 -1
- data/spec/brcobranca/retorno/cnab400/credisis_spec.rb +5 -4
- data/spec/brcobranca/retorno/cnab400/itau_spec.rb +4 -2
- data/spec/brcobranca/retorno/cnab400/santander_spec.rb +2 -1
- data/spec/brcobranca/retorno/cnab400/unicred_spec.rb +28 -32
- data/spec/brcobranca/retorno/retorno_cbr643_spec.rb +2 -2
- data/spec/brcobranca/retorno/retorno_cnab400_spec.rb +2 -1
- data/spec/brcobranca/retorno/retorno_cnab_240_spec.rb +2 -1
- data/spec/brcobranca/rghost_spec.rb +4 -4
- data/spec/brcobranca/util/empresa_spec.rb +1 -2
- data/spec/brcobranca_spec.rb +1 -2
- metadata +85 -162
- data/spec/arquivos/CBR64310.RET +0 -28
- data/spec/arquivos/CNAB240.RET +0 -74
- data/spec/arquivos/CNAB240CECRED.RET +0 -10
- data/spec/arquivos/CNAB240SANTANDER.RET +0 -8
- data/spec/arquivos/CNAB240SICOOB.RET +0 -10
- data/spec/arquivos/CNAB240SICREDI.CRT +0 -8
- data/spec/arquivos/CNAB400.RET +0 -54
- data/spec/arquivos/CNAB400BANCOBRASILIA.RET +0 -3
- data/spec/arquivos/CNAB400BANCONORDESTE.RET +0 -3
- data/spec/arquivos/CNAB400BANRISUL.RET +0 -3
- data/spec/arquivos/CNAB400BRADESCO.RET +0 -8
- data/spec/arquivos/CNAB400CREDISIS.RET +0 -3
- data/spec/arquivos/CNAB400ITAU.RET +0 -54
- data/spec/arquivos/CNAB400SANTANDER.RET +0 -54
- data/spec/arquivos/CNAB400UNICRED.RET +0 -3
- data/spec/fixtures/remessa/remessa-banco-brasil-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-banco-brasilia-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-banco-nordeste-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-banco_brasil-cnab240.rem +0 -7
- data/spec/fixtures/remessa/remessa-bancoob-cnab240.rem +0 -7
- data/spec/fixtures/remessa/remessa-banrisul-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-bradesco-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-caixa-cnab240.rem +0 -7
- data/spec/fixtures/remessa/remessa-cecred-cnab240.rem +0 -7
- data/spec/fixtures/remessa/remessa-citibank-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-credisis-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-itau-cnab400.rem +0 -4
- data/spec/fixtures/remessa/remessa-santander-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-sicoob-cnab400.rem +0 -3
- data/spec/fixtures/remessa/remessa-sicoob-correspondente-bb-cnab240.rem +0 -4
- data/spec/fixtures/remessa/remessa-sicredi-cnab240.rem +0 -7
- data/spec/fixtures/remessa/remessa-unicred-cnab240.rem +0 -7
- data/spec/fixtures/remessa/remessa-unicred-cnab400.rem +0 -3
- data/spec/spec.opts +0 -8
- data/spec/spec_helper.rb +0 -38
- data/spec/support/remessa_helpers.rb +0 -13
- data/spec/support/shared_examples/busca_logotipo.rb +0 -15
- data/spec/support/shared_examples/cnab240.rb +0 -259
- data/spec/support/shared_examples/cnab400.rb +0 -180
- data/spec/support/shared_examples/formatos_validos.rb +0 -36
@@ -1,5 +1,4 @@
|
|
1
|
-
#
|
2
|
-
#
|
1
|
+
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'spec_helper'
|
5
4
|
|
@@ -179,9 +178,13 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasil do
|
|
179
178
|
|
180
179
|
context 'arquivo' do
|
181
180
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
181
|
+
|
182
182
|
after { Timecop.return }
|
183
183
|
|
184
|
-
it {
|
184
|
+
it {
|
185
|
+
expect(banco_brasil.gera_arquivo).to eq(read_remessa('remessa-banco-brasil-cnab400.rem',
|
186
|
+
banco_brasil.gera_arquivo))
|
187
|
+
}
|
185
188
|
end
|
186
189
|
end
|
187
190
|
end
|
@@ -1,19 +1,20 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasilia do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
nosso_numero: 123,
|
10
|
+
documento: 6969,
|
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')
|
17
18
|
end
|
18
19
|
let(:params) do
|
19
20
|
{
|
@@ -112,7 +113,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasilia do
|
|
112
113
|
expect(header[3..5]).to eq '001' # versão
|
113
114
|
expect(header[6..8]).to eq '075' # arquivo
|
114
115
|
expect(header[9..18]).to eq banco_brasilia.info_conta # informacoes da conta
|
115
|
-
expect(header[19..32]).to eq Time.now.strftime('%Y%m%d%H%M%S')
|
116
|
+
expect(header[19..32]).to eq Time.now.strftime('%Y%m%d%H%M%S') # data/hora de formação
|
116
117
|
expect(header[33..38]).to eq '000002' # num. de registros
|
117
118
|
end
|
118
119
|
end
|
@@ -133,8 +134,8 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasilia do
|
|
133
134
|
expect(detalhe[111..112]).to eq 'SP' # uf do pagador
|
134
135
|
expect(detalhe[113..120]).to eq '12345678' # cep do pagador
|
135
136
|
expect(detalhe[121..121]).to eq '1' # tipo de pessoa
|
136
|
-
expect(detalhe[122..134]).to eq
|
137
|
-
expect(detalhe[135..135]).to eq '2'
|
137
|
+
expect(detalhe[122..134]).to eq '6969'.rjust(13, '0') # seu numero
|
138
|
+
expect(detalhe[135..135]).to eq '2' # categoria de cobranca
|
138
139
|
expect(detalhe[136..143]).to eq Date.current.strftime('%d%m%Y') # data de emissao
|
139
140
|
expect(detalhe[144..145]).to eq '21' # tipo do documento
|
140
141
|
expect(detalhe[146..146]).to eq '0' # código da natureza
|
@@ -147,11 +148,11 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasilia do
|
|
147
148
|
expect(detalhe[195..208]).to eq '00000000019990' # valor do titulo
|
148
149
|
expect(detalhe[209..220]).to eq '200012307038' # nosso numero
|
149
150
|
expect(detalhe[221..222]).to eq '00' # tipo de juros
|
150
|
-
expect(detalhe[223..236]).to eq ''.rjust(14,
|
151
|
-
expect(detalhe[237..250]).to eq ''.rjust(14,
|
151
|
+
expect(detalhe[223..236]).to eq ''.rjust(14, '0') # valor dos juros
|
152
|
+
expect(detalhe[237..250]).to eq ''.rjust(14, '0') # valor dos abatimento
|
152
153
|
expect(detalhe[251..252]).to eq '00' # tipo de desconto
|
153
|
-
expect(detalhe[253..260]).to eq ''.rjust(8,
|
154
|
-
expect(detalhe[261..274]).to eq ''.rjust(14,
|
154
|
+
expect(detalhe[253..260]).to eq ''.rjust(8, '0') # data limite de desconto
|
155
|
+
expect(detalhe[261..274]).to eq ''.rjust(14, '0') # valor dos descontos
|
155
156
|
expect(detalhe[288..327]).to eq 'SOCIEDADE BRASILEIRA DE ZOOLOGIA LTDA ' # emitente do titulo
|
156
157
|
end
|
157
158
|
end
|
@@ -175,9 +176,13 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoBrasilia do
|
|
175
176
|
|
176
177
|
context 'arquivo' do
|
177
178
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
179
|
+
|
178
180
|
after { Timecop.return }
|
179
181
|
|
180
|
-
it {
|
182
|
+
it {
|
183
|
+
expect(banco_brasilia.gera_arquivo).to eq(read_remessa('remessa-banco-brasilia-cnab400.rem',
|
184
|
+
banco_brasilia.gera_arquivo))
|
185
|
+
}
|
181
186
|
end
|
182
187
|
end
|
183
188
|
end
|
@@ -1,19 +1,20 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::BancoNordeste do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
nosso_numero: 123,
|
10
|
+
documento: 6969,
|
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')
|
17
18
|
end
|
18
19
|
let(:params) do
|
19
20
|
{
|
@@ -158,14 +159,14 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoNordeste do
|
|
158
159
|
expect(header[1]).to eq '1' # tipo operacao (1 = remessa)
|
159
160
|
expect(header[2..8]).to eq 'REMESSA' # literal da operacao
|
160
161
|
expect(header[26..45]).to eq banco_nordeste.info_conta # informacoes da conta
|
161
|
-
expect(header[76..78]).to eq '004'
|
162
|
+
expect(header[76..78]).to eq '004' # codigo do banco
|
162
163
|
end
|
163
164
|
end
|
164
165
|
|
165
166
|
context 'detalhe' do
|
166
167
|
it 'informacoes devem estar posicionadas corretamente no detalhe' do
|
167
168
|
detalhe = banco_nordeste.monta_detalhe pagamento, 1
|
168
|
-
expect(detalhe[37..61]).to eq
|
169
|
+
expect(detalhe[37..61]).to eq '6969'.ljust(25) # documento
|
169
170
|
expect(detalhe[62..68]).to eq '0000123' # nosso numero
|
170
171
|
expect(detalhe[69]).to eq '6' # digito verificador
|
171
172
|
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y') # data de vencimento
|
@@ -179,9 +180,13 @@ RSpec.describe Brcobranca::Remessa::Cnab400::BancoNordeste do
|
|
179
180
|
|
180
181
|
context 'arquivo' do
|
181
182
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
183
|
+
|
182
184
|
after { Timecop.return }
|
183
185
|
|
184
|
-
it {
|
186
|
+
it {
|
187
|
+
expect(banco_nordeste.gera_arquivo).to eq(read_remessa('remessa-banco-nordeste-cnab400.rem',
|
188
|
+
banco_nordeste.gera_arquivo))
|
189
|
+
}
|
185
190
|
end
|
186
191
|
end
|
187
192
|
end
|
@@ -1,20 +1,21 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::Banrisul do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
nosso_numero: 22_832_563,
|
10
|
+
documento: '1',
|
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
|
+
percentual_multa: 2.0,
|
18
|
+
uf_sacado: 'SP')
|
18
19
|
end
|
19
20
|
let(:params) do
|
20
21
|
{
|
@@ -115,7 +116,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Banrisul do
|
|
115
116
|
end
|
116
117
|
|
117
118
|
it 'calcula o dígito verificador do nosso número' do
|
118
|
-
expect(banrisul.digito_nosso_numero(
|
119
|
+
expect(banrisul.digito_nosso_numero(22_832_563)).to eq('51')
|
119
120
|
end
|
120
121
|
end
|
121
122
|
|
@@ -147,13 +148,13 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Banrisul do
|
|
147
148
|
expect(detalhe[107]).to eq '1' # carteira
|
148
149
|
expect(detalhe[108..109]).to eq '01' # código da ocorrência
|
149
150
|
expect(detalhe[110..119]).to eq '1'.ljust(10, ' ') # seu número
|
150
|
-
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y')
|
151
|
+
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y') # data de vencimento
|
151
152
|
expect(detalhe[126..138]).to eq '0000000019990' # valor do documento
|
152
153
|
expect(detalhe[139..141]).to eq '041' # banco cobrador
|
153
154
|
expect(detalhe[142..146]).to eq ''.rjust(5, ' ') # brancos
|
154
155
|
expect(detalhe[147..148]).to eq '08' # tipo de documento (08 - Cobrança Credenciada Banrisul - CCB)
|
155
156
|
expect(detalhe[149]).to eq 'N' # código de aceite
|
156
|
-
expect(detalhe[150..155]).to eq Date.current.strftime('%d%m%y')
|
157
|
+
expect(detalhe[150..155]).to eq Date.current.strftime('%d%m%y') # data de emissão
|
157
158
|
expect(detalhe[156..157]).to eq '18' # código da 1a instrução
|
158
159
|
expect(detalhe[158..159]).to eq '00' # código da 2a instrução
|
159
160
|
expect(detalhe[160]).to eq ' ' # código da mora
|
@@ -182,6 +183,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Banrisul do
|
|
182
183
|
|
183
184
|
context 'arquivo' do
|
184
185
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
186
|
+
|
185
187
|
after { Timecop.return }
|
186
188
|
|
187
189
|
it { expect(banrisul.gera_arquivo).to eq(read_remessa('remessa-banrisul-cnab400.rem', banrisul.gera_arquivo)) }
|
@@ -1,5 +1,4 @@
|
|
1
|
-
#
|
2
|
-
#
|
1
|
+
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'spec_helper'
|
5
4
|
|
@@ -39,15 +38,31 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Base do
|
|
39
38
|
|
40
39
|
context 'sobrescrita dos metodos' do
|
41
40
|
it 'mostrar aviso sobre sobrecarga de métodos padrões' do
|
42
|
-
expect
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
41
|
+
expect do
|
42
|
+
cnab400.monta_detalhe(Brcobranca::Remessa::Pagamento.new,
|
43
|
+
1)
|
44
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
45
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
46
|
+
expect do
|
47
|
+
cnab400.info_conta
|
48
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
49
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
50
|
+
expect do
|
51
|
+
cnab400.cod_banco
|
52
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
53
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
54
|
+
expect do
|
55
|
+
cnab400.nome_banco
|
56
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
57
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
58
|
+
expect do
|
59
|
+
cnab400.complemento
|
60
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
61
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
47
62
|
end
|
48
63
|
end
|
49
64
|
|
50
|
-
|
65
|
+
describe '#valor_total_titulos' do
|
51
66
|
it { expect(cnab400.valor_titulos_carteira(13)).to eq('0000000039980') }
|
52
67
|
end
|
53
68
|
end
|
@@ -1,22 +1,23 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::Bradesco do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
codigo_multa: '2',
|
10
|
+
percentual_multa: '2.00',
|
11
|
+
numero: 1,
|
12
|
+
nosso_numero: 123,
|
13
|
+
documento: 6969,
|
14
|
+
documento_sacado: '12345678901',
|
15
|
+
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO,!^.?\/@ DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
|
16
|
+
endereco_sacado: 'RUA RIO GRANDE DO SUL,!^.?\/@ São paulo Minas caçapa da silva junior',
|
17
|
+
bairro_sacado: 'São josé dos quatro apostolos magros',
|
18
|
+
cep_sacado: '12345678',
|
19
|
+
cidade_sacado: 'Santa rita de cássia maria da silva',
|
20
|
+
uf_sacado: 'SP')
|
20
21
|
end
|
21
22
|
let(:params) do
|
22
23
|
{ carteira: '01',
|
@@ -178,9 +179,9 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Bradesco do
|
|
178
179
|
context 'detalhe' do
|
179
180
|
it 'informacoes devem estar posicionadas corretamente no detalhe' do
|
180
181
|
detalhe = bradesco.monta_detalhe pagamento, 1
|
181
|
-
expect(detalhe[37..61]).to eq
|
182
|
-
expect(detalhe[65]).to eq
|
183
|
-
expect(detalhe[66..69]).to eq
|
182
|
+
expect(detalhe[37..61]).to eq '6969'.ljust(25)
|
183
|
+
expect(detalhe[65]).to eq '2'
|
184
|
+
expect(detalhe[66..69]).to eq '0200'
|
184
185
|
expect(detalhe[70..80]).to eq '00000000123' # nosso numero
|
185
186
|
expect(detalhe[81]).to eq 'P' # digito nosso numero (para nosso numero 123 o digito e P)
|
186
187
|
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y') # data de vencimento
|
@@ -193,6 +194,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Bradesco do
|
|
193
194
|
|
194
195
|
context 'arquivo' do
|
195
196
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
197
|
+
|
196
198
|
after { Timecop.return }
|
197
199
|
|
198
200
|
it { expect(bradesco.gera_arquivo).to eq(read_remessa('remessa-bradesco-cnab400.rem', bradesco.gera_arquivo)) }
|
@@ -1,19 +1,20 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::Citibank do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
nosso_numero: 123,
|
10
|
+
documento: 6969,
|
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')
|
17
18
|
end
|
18
19
|
let(:params) do
|
19
20
|
{
|
@@ -107,7 +108,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Citibank do
|
|
107
108
|
context 'detalhe' do
|
108
109
|
it 'informacoes devem estar posicionadas corretamente no detalhe' do
|
109
110
|
detalhe = citibank.monta_detalhe pagamento, 1
|
110
|
-
expect(detalhe[37..61]).to eq
|
111
|
+
expect(detalhe[37..61]).to eq '6969'.ljust(25) # nosso numero
|
111
112
|
expect(detalhe[64..75]).to eq '000000000123' # nosso numero
|
112
113
|
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y') # data de vencimento
|
113
114
|
expect(detalhe[126..138]).to eq '0000000019990' # valor do titulo
|
@@ -118,6 +119,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Citibank do
|
|
118
119
|
|
119
120
|
context 'arquivo' do
|
120
121
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
122
|
+
|
121
123
|
after { Timecop.return }
|
122
124
|
|
123
125
|
it { expect(citibank.gera_arquivo).to eq(read_remessa('remessa-citibank-cnab400.rem', citibank.gera_arquivo)) }
|
@@ -1,22 +1,23 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::Credisis do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
nosso_numero: 123,
|
10
|
+
documento: 6969,
|
11
|
+
dias_protesto: '6',
|
12
|
+
valor_mora: '8.00',
|
13
|
+
percentual_multa: '2.00',
|
14
|
+
documento_sacado: '12345678901',
|
15
|
+
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO,!^.?\/@ DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
|
16
|
+
endereco_sacado: 'RUA RIO GRANDE DO SUL,!^.?\/@ São paulo Minas caçapa da silva junior',
|
17
|
+
bairro_sacado: 'São josé dos quatro apostolos magros',
|
18
|
+
cep_sacado: '12345678',
|
19
|
+
cidade_sacado: 'Santa rita de cássia maria da silva',
|
20
|
+
uf_sacado: 'SP')
|
20
21
|
end
|
21
22
|
let(:params) do
|
22
23
|
{
|
@@ -151,14 +152,14 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Credisis do
|
|
151
152
|
expect(detalhe[17..20]).to eq '0001' # agência
|
152
153
|
expect(detalhe[22..29]).to eq '00000002' # conta corrente
|
153
154
|
expect(detalhe[30]).to eq '7' # dígito da conta corrente
|
154
|
-
expect(detalhe[37..61]).to eq
|
155
|
+
expect(detalhe[37..61]).to eq '6969'.ljust(25) # número controle cliente
|
155
156
|
expect(detalhe[62..72]).to eq '00027000123' # nosso numero
|
156
157
|
expect(detalhe[73..109]).to eq ''.rjust(37, ' ') # brancos
|
157
158
|
expect(detalhe[110..119]).to eq '0000000000' # número documento
|
158
|
-
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y')
|
159
|
+
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y') # data de vencimento
|
159
160
|
expect(detalhe[126..138]).to eq '0000000019990' # valor do titulo
|
160
161
|
expect(detalhe[139..149]).to eq ''.rjust(11, ' ') # brancos
|
161
|
-
expect(detalhe[150..155]).to eq Date.current.strftime('%d%m%y')
|
162
|
+
expect(detalhe[150..155]).to eq Date.current.strftime('%d%m%y') # data emissão título
|
162
163
|
expect(detalhe[156..159]).to eq ''.rjust(4, ' ') # brancos
|
163
164
|
expect(detalhe[160..165]).to eq '080000' # mora
|
164
165
|
expect(detalhe[166..171]).to eq '020000' # multa
|
@@ -172,14 +173,15 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Credisis do
|
|
172
173
|
expect(detalhe[326..333]).to eq '12345678' # cep sacado
|
173
174
|
expect(detalhe[334..348]).to eq 'Santa rita de c' # cidade sacado
|
174
175
|
expect(detalhe[349..350]).to eq 'SP' # uf sacado
|
175
|
-
expect(detalhe[351..375]).to eq ''.rjust(25,
|
176
|
-
expect(detalhe[377..390]).to eq ''.rjust(14,
|
176
|
+
expect(detalhe[351..375]).to eq ''.rjust(25, ' ') # nome avalista
|
177
|
+
expect(detalhe[377..390]).to eq ''.rjust(14, ' ') # documento avalista
|
177
178
|
expect(detalhe[391..392]).to eq '06' # dias para envio a protesto
|
178
179
|
end
|
179
180
|
end
|
180
181
|
|
181
182
|
context 'arquivo' do
|
182
183
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
184
|
+
|
183
185
|
after { Timecop.return }
|
184
186
|
|
185
187
|
it { expect(credisis.gera_arquivo).to eq(read_remessa('remessa-credisis-cnab400.rem', credisis.gera_arquivo)) }
|
@@ -1,21 +1,22 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::Itau do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
nosso_numero: 123,
|
10
|
+
documento: 6969,
|
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
|
+
codigo_multa: '1',
|
18
|
+
percentual_multa: 2.00,
|
19
|
+
uf_sacado: 'SP')
|
19
20
|
end
|
20
21
|
let(:params) do
|
21
22
|
{ carteira: '123',
|
@@ -157,7 +158,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Itau do
|
|
157
158
|
context 'detalhe' do
|
158
159
|
it 'informacoes devem estar posicionadas corretamente no detalhe' do
|
159
160
|
detalhe = itau.monta_detalhe pagamento, 2
|
160
|
-
expect(detalhe[37..61]).to eq
|
161
|
+
expect(detalhe[37..61]).to eq '6969'.ljust(25)
|
161
162
|
expect(detalhe[62..69]).to eq '00000123' # nosso numero
|
162
163
|
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y') # data de vencimento
|
163
164
|
expect(detalhe[126..138]).to eq '0000000019990' # valor do titulo
|
@@ -170,10 +171,10 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Itau do
|
|
170
171
|
|
171
172
|
it 'informacoes devem estar posicionadas corretamente no detalhe opcional de multa' do
|
172
173
|
detalhe_multa = itau.monta_detalhe_multa pagamento, 3
|
173
|
-
|
174
|
+
# Significado Posição Picture
|
174
175
|
expect(detalhe_multa[0]).to eq '2' # Identificação do reg. transação [001..001] 9(001)
|
175
176
|
expect(detalhe_multa[1]).to eq '1' # Código da multa [002..002] X(001)
|
176
|
-
expect(detalhe_multa[2..9]).to eq Date.current.strftime('%d%m%Y')
|
177
|
+
expect(detalhe_multa[2..9]).to eq Date.current.strftime('%d%m%Y') # Data da multa [003..010] 9(008)
|
177
178
|
expect(detalhe_multa[10..22]).to eq '0000000000200' # Valor da multa [011..023] 9(013)
|
178
179
|
expect(detalhe_multa[23..393]).to eq ''.rjust(371, ' ') # Complemento [024..394] X(370)
|
179
180
|
expect(detalhe_multa[394..399]).to eq '000003' # Número sequencial [395..400] 9(006)
|
@@ -182,6 +183,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Itau do
|
|
182
183
|
|
183
184
|
context 'arquivo' do
|
184
185
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
186
|
+
|
185
187
|
after { Timecop.return }
|
186
188
|
|
187
189
|
it { expect(itau.gera_arquivo).to eq(read_remessa('remessa-itau-cnab400.rem', itau.gera_arquivo)) }
|
@@ -1,24 +1,25 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab400::Santander do
|
5
6
|
let(:pagamento) do
|
6
7
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
8
|
+
data_vencimento: Date.current,
|
9
|
+
codigo_multa: '4',
|
10
|
+
percentual_multa: '2.00',
|
11
|
+
valor_mora: '8.00',
|
12
|
+
cod_primeira_instrucao: '06',
|
13
|
+
dias_protesto: '6',
|
14
|
+
nosso_numero: 123,
|
15
|
+
documento: 6969,
|
16
|
+
documento_sacado: '12345678901',
|
17
|
+
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO,!^.?\/@ DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
|
18
|
+
endereco_sacado: 'RUA RIO GRANDE DO SUL,!^.?\/@ São paulo Minas caçapa da silva junior',
|
19
|
+
bairro_sacado: 'São josé dos quatro apostolos magros',
|
20
|
+
cep_sacado: '12345678',
|
21
|
+
cidade_sacado: 'Santa rita de cássia maria da silva',
|
22
|
+
uf_sacado: 'SP')
|
22
23
|
end
|
23
24
|
let(:params) do
|
24
25
|
{
|
@@ -111,18 +112,18 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Santander do
|
|
111
112
|
header = santander.monta_header
|
112
113
|
expect(header[1]).to eq '1' # tipo operacao (1 = remessa)
|
113
114
|
expect(header[2..8]).to eq 'REMESSA' # literal da operacao
|
114
|
-
expect(header[26..45]).to eq santander.info_conta
|
115
|
+
expect(header[26..45]).to eq santander.info_conta # informacoes da conta
|
115
116
|
expect(header[76..78]).to eq '033' # codigo do banco
|
116
|
-
expect(header[100..115]).to eq ''.rjust(16,
|
117
|
-
expect(header[116..390]).to eq ''.rjust(275,' ')
|
118
|
-
expect(header[391..393]).to eq '058'
|
117
|
+
expect(header[100..115]).to eq ''.rjust(16, '0') # zeros
|
118
|
+
expect(header[116..390]).to eq ''.rjust(275, ' ') # campos mensagens vazios
|
119
|
+
expect(header[391..393]).to eq '058' # numero da versão da remessa
|
119
120
|
end
|
120
121
|
end
|
121
122
|
|
122
123
|
context 'detalhe' do
|
123
124
|
it 'informacoes devem estar posicionadas corretamente no detalhe' do
|
124
125
|
detalhe = santander.monta_detalhe pagamento, 1
|
125
|
-
expect(detalhe[37..61]).to eq
|
126
|
+
expect(detalhe[37..61]).to eq '6969'.ljust(25) # nosso numero
|
126
127
|
expect(detalhe[62..69]).to eq '00000123' # nosso numero
|
127
128
|
expect(detalhe[120..125]).to eq Date.current.strftime('%d%m%y') # data de vencimento
|
128
129
|
expect(detalhe[126..138]).to eq '0000000019990' # valor do titulo
|
@@ -133,7 +134,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Santander do
|
|
133
134
|
|
134
135
|
context 'trailer' do
|
135
136
|
it 'informacoes devem estar posicionadas corretamente no trailer' do
|
136
|
-
trailer = santander.monta_trailer
|
137
|
+
trailer = santander.monta_trailer '3'
|
137
138
|
expect(trailer[0]).to eq '9' # código registro
|
138
139
|
expect(trailer[1..6]).to eq '000003' # quant. total de linhas
|
139
140
|
expect(trailer[7..19]).to eq '0000000019990' # valor total dos titulos
|
@@ -144,6 +145,7 @@ RSpec.describe Brcobranca::Remessa::Cnab400::Santander do
|
|
144
145
|
|
145
146
|
context 'arquivo' do
|
146
147
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
148
|
+
|
147
149
|
after { Timecop.return }
|
148
150
|
|
149
151
|
it { expect(santander.gera_arquivo).to eq(read_remessa('remessa-santander-cnab400.rem', santander.gera_arquivo)) }
|