brcobranca 9.2.1 → 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 +58 -6
- data/HISTORY.md +71 -0
- data/README.md +47 -53
- 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/citibank.eps +745 -0
- data/lib/brcobranca/arquivos/logos/citibank_carne.eps +745 -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 +97 -0
- 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 +6 -6
- 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 +11 -9
- 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 +6 -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 +195 -0
- 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 +13 -14
- 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 -3
- data/spec/brcobranca/limpeza_spec.rb +2 -2
- data/spec/brcobranca/remessa/base_spec.rb +3 -4
- 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 +35 -12
- data/spec/brcobranca/remessa/cnab240/caixa_spec.rb +19 -17
- data/spec/brcobranca/remessa/cnab240/sicoob_banco_brasil_spec.rb +14 -10
- data/spec/brcobranca/remessa/cnab240/sicoob_spec.rb +30 -28
- data/spec/brcobranca/remessa/cnab240/sicredi_spec.rb +14 -12
- data/spec/brcobranca/remessa/cnab240/unicred_spec.rb +13 -11
- data/spec/brcobranca/remessa/cnab400/banco_brasil_spec.rb +8 -5
- 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 +27 -12
- 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 +22 -22
- 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 +90 -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,36 +1,36 @@
|
|
1
|
-
#
|
2
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
3
|
require 'spec_helper'
|
4
4
|
|
5
5
|
RSpec.describe Brcobranca::Currency::String do
|
6
6
|
it 'returns true if value seted is a valid ruby number' do
|
7
|
-
expect('1234'
|
8
|
-
expect('123.4'
|
9
|
-
expect('123,4'
|
10
|
-
expect('1234.03'
|
11
|
-
expect('1234,03'
|
12
|
-
expect('-1234'
|
13
|
-
expect('-123.4'
|
14
|
-
expect('-123,4'
|
15
|
-
expect('-1234.03'
|
16
|
-
expect('-1234,03'
|
17
|
-
expect('+1234'
|
18
|
-
expect('+123.4'
|
19
|
-
expect('+123,4'
|
20
|
-
expect('+1234.03'
|
21
|
-
expect('+1234,03'
|
7
|
+
expect('1234').to be_numeric
|
8
|
+
expect('123.4').to be_numeric
|
9
|
+
expect('123,4').to be_numeric
|
10
|
+
expect('1234.03').to be_numeric
|
11
|
+
expect('1234,03').to be_numeric
|
12
|
+
expect('-1234').to be_numeric
|
13
|
+
expect('-123.4').to be_numeric
|
14
|
+
expect('-123,4').to be_numeric
|
15
|
+
expect('-1234.03').to be_numeric
|
16
|
+
expect('-1234,03').to be_numeric
|
17
|
+
expect('+1234').to be_numeric
|
18
|
+
expect('+123.4').to be_numeric
|
19
|
+
expect('+123,4').to be_numeric
|
20
|
+
expect('+1234.03').to be_numeric
|
21
|
+
expect('+1234,03').to be_numeric
|
22
22
|
end
|
23
23
|
|
24
24
|
it 'returns false if value seted is NOT a valid ruby number' do
|
25
|
-
expect('1234,'
|
26
|
-
expect('1234.'
|
27
|
-
expect('1,234.03'
|
28
|
-
expect('1.234.03'
|
29
|
-
expect('1,234,03'
|
30
|
-
expect('12.340,03'
|
31
|
-
expect('1234ab'
|
32
|
-
expect('ab1213'
|
33
|
-
expect('ffab'
|
25
|
+
expect('1234,').not_to be_numeric
|
26
|
+
expect('1234.').not_to be_numeric
|
27
|
+
expect('1,234.03').not_to be_numeric
|
28
|
+
expect('1.234.03').not_to be_numeric
|
29
|
+
expect('1,234,03').not_to be_numeric
|
30
|
+
expect('12.340,03').not_to be_numeric
|
31
|
+
expect('1234ab').not_to be_numeric
|
32
|
+
expect('ab1213').not_to be_numeric
|
33
|
+
expect('ffab').not_to be_numeric
|
34
34
|
end
|
35
35
|
|
36
36
|
it 'converts value seted to valid ruby number' do
|
@@ -1,5 +1,5 @@
|
|
1
|
-
#
|
2
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
3
|
require 'spec_helper'
|
4
4
|
|
5
5
|
RSpec.describe Brcobranca::FormatacaoString do
|
@@ -13,8 +13,15 @@ RSpec.describe Brcobranca::FormatacaoString do
|
|
13
13
|
end
|
14
14
|
|
15
15
|
context 'above size' do
|
16
|
-
it {
|
16
|
+
it {
|
17
|
+
expect("SOÇIEDADE, BRASI@?!+-_LEIR'\"A DE ZÔÔLOGIA LTDA.".format_size(30)).to eql('SOCIEDADE BRASILEIRA DE ZOOLOG')
|
18
|
+
}
|
19
|
+
|
17
20
|
it { expect('pablo diego JOSÉ FRANCISCO DE PAULA JUAN'.format_size(30)).to eql('pablo diego JOSE FRANCISCO DE ') }
|
21
|
+
|
22
|
+
it {
|
23
|
+
expect('DF 250, KM 4 Cond. La Foret , Qd. M Casa 03'.format_size(40)).to eql('DF 250 KM 4 Cond La Foret Qd M Casa 03 ')
|
24
|
+
}
|
18
25
|
end
|
19
26
|
|
20
27
|
context 'bellow size' do
|
@@ -1,5 +1,4 @@
|
|
1
|
-
#
|
2
|
-
#
|
1
|
+
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'spec_helper'
|
5
4
|
|
@@ -9,8 +8,8 @@ RSpec.describe Brcobranca::Remessa::Base do
|
|
9
8
|
data_vencimento: Date.current,
|
10
9
|
nosso_numero: 123,
|
11
10
|
documento_sacado: '12345678901',
|
12
|
-
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO
|
13
|
-
endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
|
11
|
+
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO,!^.?\/@ DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
|
12
|
+
endereco_sacado: 'RUA RIO GRANDE DO SUL,!^.?\/@ São paulo Minas caçapa da silva junior',
|
14
13
|
bairro_sacado: 'São josé dos quatro apostolos magros',
|
15
14
|
cep_sacado: '12345678',
|
16
15
|
cidade_sacado: 'Santa rita de cássia maria da silva',
|
@@ -1,22 +1,23 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
|
-
RSpec.describe Brcobranca::Remessa::Cnab240::
|
5
|
+
RSpec.describe Brcobranca::Remessa::Cnab240::Ailos 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
|
+
numero: 123,
|
11
|
+
documento: 6969,
|
12
|
+
documento_sacado: '12345678901',
|
13
|
+
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO,!^.?\/@ DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
|
14
|
+
endereco_sacado: 'RUA RIO GRANDE DO SUL,!^.?\/@ São paulo Minas caçapa da silva junior',
|
15
|
+
bairro_sacado: 'São josé dos quatro apostolos magros',
|
16
|
+
cep_sacado: '12345678',
|
17
|
+
cidade_sacado: 'Santa rita de cássia maria da silva',
|
18
|
+
uf_sacado: 'SP',
|
19
|
+
codigo_multa: '2',
|
20
|
+
percentual_multa: 2.0)
|
20
21
|
end
|
21
22
|
let(:params) do
|
22
23
|
{ empresa_mae: 'SOCIEDADE BRASILEIRA DE ZOOLOGIA LTDA',
|
@@ -28,7 +29,7 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Cecred do
|
|
28
29
|
sequencial_remessa: '000001',
|
29
30
|
pagamentos: [pagamento] }
|
30
31
|
end
|
31
|
-
let(:
|
32
|
+
let(:ailos) { subject.class.new(params) }
|
32
33
|
|
33
34
|
context 'validacoes' do
|
34
35
|
context '@digito_agencia' do
|
@@ -39,9 +40,9 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Cecred do
|
|
39
40
|
end
|
40
41
|
|
41
42
|
it 'deve ser invalido se o digito da agencia nao tiver 1 digito' do
|
42
|
-
|
43
|
-
expect(
|
44
|
-
expect(
|
43
|
+
ailos.digito_agencia = '12'
|
44
|
+
expect(ailos.invalid?).to be true
|
45
|
+
expect(ailos.errors.full_messages).to include('Digito agencia deve ter 1 dígito.')
|
45
46
|
end
|
46
47
|
end
|
47
48
|
|
@@ -53,9 +54,9 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Cecred do
|
|
53
54
|
end
|
54
55
|
|
55
56
|
it 'deve ser invalido se o convenio tiver mais de 6 digitos' do
|
56
|
-
|
57
|
-
expect(
|
58
|
-
expect(
|
57
|
+
ailos.convenio = '1234567'
|
58
|
+
expect(ailos.invalid?).to be true
|
59
|
+
expect(ailos.errors.full_messages).to include('Convenio deve ter 6 dígitos.')
|
59
60
|
end
|
60
61
|
end
|
61
62
|
|
@@ -67,44 +68,44 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Cecred do
|
|
67
68
|
end
|
68
69
|
|
69
70
|
it 'deve ser invalido se o conta corrente tiver mais de 7 digitos' do
|
70
|
-
|
71
|
-
expect(
|
72
|
-
expect(
|
71
|
+
ailos.conta_corrente = ''.rjust(8, '0')
|
72
|
+
expect(ailos.invalid?).to be true
|
73
|
+
expect(ailos.errors.full_messages).to include('Conta corrente deve ter 7 dígitos.')
|
73
74
|
end
|
74
75
|
end
|
75
76
|
end
|
76
77
|
|
77
78
|
context 'formatacao' do
|
78
79
|
it 'codigo do banco deve retornar 085' do
|
79
|
-
expect(
|
80
|
+
expect(ailos.cod_banco).to eq '085'
|
80
81
|
end
|
81
82
|
|
82
|
-
it 'nome do banco deve ser
|
83
|
-
nome_banco =
|
83
|
+
it 'nome do banco deve ser Ailos com 30 posicoes' do
|
84
|
+
nome_banco = ailos.nome_banco
|
84
85
|
expect(nome_banco.size).to eq 30
|
85
|
-
expect(nome_banco[0..
|
86
|
+
expect(nome_banco[0..4]).to eq 'AILOS'
|
86
87
|
end
|
87
88
|
|
88
89
|
it 'versao do layout do arquivo deve retornar 087' do
|
89
|
-
expect(
|
90
|
+
expect(ailos.versao_layout_arquivo).to eq '087'
|
90
91
|
end
|
91
92
|
|
92
93
|
it 'versao do layout do lote deve ser 045' do
|
93
|
-
expect(
|
94
|
+
expect(ailos.versao_layout_lote).to eq '045'
|
94
95
|
end
|
95
96
|
|
96
97
|
it 'codigo do convenio deve ser 20 caracteres' do
|
97
|
-
expect(
|
98
|
+
expect(ailos.codigo_convenio).to eq '123456'.ljust(20, ' ')
|
98
99
|
end
|
99
100
|
|
100
101
|
it 'convenio lote deve retornar as informacoes nas posicoes corretas' do
|
101
|
-
conv_lote =
|
102
|
+
conv_lote = ailos.convenio_lote
|
102
103
|
expect(conv_lote[0..5]).to eq '123456'
|
103
104
|
expect(conv_lote[6..19]).to eq ''.rjust(14, ' ')
|
104
105
|
end
|
105
106
|
|
106
107
|
it 'info_conta deve retornar as informacoes nas posicoes corretas' do
|
107
|
-
info_conta =
|
108
|
+
info_conta = ailos.info_conta
|
108
109
|
expect(info_conta[0..4]).to eq '12345' # agencia
|
109
110
|
expect(info_conta[5]).to eq '1' # digito agencia
|
110
111
|
expect(info_conta[6..17]).to eq '000001234567' # conta corrente
|
@@ -113,27 +114,26 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Cecred do
|
|
113
114
|
end
|
114
115
|
|
115
116
|
it 'complemento header deve retornar as informacoes nas posicoes corretas' do
|
116
|
-
comp_header =
|
117
|
+
comp_header = ailos.complemento_header
|
117
118
|
expect(comp_header.size).to eq 29
|
118
119
|
expect(comp_header[0..28]).to eq ''.rjust(29, ' ')
|
119
120
|
end
|
120
121
|
|
121
122
|
it 'complemento trailer deve retornar as informacoes nas posicoes corretas' do
|
122
|
-
comp_trailer =
|
123
|
+
comp_trailer = ailos.complemento_trailer
|
123
124
|
expect(comp_trailer.size).to eq 217
|
124
125
|
|
125
|
-
total_cobranca_simples =
|
126
|
-
total_cobranca_vinculada =
|
127
|
-
total_cobranca_caucionada =
|
128
|
-
total_cobranca_descontada =
|
126
|
+
total_cobranca_simples = '00000100000000000019990'
|
127
|
+
total_cobranca_vinculada = ''.rjust(23, '0')
|
128
|
+
total_cobranca_caucionada = ''.rjust(23, '0')
|
129
|
+
total_cobranca_descontada = ''.rjust(23, '0')
|
129
130
|
|
130
131
|
expect(comp_trailer).to eq "#{total_cobranca_simples}#{total_cobranca_vinculada}"\
|
131
|
-
|
132
|
-
|
132
|
+
"#{total_cobranca_caucionada}#{total_cobranca_descontada}".ljust(217, ' ')
|
133
133
|
end
|
134
134
|
|
135
135
|
it 'complemento P deve retornar as informacoes nas posicoes corretas' do
|
136
|
-
comp_p =
|
136
|
+
comp_p = ailos.complemento_p pagamento
|
137
137
|
expect(comp_p.size).to eq 34
|
138
138
|
expect(comp_p[0..11]).to eq '000001234567' # conta corrente
|
139
139
|
expect(comp_p[12]).to eq '9' # dv conta corrente
|
@@ -142,12 +142,12 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Cecred do
|
|
142
142
|
end
|
143
143
|
|
144
144
|
it 'tipo do documento deve ser 1 - Tradicional' do
|
145
|
-
expect(
|
145
|
+
expect(ailos.tipo_documento).to eq '1'
|
146
146
|
end
|
147
147
|
|
148
148
|
it 'deve conter a identificacao do titulo da empresa' do
|
149
|
-
segmento_p =
|
150
|
-
expect(segmento_p[195..219]).to eq
|
149
|
+
segmento_p = ailos.monta_segmento_p(pagamento, 1, 2)
|
150
|
+
expect(segmento_p[195..219]).to eq '6969'.ljust(25, ' ')
|
151
151
|
end
|
152
152
|
end
|
153
153
|
|
@@ -156,9 +156,10 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Cecred do
|
|
156
156
|
|
157
157
|
context 'arquivo' do
|
158
158
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
159
|
+
|
159
160
|
after { Timecop.return }
|
160
161
|
|
161
|
-
it { expect(
|
162
|
+
it { expect(ailos.gera_arquivo).to eq(read_remessa('remessa-ailos-cnab240.rem', ailos.gera_arquivo)) }
|
162
163
|
end
|
163
164
|
end
|
164
165
|
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::Cnab240::BancoBrasil 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
|
{ empresa_mae: 'SOCIEDADE BRASILEIRA DE ZOOLOGIA LTDA',
|
@@ -118,7 +119,7 @@ RSpec.describe Brcobranca::Remessa::Cnab240::BancoBrasil do
|
|
118
119
|
expect(banco_brasil.digito_agencia).to eq '3'
|
119
120
|
end
|
120
121
|
|
121
|
-
it 'deve calcular
|
122
|
+
it 'deve calcular digito da conta' do
|
122
123
|
# digito calculado a partir do modulo 11 com base 9
|
123
124
|
#
|
124
125
|
# conta = 1 2 3 4 5
|
@@ -209,9 +210,13 @@ RSpec.describe Brcobranca::Remessa::Cnab240::BancoBrasil do
|
|
209
210
|
|
210
211
|
context 'arquivo' do
|
211
212
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
213
|
+
|
212
214
|
after { Timecop.return }
|
213
215
|
|
214
|
-
it {
|
216
|
+
it {
|
217
|
+
expect(banco_brasil.gera_arquivo).to eq(read_remessa('remessa-banco_brasil-cnab240.rem',
|
218
|
+
banco_brasil.gera_arquivo))
|
219
|
+
}
|
215
220
|
end
|
216
221
|
end
|
217
222
|
end
|
@@ -1,5 +1,4 @@
|
|
1
|
-
#
|
2
|
-
#
|
1
|
+
# frozen_string_literal: true
|
3
2
|
|
4
3
|
require 'spec_helper'
|
5
4
|
|
@@ -9,8 +8,8 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Base do
|
|
9
8
|
data_vencimento: Date.current,
|
10
9
|
nosso_numero: 123,
|
11
10
|
documento_sacado: '12345678901',
|
12
|
-
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO
|
13
|
-
endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
|
11
|
+
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO,!^.?\/@ DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
|
12
|
+
endereco_sacado: 'RUA RIO GRANDE DO SUL,!^.?\/@ São paulo Minas caçapa da silva junior',
|
14
13
|
bairro_sacado: 'São josé dos quatro apostolos magros',
|
15
14
|
cep_sacado: '12345678',
|
16
15
|
cidade_sacado: 'Santa rita de cássia maria da silva',
|
@@ -78,14 +77,38 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Base do
|
|
78
77
|
|
79
78
|
context 'sobrescrita dos metodos' do
|
80
79
|
it 'mostrar aviso sobre sobrecarga de métodos padrões' do
|
81
|
-
expect
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
expect
|
86
|
-
|
87
|
-
|
88
|
-
|
80
|
+
expect do
|
81
|
+
cnab240.complemento_header
|
82
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
83
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
84
|
+
expect do
|
85
|
+
cnab240.versao_layout_arquivo
|
86
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
87
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
88
|
+
expect do
|
89
|
+
cnab240.versao_layout_lote
|
90
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
91
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
92
|
+
expect do
|
93
|
+
cnab240.convenio_lote
|
94
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
95
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
96
|
+
expect do
|
97
|
+
cnab240.nome_banco
|
98
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
99
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
100
|
+
expect do
|
101
|
+
cnab240.cod_banco
|
102
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
103
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
104
|
+
expect do
|
105
|
+
cnab240.info_conta
|
106
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
107
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
108
|
+
expect do
|
109
|
+
cnab240.codigo_convenio
|
110
|
+
end.to raise_error(Brcobranca::NaoImplementado,
|
111
|
+
'Sobreescreva este método na classe referente ao banco que você esta criando')
|
89
112
|
end
|
90
113
|
end
|
91
114
|
end
|
@@ -1,25 +1,27 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab240::Caixa do
|
5
6
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
7
|
+
|
6
8
|
after { Timecop.return }
|
7
9
|
|
8
10
|
let(:pagamento) do
|
9
11
|
Brcobranca::Remessa::Pagamento.new(valor: 199.9,
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
12
|
+
data_vencimento: Date.current,
|
13
|
+
nosso_numero: 123,
|
14
|
+
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
|
+
tipo_mora: '1',
|
23
|
+
codigo_multa: '2',
|
24
|
+
uf_sacado: 'SP')
|
23
25
|
end
|
24
26
|
let(:params) do
|
25
27
|
{ empresa_mae: 'SOCIEDADE BRASILEIRA DE ZOOLOGIA LTDA',
|
@@ -139,17 +141,17 @@ RSpec.describe Brcobranca::Remessa::Cnab240::Caixa do
|
|
139
141
|
|
140
142
|
it 'deve conter a identificacao do titulo da empresa' do
|
141
143
|
segmento_p = caixa.monta_segmento_p(pagamento, 1, 2)
|
142
|
-
expect(segmento_p[195..205]).to eq
|
144
|
+
expect(segmento_p[195..205]).to eq '00000006969'
|
143
145
|
end
|
144
146
|
|
145
147
|
it 'data da mora deve ser no dia posterior ao vencimento' do
|
146
148
|
segmento_p = caixa.monta_segmento_p(pagamento, 1, 2)
|
147
|
-
expect(segmento_p[118..125]).to eq
|
149
|
+
expect(segmento_p[118..125]).to eq '15072015'
|
148
150
|
end
|
149
151
|
|
150
152
|
it 'data da multa deve ser no dia posterior ao vencimento' do
|
151
153
|
segmento_r = caixa.monta_segmento_r(pagamento, 1, 4)
|
152
|
-
expect(segmento_r[66..73]).to eq
|
154
|
+
expect(segmento_r[66..73]).to eq '15072015'
|
153
155
|
end
|
154
156
|
end
|
155
157
|
|
@@ -1,4 +1,5 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'spec_helper'
|
3
4
|
|
4
5
|
RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
@@ -9,8 +10,8 @@ RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
|
9
10
|
nosso_numero: '1234567',
|
10
11
|
documento: 6969,
|
11
12
|
documento_sacado: '82136760505',
|
12
|
-
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO
|
13
|
-
endereco_sacado: 'RUA RIO GRANDE DO SUL São paulo Minas caçapa da silva junior',
|
13
|
+
nome_sacado: 'PABLO DIEGO JOSÉ FRANCISCO,!^.?\/@ DE PAULA JUAN NEPOMUCENO MARÍA DE LOS REMEDIOS CIPRIANO DE LA SANTÍSSIMA TRINIDAD RUIZ Y PICASSO',
|
14
|
+
endereco_sacado: 'RUA RIO GRANDE DO SUL,!^.?\/@ São paulo Minas caçapa da silva junior',
|
14
15
|
bairro_sacado: 'São josé dos quatro apostolos magros',
|
15
16
|
cep_sacado: '12345678',
|
16
17
|
cidade_sacado: 'Santa rita de cássia maria da silva',
|
@@ -81,7 +82,6 @@ RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
|
81
82
|
expect(sicoob_banco_brasil.errors.full_messages).to include('Sequencial remessa deve ter 8 dígitos.')
|
82
83
|
end
|
83
84
|
end
|
84
|
-
|
85
85
|
end
|
86
86
|
|
87
87
|
context 'formatacoes' do
|
@@ -108,7 +108,7 @@ RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
|
108
108
|
|
109
109
|
it 'formata o nosso numero' do
|
110
110
|
nosso_numero = sicoob_banco_brasil.formata_nosso_numero 1
|
111
|
-
expect(nosso_numero).to eq
|
111
|
+
expect(nosso_numero).to eq '12345678900000001'
|
112
112
|
end
|
113
113
|
end
|
114
114
|
|
@@ -130,7 +130,7 @@ RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
|
130
130
|
expect(header[70..99]).to eq 'SOCIEDADE BRASILEIRA DE ZOOLOG' # razao social do cedente
|
131
131
|
expect(header[100..179]).to eq ''.rjust(80, ' ') # brancos
|
132
132
|
expect(header[180..187]).to eq '00000001' # sequencial de remessa
|
133
|
-
expect(header[188..195]).to eq Date.current.strftime('%d%m%Y')
|
133
|
+
expect(header[188..195]).to eq Date.current.strftime('%d%m%Y') # data gravacao
|
134
134
|
expect(header[196..206]).to eq ''.rjust(11, '0') # zeros
|
135
135
|
expect(header[207..239]).to eq ''.rjust(33, ' ') # brancos
|
136
136
|
end
|
@@ -156,12 +156,12 @@ RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
|
156
156
|
expect(segmento_p[60]).to eq '2' # emissao boleto
|
157
157
|
expect(segmento_p[61]).to eq ' ' # branco
|
158
158
|
expect(segmento_p[62..76]).to eq '000000001234567' # numero do documento de cobranca
|
159
|
-
expect(segmento_p[77..84]).to eq Date.current.strftime('%d%m%Y')
|
159
|
+
expect(segmento_p[77..84]).to eq Date.current.strftime('%d%m%Y') # data de vencimento
|
160
160
|
expect(segmento_p[85..99]).to eq '000000000005000' # valor do documento
|
161
161
|
expect(segmento_p[100..105]).to eq ''.rjust(6, '0') # zeros
|
162
162
|
expect(segmento_p[106]).to eq 'N' # aceite
|
163
163
|
expect(segmento_p[107..108]).to eq ' ' # brancos
|
164
|
-
expect(segmento_p[109..116]).to eq Date.current.strftime('%d%m%Y')# data de emissao
|
164
|
+
expect(segmento_p[109..116]).to eq Date.current.strftime('%d%m%Y') # data de emissao
|
165
165
|
expect(segmento_p[117]).to eq '1' # tipo da mora
|
166
166
|
expect(segmento_p[118..132]).to eq ''.rjust(15, '0') # valor juros/mora
|
167
167
|
expect(segmento_p[133..141]).to eq ''.rjust(9, '0') # zeros
|
@@ -204,7 +204,7 @@ RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
|
204
204
|
expect(segmento_q[153..154]).to eq '01' # tipo inscricao avalista
|
205
205
|
expect(segmento_q[155..168]).to eq '00012345678901' # documento avalista
|
206
206
|
expect(segmento_q[169..208]).to eq 'ISABEL CRISTINA LEOPOLDINA ALGUSTA MIGUE' # nome do avalista
|
207
|
-
expect(segmento_q[209..239]).to eq ''.rjust(31, ' ')
|
207
|
+
expect(segmento_q[209..239]).to eq ''.rjust(31, ' ') # brancos
|
208
208
|
end
|
209
209
|
end
|
210
210
|
|
@@ -260,9 +260,13 @@ RSpec.describe Brcobranca::Remessa::Cnab240::SicoobBancoBrasil do
|
|
260
260
|
context 'geracao remessa' do
|
261
261
|
context 'arquivo' do
|
262
262
|
before { Timecop.freeze(Time.local(2015, 7, 14, 16, 15, 15)) }
|
263
|
+
|
263
264
|
after { Timecop.return }
|
264
265
|
|
265
|
-
it {
|
266
|
+
it {
|
267
|
+
expect(sicoob_banco_brasil.gera_arquivo).to eq(read_remessa('remessa-sicoob-correspondente-bb-cnab240.rem',
|
268
|
+
sicoob_banco_brasil.gera_arquivo))
|
269
|
+
}
|
266
270
|
end
|
267
271
|
end
|
268
272
|
end
|