br_boleto 2.2.8 → 2.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.gitignore +0 -0
- data/.travis.yml +0 -0
- data/Gemfile +0 -0
- data/Gemfile.lock +0 -0
- data/History.txt +0 -0
- data/LICENSE +0 -0
- data/README.markdown +10 -10
- data/Rakefile +0 -0
- data/br_boleto.gemspec +0 -0
- data/lib/br_boleto.rb +0 -0
- data/lib/br_boleto/active_model_base.rb +0 -0
- data/lib/br_boleto/association/have_conta.rb +0 -0
- data/lib/br_boleto/association/have_pagador.rb +0 -0
- data/lib/br_boleto/association/have_pagamentos.rb +0 -0
- data/lib/br_boleto/boleto/banco_brasil.rb +0 -0
- data/lib/br_boleto/boleto/base.rb +0 -0
- data/lib/br_boleto/boleto/bradesco.rb +0 -0
- data/lib/br_boleto/boleto/caixa.rb +0 -0
- data/lib/br_boleto/boleto/cecred.rb +0 -0
- data/lib/br_boleto/boleto/itau.rb +0 -0
- data/lib/br_boleto/boleto/santander.rb +0 -0
- data/lib/br_boleto/boleto/sicoob.rb +0 -0
- data/lib/br_boleto/boleto/unicred.rb +0 -0
- data/lib/br_boleto/calculos/digitos.rb +0 -0
- data/lib/br_boleto/calculos/fator_vencimento.rb +0 -0
- data/lib/br_boleto/calculos/fatores_de_multiplicacao.rb +0 -0
- data/lib/br_boleto/calculos/linha_digitavel.rb +0 -0
- data/lib/br_boleto/calculos/modulo10.rb +0 -0
- data/lib/br_boleto/calculos/modulo11.rb +0 -0
- data/lib/br_boleto/calculos/modulo11_fator3197.rb +0 -0
- data/lib/br_boleto/calculos/modulo11_fator_de2a7.rb +0 -0
- data/lib/br_boleto/calculos/modulo11_fator_de2a9.rb +0 -0
- data/lib/br_boleto/calculos/modulo11_fator_de2a9_resto_zero.rb +0 -0
- data/lib/br_boleto/calculos/modulo11_fator_de9a2.rb +0 -0
- data/lib/br_boleto/calculos/modulo11_fator_de9a2_resto_x.rb +0 -0
- data/lib/br_boleto/calculos/modulo_numero_de_controle.rb +0 -0
- data/lib/br_boleto/conta/banco_brasil.rb +0 -0
- data/lib/br_boleto/conta/base.rb +0 -0
- data/lib/br_boleto/conta/bradesco.rb +0 -0
- data/lib/br_boleto/conta/caixa.rb +0 -0
- data/lib/br_boleto/conta/cecred.rb +0 -0
- data/lib/br_boleto/conta/itau.rb +0 -0
- data/lib/br_boleto/conta/santander.rb +0 -0
- data/lib/br_boleto/conta/sicoob.rb +0 -0
- data/lib/br_boleto/conta/sicredi.rb +0 -0
- data/lib/br_boleto/conta/unicred.rb +10 -2
- data/lib/br_boleto/helper/cpf_cnpj.rb +0 -0
- data/lib/br_boleto/helper/default_codes.rb +0 -0
- data/lib/br_boleto/helper/format_value.rb +0 -0
- data/lib/br_boleto/helper/number.rb +0 -0
- data/lib/br_boleto/pagador.rb +0 -0
- data/lib/br_boleto/remessa/base.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/banco_brasil.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/base.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/bradesco.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/cecred.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/helper/header_arquivo.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/helper/header_lote.rb +5 -2
- data/lib/br_boleto/remessa/cnab240/helper/segmento_q.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/helper/segmento_r.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/helper/segmento_s.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/helper/trailer_arquivo.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/helper/trailer_lote.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/itau.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/santander.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/sicoob.rb +10 -1
- data/lib/br_boleto/remessa/cnab240/sicredi.rb +0 -0
- data/lib/br_boleto/remessa/cnab240/unicred.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/banco_brasil.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/base.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/bradesco.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/caixa.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/helper/detalhe.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/helper/header.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/helper/trailer.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/itau.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/santander.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/sicoob.rb +0 -0
- data/lib/br_boleto/remessa/cnab400/sicredi.rb +3 -2
- data/lib/br_boleto/remessa/cnab400/unicred.rb +204 -28
- data/lib/br_boleto/remessa/lote.rb +0 -0
- data/lib/br_boleto/remessa/pagamento.rb +0 -0
- data/lib/br_boleto/retorno/base.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/banco_brasil.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/base.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/bradesco.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/caixa.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/cecred.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/itau.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/santander.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/sicoob.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/sicredi.rb +0 -0
- data/lib/br_boleto/retorno/cnab240/unicred.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/banco_brasil.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/base.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/bradesco.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/caixa.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/itau.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/santander.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/sicoob.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/sicredi.rb +0 -0
- data/lib/br_boleto/retorno/cnab400/unicred.rb +0 -0
- data/lib/br_boleto/retorno/pagamento.rb +0 -0
- data/lib/br_boleto/string_methods.rb +0 -0
- data/lib/br_boleto/validations.rb +0 -0
- data/lib/br_boleto/version.rb +1 -1
- data/lib/config/locales/br-boleto-en.yml +0 -0
- data/lib/config/locales/br-boleto-pt-BR.yml +0 -0
- data/test/br_boleto/association/have_conta_test.rb +0 -0
- data/test/br_boleto/association/have_pagador_test.rb +0 -0
- data/test/br_boleto/association/have_pagamentos_test.rb +0 -0
- data/test/br_boleto/boleto/banco_brasil_test.rb +0 -0
- data/test/br_boleto/boleto/base_test.rb +0 -0
- data/test/br_boleto/boleto/bradesco_test.rb +0 -0
- data/test/br_boleto/boleto/caixa_test.rb +0 -0
- data/test/br_boleto/boleto/cecred_test.rb +0 -0
- data/test/br_boleto/boleto/itau_test.rb +0 -0
- data/test/br_boleto/boleto/santander_test.rb +0 -0
- data/test/br_boleto/boleto/sicoob_test.rb +0 -0
- data/test/br_boleto/boleto/unicred_test.rb +10 -10
- data/test/br_boleto/calculos/digitos_test.rb +0 -0
- data/test/br_boleto/calculos/fator_vencimento_test.rb +0 -0
- data/test/br_boleto/calculos/fatores_de_multiplicacao_test.rb +0 -0
- data/test/br_boleto/calculos/linha_digitavel_test.rb +0 -0
- data/test/br_boleto/calculos/modulo10_test.rb +0 -0
- data/test/br_boleto/calculos/modulo11_fator3197_test.rb +0 -0
- data/test/br_boleto/calculos/modulo11_fator_de2a7_test.rb +0 -0
- data/test/br_boleto/calculos/modulo11_fator_de2a9_resto_zero_test.rb +0 -0
- data/test/br_boleto/calculos/modulo11_fator_de2a9_test.rb +0 -0
- data/test/br_boleto/calculos/modulo11_fator_de9a2_resto_x_test.rb +0 -0
- data/test/br_boleto/calculos/modulo11_fator_de9a2_test.rb +0 -0
- data/test/br_boleto/calculos/modulo11_test.rb +0 -0
- data/test/br_boleto/calculos/modulo_numero_de_controle_test.rb +0 -0
- data/test/br_boleto/conta/banco_brasil_test.rb +0 -0
- data/test/br_boleto/conta/base_test.rb +0 -0
- data/test/br_boleto/conta/bradesco_test.rb +0 -0
- data/test/br_boleto/conta/caixa_test.rb +0 -0
- data/test/br_boleto/conta/cecred_test.rb +0 -0
- data/test/br_boleto/conta/itau_test.rb +0 -0
- data/test/br_boleto/conta/santantader_test.rb +0 -0
- data/test/br_boleto/conta/sicoob_test.rb +0 -0
- data/test/br_boleto/conta/sicredi_test.rb +0 -0
- data/test/br_boleto/conta/unicred_test.rb +3 -3
- data/test/br_boleto/helper/number_test.rb +0 -0
- data/test/br_boleto/pagador_test.rb +0 -0
- data/test/br_boleto/remessa/base_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/banco_brasil_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/base_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/bradesco_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/caixa_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/cecred_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/helper/header_arquivo_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/helper/header_lote_test.rb +14 -14
- data/test/br_boleto/remessa/cnab240/helper/segmento_p_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/helper/segmento_q_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/helper/segmento_r_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/helper/segmento_s_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/helper/trailer_arquivo_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/helper/trailer_lote_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/itau_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/santander_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/sicoob_test.rb +32 -31
- data/test/br_boleto/remessa/cnab240/sicredi_test.rb +0 -0
- data/test/br_boleto/remessa/cnab240/unicred_test.rb +21 -21
- data/test/br_boleto/remessa/cnab400/banco_brasil_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/base_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/bradesco_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/caixa_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/itau_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/santander_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/sicoob_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/sicredi_test.rb +0 -0
- data/test/br_boleto/remessa/cnab400/unicred_test.rb +40 -66
- data/test/br_boleto/remessa/lote_test.rb +0 -0
- data/test/br_boleto/remessa/pagamento_test.rb +0 -0
- data/test/br_boleto/retorno/base_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/banco_brasil_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/base_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/bradesco_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/caixa_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/cecred_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/itau_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/santander_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/sicoob_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/sicredi_test.rb +0 -0
- data/test/br_boleto/retorno/cnab240/unicred_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/banco_brasil_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/bradesco_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/caixa_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/itau_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/santander_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/sicoob_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/sicredi_test.rb +0 -0
- data/test/br_boleto/retorno/cnab400/unicred.rb +0 -0
- data/test/br_boleto/retorno/pagamento_test.rb +0 -0
- data/test/factories/boleto/base.rb +0 -0
- data/test/factories/boleto/boleto_banco_brasil.rb +0 -0
- data/test/factories/boleto/boleto_bradesco.rb +0 -0
- data/test/factories/boleto/boleto_caixa.rb +0 -0
- data/test/factories/boleto/boleto_cecred.rb +0 -0
- data/test/factories/boleto/boleto_itau.rb +0 -0
- data/test/factories/boleto/boleto_santander.rb +0 -0
- data/test/factories/boleto/boleto_sicoob.rb +0 -0
- data/test/factories/boleto/boleto_sicredi.rb +0 -0
- data/test/factories/boleto/boleto_unicred.rb +0 -0
- data/test/factories/conta/banco_brasil.rb +0 -0
- data/test/factories/conta/base.rb +0 -0
- data/test/factories/conta/bradesco.rb +0 -0
- data/test/factories/conta/caixa.rb +0 -0
- data/test/factories/conta/cecred.rb +0 -0
- data/test/factories/conta/itau.rb +0 -0
- data/test/factories/conta/santander.rb +0 -0
- data/test/factories/conta/sicoob.rb +0 -0
- data/test/factories/conta/sicredi.rb +0 -0
- data/test/factories/conta/unicred.rb +0 -0
- data/test/factories/pagador.rb +0 -0
- data/test/factories/remessa/base.rb +0 -0
- data/test/factories/remessa/cnab240/banco_brasil.rb +0 -0
- data/test/factories/remessa/cnab240/base.rb +0 -0
- data/test/factories/remessa/cnab240/bradesco.rb +0 -0
- data/test/factories/remessa/cnab240/caixa.rb +0 -0
- data/test/factories/remessa/cnab240/cecred.rb +0 -0
- data/test/factories/remessa/cnab240/itau.rb +0 -0
- data/test/factories/remessa/cnab240/santander.rb +0 -0
- data/test/factories/remessa/cnab240/sicoob.rb +0 -0
- data/test/factories/remessa/cnab240/sicredi.rb +0 -0
- data/test/factories/remessa/cnab240/unicred.rb +0 -0
- data/test/factories/remessa/cnab400/banco_brasil.rb +0 -0
- data/test/factories/remessa/cnab400/base.rb +0 -0
- data/test/factories/remessa/cnab400/bradesco.rb +0 -0
- data/test/factories/remessa/cnab400/caixa.rb +0 -0
- data/test/factories/remessa/cnab400/itau.rb +0 -0
- data/test/factories/remessa/cnab400/santander.rb +0 -0
- data/test/factories/remessa/cnab400/sicoob.rb +0 -0
- data/test/factories/remessa/cnab400/sicredi.rb +0 -0
- data/test/factories/remessa/cnab400/unicred.rb +0 -0
- data/test/factories/remessa/lote.rb +0 -0
- data/test/factories/remessa/pagamento.rb +0 -0
- data/test/factories/retorno/pagamento.rb +0 -0
- data/test/fixtures/remessa/cnab240/caixa.rem +1 -1
- data/test/fixtures/remessa/cnab240/cecred.rem +0 -0
- data/test/fixtures/remessa/cnab240/sicoob.rem +1 -1
- data/test/fixtures/remessa/cnab240/unicred.rem +7 -7
- data/test/fixtures/retorno/cnab240/banco_brasil.ret +0 -0
- data/test/fixtures/retorno/cnab240/caixa.ret +0 -0
- data/test/fixtures/retorno/cnab240/cecred.ret +0 -0
- data/test/fixtures/retorno/cnab240/padrao240.ret +0 -0
- data/test/fixtures/retorno/cnab240/santander.ret +0 -0
- data/test/fixtures/retorno/cnab400/bradesco.ret +0 -0
- data/test/fixtures/retorno/cnab400/itau.ret +0 -0
- data/test/fixtures/retorno/cnab400/sicoob.ret +0 -0
- data/test/fixtures/retorno/cnab400/sicredi.ret +0 -0
- data/test/inheritance/boleto_test.rb +0 -0
- data/test/inheritance/sicoob_test.rb +0 -0
- data/test/test_helper.rb +0 -0
- metadata +3 -3
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
data/lib/br_boleto/version.rb
CHANGED
|
@@ -2,7 +2,7 @@ module BrBoleto
|
|
|
2
2
|
module Version
|
|
3
3
|
MAJOR = 2 #inclui alterações de API e pode quebrar compatibilidade com versões anteriores
|
|
4
4
|
MINOR = 2 #inclui novas funcionalidades, sem quebrar APIs existentes
|
|
5
|
-
PATCH =
|
|
5
|
+
PATCH = 9 #corrige bugs ou traz melhorias em implementações já existentes
|
|
6
6
|
CURRENT = "#{MAJOR}.#{MINOR}.#{PATCH}"
|
|
7
7
|
end
|
|
8
8
|
end
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -3,12 +3,12 @@ require 'test_helper'
|
|
|
3
3
|
|
|
4
4
|
describe BrBoleto::Boleto::Unicred do
|
|
5
5
|
subject { FactoryGirl.build(:boleto_unicred, conta: conta) }
|
|
6
|
-
let(:conta) { FactoryGirl.build(:conta_unicred) }
|
|
6
|
+
let(:conta) { FactoryGirl.build(:conta_unicred) }
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
context "on validations" do
|
|
10
10
|
it { must validate_length_of(:numero_documento).is_at_most(11).with_message(:custom_length_maximum) }
|
|
11
|
-
|
|
11
|
+
|
|
12
12
|
context '#conta.carteira' do
|
|
13
13
|
it { subject.valid_carteira_inclusion.must_equal ['06','09','19','21','22'] }
|
|
14
14
|
it "validação da carteira da conta" do
|
|
@@ -22,7 +22,7 @@ describe BrBoleto::Boleto::Unicred do
|
|
|
22
22
|
describe '#conta.convenio / codigo_cedente' do
|
|
23
23
|
it { subject.valid_convenio_maximum.must_equal 7 }
|
|
24
24
|
it { subject.valid_convenio_required.must_equal true }
|
|
25
|
-
|
|
25
|
+
|
|
26
26
|
it "validação obrigatoriedade do codigo_cedente da conta" do
|
|
27
27
|
subject.conta.codigo_cedente = ''
|
|
28
28
|
conta_must_be_msg_error(:convenio, :blank)
|
|
@@ -63,7 +63,7 @@ describe BrBoleto::Boleto::Unicred do
|
|
|
63
63
|
describe "#nosso_numero" do
|
|
64
64
|
subject { FactoryGirl.build(:boleto_unicred, numero_documento: '68315') }
|
|
65
65
|
|
|
66
|
-
it "deve retornar o numero do documento com o digito_verificador_nosso_numero" do
|
|
66
|
+
it "deve retornar o numero do documento com o digito_verificador_nosso_numero" do
|
|
67
67
|
subject.stubs(:digito_verificador_nosso_numero).returns('9')
|
|
68
68
|
subject.numero_documento = '3646'
|
|
69
69
|
subject.nosso_numero.must_equal "09/00000003646-9"
|
|
@@ -71,7 +71,7 @@ describe BrBoleto::Boleto::Unicred do
|
|
|
71
71
|
end
|
|
72
72
|
|
|
73
73
|
describe "#codigo_de_barras_do_banco" do
|
|
74
|
-
subject do
|
|
74
|
+
subject do
|
|
75
75
|
FactoryGirl.build(:boleto_unicred, conta: {
|
|
76
76
|
carteira: '09',
|
|
77
77
|
agencia: '78',
|
|
@@ -109,11 +109,11 @@ describe BrBoleto::Boleto::Unicred do
|
|
|
109
109
|
end
|
|
110
110
|
end
|
|
111
111
|
|
|
112
|
-
it { subject.codigo_de_barras.must_equal '
|
|
113
|
-
it { subject.linha_digitavel.must_equal '
|
|
112
|
+
it { subject.codigo_de_barras.must_equal '13691816800093015783069090000001001000897550' }
|
|
113
|
+
it { subject.linha_digitavel.must_equal '13693.06905 90000.001009 10008.975509 1 81680009301578' }
|
|
114
114
|
|
|
115
115
|
it "codigo de barras de um boleto de exemplo" do
|
|
116
|
-
subject.conta.agencia = 3069
|
|
116
|
+
subject.conta.agencia = 3069
|
|
117
117
|
subject.conta.codigo_cedente = 82819 # Para o unicred é o código do cliente
|
|
118
118
|
subject.conta.codigo_cedente_dv = 0 # Para o unicred é o código do cliente
|
|
119
119
|
subject.conta.carteira = '09'
|
|
@@ -121,8 +121,8 @@ describe BrBoleto::Boleto::Unicred do
|
|
|
121
121
|
subject.valor_documento = 408.50
|
|
122
122
|
subject.data_vencimento = Date.parse('2016-09-01')
|
|
123
123
|
|
|
124
|
-
subject.linha_digitavel.must_equal '
|
|
125
|
-
subject.codigo_de_barras.must_equal '
|
|
124
|
+
subject.linha_digitavel.must_equal '13693.06905 90000.001561 79008.975504 9 69040000040850'
|
|
125
|
+
subject.codigo_de_barras.must_equal '13699690400000408503069090000001567900897550'
|
|
126
126
|
end
|
|
127
127
|
end
|
|
128
128
|
end
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -67,7 +67,7 @@ describe BrBoleto::Conta::Unicred do
|
|
|
67
67
|
end
|
|
68
68
|
|
|
69
69
|
it "codigo do banco" do
|
|
70
|
-
subject.codigo_banco.must_equal '
|
|
70
|
+
subject.codigo_banco.must_equal '136'
|
|
71
71
|
end
|
|
72
72
|
it '#codigo_banco_dv' do
|
|
73
73
|
subject.codigo_banco_dv.must_equal '2'
|
|
@@ -75,7 +75,7 @@ describe BrBoleto::Conta::Unicred do
|
|
|
75
75
|
|
|
76
76
|
describe "#nome_banco" do
|
|
77
77
|
it "valor padrão para o nome_banco" do
|
|
78
|
-
subject.nome_banco.must_equal '
|
|
78
|
+
subject.nome_banco.must_equal 'UNICRED'
|
|
79
79
|
end
|
|
80
80
|
it "deve ser possível mudar o valor do nome do banco" do
|
|
81
81
|
subject.nome_banco = 'MEU'
|
|
@@ -148,7 +148,7 @@ describe BrBoleto::Conta::Unicred do
|
|
|
148
148
|
it { subject.get_codigo_protesto('4', 240).must_equal '1' } # Protestar Fim Falimentar - Dias Úteis
|
|
149
149
|
it { subject.get_codigo_protesto('5', 240).must_equal '1' } # Protestar Fim Falimentar - Dias Corridos
|
|
150
150
|
it { subject.get_codigo_protesto('8', 240).must_equal '3' } # Negativação sem Protesto
|
|
151
|
-
it { subject.get_codigo_protesto('9', 240).must_equal '3' } # Cancelamento Protesto Automático
|
|
151
|
+
it { subject.get_codigo_protesto('9', 240).must_equal '3' } # Cancelamento Protesto Automático
|
|
152
152
|
end
|
|
153
153
|
end
|
|
154
154
|
end
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -33,18 +33,18 @@ module Helper
|
|
|
33
33
|
subject.header_lote_posicao_001_a_003.must_equal("669")
|
|
34
34
|
end
|
|
35
35
|
|
|
36
|
-
# Lote de Serviço
|
|
36
|
+
# Lote de Serviço
|
|
37
37
|
# 4 posições
|
|
38
38
|
# Deve pegar o numero do lote preenchendo com 0
|
|
39
|
-
#
|
|
39
|
+
#
|
|
40
40
|
def test_HeaderLoteTest_metodo_header_lote_posicao_004_a_007
|
|
41
41
|
subject.header_lote_posicao_004_a_007(5).must_equal "0005"
|
|
42
42
|
end
|
|
43
43
|
|
|
44
|
-
# Tipo de Registro
|
|
44
|
+
# Tipo de Registro
|
|
45
45
|
# 1 posição
|
|
46
46
|
# valor padrão 1
|
|
47
|
-
#
|
|
47
|
+
#
|
|
48
48
|
def test_HeaderLoteTest_metodo_header_lote_posicao_008_a_008
|
|
49
49
|
subject.header_lote_posicao_008_a_008.must_equal '1'
|
|
50
50
|
end
|
|
@@ -90,7 +90,7 @@ module Helper
|
|
|
90
90
|
subject.header_lote_posicao_017_a_017.must_equal ' '
|
|
91
91
|
end
|
|
92
92
|
|
|
93
|
-
# Tipo de Inscrição da Empresa
|
|
93
|
+
# Tipo de Inscrição da Empresa
|
|
94
94
|
# 1 posição
|
|
95
95
|
# Deve pegar o valor do metodo "tipo_inscricao"
|
|
96
96
|
#
|
|
@@ -99,7 +99,7 @@ module Helper
|
|
|
99
99
|
subject.header_lote_posicao_018_a_018.must_equal '3'
|
|
100
100
|
end
|
|
101
101
|
|
|
102
|
-
# Número de Inscrição da Empresa
|
|
102
|
+
# Número de Inscrição da Empresa
|
|
103
103
|
# 15 posições
|
|
104
104
|
# Deve pegar o valor do 'documento_cedente' e ajustar com 0 o espaço em branco
|
|
105
105
|
#
|
|
@@ -118,7 +118,7 @@ module Helper
|
|
|
118
118
|
end
|
|
119
119
|
|
|
120
120
|
# Informações da conta bancária
|
|
121
|
-
# O padrão da FEBRABAN é:
|
|
121
|
+
# O padrão da FEBRABAN é:
|
|
122
122
|
# Posição de 54 até 58 com 05 posições = Agência Mantenedora da Conta
|
|
123
123
|
# Posição de 59 até 59 com 01 posições = DV -> Dígito Verificador da Agência
|
|
124
124
|
# Posição de 60 até 71 com 12 posições = Conta -> Número Número da Conta Corrente
|
|
@@ -131,7 +131,7 @@ module Helper
|
|
|
131
131
|
#
|
|
132
132
|
def test_HeaderLoteTest_metodo_header_lote_posicao_054_a_073
|
|
133
133
|
subject.expects(:informacoes_da_conta).returns('informacoes_da_conta')
|
|
134
|
-
subject.header_lote_posicao_054_a_073.must_equal '
|
|
134
|
+
subject.header_lote_posicao_054_a_073.must_equal 'informacoes_da_cont '
|
|
135
135
|
end
|
|
136
136
|
|
|
137
137
|
# Nome da Empresa
|
|
@@ -143,7 +143,7 @@ module Helper
|
|
|
143
143
|
subject.header_lote_posicao_074_a_103.must_equal 'nome_empresa_formatada'.ljust(30, ' ')
|
|
144
144
|
end
|
|
145
145
|
|
|
146
|
-
# Mensagem 1
|
|
146
|
+
# Mensagem 1
|
|
147
147
|
# 40 posições
|
|
148
148
|
# Deve pegar o valor da "mensagem_1" e ajsutar para 40 posiçoes
|
|
149
149
|
#
|
|
@@ -161,7 +161,7 @@ module Helper
|
|
|
161
161
|
subject.header_lote_posicao_144_a_183.must_equal ''.rjust(40, '2')
|
|
162
162
|
end
|
|
163
163
|
|
|
164
|
-
# Número Remessa/Retorno
|
|
164
|
+
# Número Remessa/Retorno
|
|
165
165
|
# 8 posições
|
|
166
166
|
# Deve pegar o valor do metodo "sequencial_remessa" e ajustar para 8 posições com zero
|
|
167
167
|
#
|
|
@@ -170,7 +170,7 @@ module Helper
|
|
|
170
170
|
subject.header_lote_posicao_184_a_191.must_equal "111".rjust(8, '0')
|
|
171
171
|
end
|
|
172
172
|
|
|
173
|
-
# Data de Gravação Remessa/Retorno
|
|
173
|
+
# Data de Gravação Remessa/Retorno
|
|
174
174
|
# 8 posições
|
|
175
175
|
# Deve retornar o valor do metodo "data_geracao"
|
|
176
176
|
#
|
|
@@ -179,7 +179,7 @@ module Helper
|
|
|
179
179
|
subject.header_lote_posicao_192_a_199.must_equal 'data_geracao'
|
|
180
180
|
end
|
|
181
181
|
|
|
182
|
-
# Data do Crédito
|
|
182
|
+
# Data do Crédito
|
|
183
183
|
# 8 posições
|
|
184
184
|
# Deve conter 8 posições com zeros
|
|
185
185
|
#
|
|
@@ -190,11 +190,11 @@ module Helper
|
|
|
190
190
|
# Uso Exclusivo FEBRABAN/CNAB
|
|
191
191
|
# 33 posições
|
|
192
192
|
# Deve conter 33 posições em branco
|
|
193
|
-
#
|
|
193
|
+
#
|
|
194
194
|
def test_HeaderLoteTest_metodo_header_lote_posicao_208_a_240
|
|
195
195
|
subject.header_lote_posicao_208_a_240.must_equal ''.rjust(33, ' ')
|
|
196
196
|
end
|
|
197
197
|
|
|
198
|
-
|
|
198
|
+
|
|
199
199
|
end
|
|
200
200
|
end
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -2,8 +2,8 @@ require 'test_helper'
|
|
|
2
2
|
|
|
3
3
|
describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
4
4
|
subject { FactoryGirl.build(:remessa_cnab240_sicoob, lotes: lote) }
|
|
5
|
-
let(:pagamento) { FactoryGirl.build(:remessa_pagamento, valor_documento: 100.00) }
|
|
6
|
-
let(:lote) { FactoryGirl.build(:remessa_lote, pagamentos: pagamento) }
|
|
5
|
+
let(:pagamento) { FactoryGirl.build(:remessa_pagamento, valor_documento: 100.00) }
|
|
6
|
+
let(:lote) { FactoryGirl.build(:remessa_lote, pagamentos: pagamento) }
|
|
7
7
|
|
|
8
8
|
it "deve herdar da class Base" do
|
|
9
9
|
subject.class.superclass.must_equal BrBoleto::Remessa::Cnab240::Base
|
|
@@ -43,7 +43,7 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
43
43
|
end
|
|
44
44
|
|
|
45
45
|
private
|
|
46
|
-
|
|
46
|
+
|
|
47
47
|
def conta_must_be_msg_error(attr_validation, msg_key, options_msg={})
|
|
48
48
|
must_be_message_error(:base, "#{BrBoleto::Conta::Sicoob.human_attribute_name(attr_validation)} #{get_message(msg_key, options_msg)}")
|
|
49
49
|
end
|
|
@@ -52,13 +52,13 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
52
52
|
end
|
|
53
53
|
|
|
54
54
|
describe "#default_values" do
|
|
55
|
-
it "for tipo_formulario" do
|
|
55
|
+
it "for tipo_formulario" do
|
|
56
56
|
object = subject.class.new()
|
|
57
57
|
object.tipo_formulario.must_equal '4'
|
|
58
58
|
end
|
|
59
59
|
end
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
|
|
62
62
|
it "o codigo_convenio deve ter 20 posições em branco" do
|
|
63
63
|
subject.codigo_convenio.must_equal ''.rjust(20, ' ')
|
|
64
64
|
end
|
|
@@ -112,7 +112,7 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
112
112
|
end
|
|
113
113
|
|
|
114
114
|
describe "#complemento_trailer_lote" do
|
|
115
|
-
let(:pagamento_2) { FactoryGirl.build(:remessa_pagamento, valor_documento: 50.25) }
|
|
115
|
+
let(:pagamento_2) { FactoryGirl.build(:remessa_pagamento, valor_documento: 50.25) }
|
|
116
116
|
it "deve carregar os dados dos metodos complemento_trailer_lote na sequencia" do
|
|
117
117
|
subject.stubs(:complemento_trailer_lote_posicao_024_a_029).with(lote).returns(" 024_a_029")
|
|
118
118
|
subject.stubs(:complemento_trailer_lote_posicao_030_a_046).with(lote).returns(" 030_a_046")
|
|
@@ -134,23 +134,23 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
134
134
|
describe "#complemento_trailer_lote_posicao_024_a_029" do
|
|
135
135
|
it "se o tipo_cobranca_formatada for simples, então deve contar o total de pagamentos do lote" do
|
|
136
136
|
subject.expects(:tipo_cobranca_formatada).returns(:simples)
|
|
137
|
-
subject.complemento_trailer_lote_posicao_024_a_029(lote).must_equal "2".rjust(6, "0")
|
|
138
|
-
end
|
|
137
|
+
subject.complemento_trailer_lote_posicao_024_a_029(lote).must_equal "2".rjust(6, "0")
|
|
138
|
+
end
|
|
139
139
|
it "se o tipo_cobranca_formatada não for simples, então não deve contar o total de pagamentos do lote" do
|
|
140
140
|
subject.expects(:tipo_cobranca_formatada).returns(:caucionada)
|
|
141
|
-
subject.complemento_trailer_lote_posicao_024_a_029(lote).must_equal "".rjust(6, "0")
|
|
142
|
-
end
|
|
141
|
+
subject.complemento_trailer_lote_posicao_024_a_029(lote).must_equal "".rjust(6, "0")
|
|
142
|
+
end
|
|
143
143
|
end
|
|
144
144
|
|
|
145
145
|
describe "#complemento_trailer_lote_posicao_030_a_046" do
|
|
146
146
|
it "se o tipo_cobranca_formatada for simples, então deve somar o valor_documento dos pagamentos do lote" do
|
|
147
147
|
subject.expects(:tipo_cobranca_formatada).returns(:simples)
|
|
148
|
-
subject.complemento_trailer_lote_posicao_030_a_046(lote).must_equal "15025".rjust(17, "0")
|
|
149
|
-
end
|
|
148
|
+
subject.complemento_trailer_lote_posicao_030_a_046(lote).must_equal "15025".rjust(17, "0")
|
|
149
|
+
end
|
|
150
150
|
it "se o tipo_cobranca_formatada não for simples, então não deve somar o valor_documento dos pagamentos do lote" do
|
|
151
151
|
subject.expects(:tipo_cobranca_formatada).returns(:caucionada)
|
|
152
|
-
subject.complemento_trailer_lote_posicao_030_a_046(lote).must_equal "".rjust(17, "0")
|
|
153
|
-
end
|
|
152
|
+
subject.complemento_trailer_lote_posicao_030_a_046(lote).must_equal "".rjust(17, "0")
|
|
153
|
+
end
|
|
154
154
|
end
|
|
155
155
|
|
|
156
156
|
describe "#complemento_trailer_lote_posicao_047_a_052" do
|
|
@@ -164,23 +164,23 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
164
164
|
describe "#complemento_trailer_lote_posicao_070_a_075" do
|
|
165
165
|
it "se o tipo_cobranca_formatada for caucionada, então deve contar o total de pagamentos do lote" do
|
|
166
166
|
subject.expects(:tipo_cobranca_formatada).returns(:caucionada)
|
|
167
|
-
subject.complemento_trailer_lote_posicao_070_a_075(lote).must_equal "2".rjust(6, "0")
|
|
168
|
-
end
|
|
167
|
+
subject.complemento_trailer_lote_posicao_070_a_075(lote).must_equal "2".rjust(6, "0")
|
|
168
|
+
end
|
|
169
169
|
it "se o tipo_cobranca_formatada não for caucionada, então não deve contar o total de pagamentos do lote" do
|
|
170
170
|
subject.expects(:tipo_cobranca_formatada).returns(:simples)
|
|
171
|
-
subject.complemento_trailer_lote_posicao_070_a_075(lote).must_equal "".rjust(6, "0")
|
|
172
|
-
end
|
|
171
|
+
subject.complemento_trailer_lote_posicao_070_a_075(lote).must_equal "".rjust(6, "0")
|
|
172
|
+
end
|
|
173
173
|
end
|
|
174
174
|
|
|
175
175
|
describe "#complemento_trailer_lote_posicao_076_a_092" do
|
|
176
176
|
it "se o tipo_cobranca_formatada for caucionada, então deve somar o valor_documento dos pagamentos do lote" do
|
|
177
177
|
subject.expects(:tipo_cobranca_formatada).returns(:caucionada)
|
|
178
|
-
subject.complemento_trailer_lote_posicao_076_a_092(lote).must_equal "15025".rjust(17, "0")
|
|
179
|
-
end
|
|
178
|
+
subject.complemento_trailer_lote_posicao_076_a_092(lote).must_equal "15025".rjust(17, "0")
|
|
179
|
+
end
|
|
180
180
|
it "se o tipo_cobranca_formatada não for caucionada, então não deve somar o valor_documento dos pagamentos do lote" do
|
|
181
181
|
subject.expects(:tipo_cobranca_formatada).returns(:simples)
|
|
182
|
-
subject.complemento_trailer_lote_posicao_076_a_092(lote).must_equal "".rjust(17, "0")
|
|
183
|
-
end
|
|
182
|
+
subject.complemento_trailer_lote_posicao_076_a_092(lote).must_equal "".rjust(17, "0")
|
|
183
|
+
end
|
|
184
184
|
end
|
|
185
185
|
|
|
186
186
|
describe "#complemento_trailer_lote_posicao_093_a_098" do
|
|
@@ -194,7 +194,7 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
194
194
|
describe "#complemento_trailer_lote_posicao_116_a_123" do
|
|
195
195
|
it { subject.complemento_trailer_lote_posicao_116_a_123(lote).must_equal "".rjust(8, " ") }
|
|
196
196
|
end
|
|
197
|
-
|
|
197
|
+
|
|
198
198
|
describe "#complemento_trailer_lote_posicao_124_a_240" do
|
|
199
199
|
it { subject.complemento_trailer_lote_posicao_124_a_240.must_equal "".rjust(117, " ") }
|
|
200
200
|
end
|
|
@@ -318,7 +318,7 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
318
318
|
end
|
|
319
319
|
|
|
320
320
|
describe 'Geração do arquivo' do
|
|
321
|
-
let(:conta) do
|
|
321
|
+
let(:conta) do
|
|
322
322
|
{
|
|
323
323
|
razao_social: 'EMPRESA EMITENTE',
|
|
324
324
|
cpf_cnpj: '33.486.451/0001-30',
|
|
@@ -328,9 +328,9 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
328
328
|
codigo_cedente: '82819',
|
|
329
329
|
conta_corrente: '54843'
|
|
330
330
|
|
|
331
|
-
}
|
|
331
|
+
}
|
|
332
332
|
end
|
|
333
|
-
let(:pagador) {
|
|
333
|
+
let(:pagador) {
|
|
334
334
|
{
|
|
335
335
|
nome: 'Benjamin Francisco Marcos Vinicius Fernandes',
|
|
336
336
|
cpf_cnpj: '787.933.211-12',
|
|
@@ -341,7 +341,7 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
341
341
|
uf: 'MS',
|
|
342
342
|
}
|
|
343
343
|
}
|
|
344
|
-
let(:pagamento) {
|
|
344
|
+
let(:pagamento) {
|
|
345
345
|
BrBoleto::Remessa::Pagamento.new({
|
|
346
346
|
nosso_numero: '00157804',
|
|
347
347
|
numero_documento: '00157804',
|
|
@@ -349,16 +349,16 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
349
349
|
valor_documento: 147.89,
|
|
350
350
|
pagador: pagador,
|
|
351
351
|
especie_titulo: '02',
|
|
352
|
-
codigo_juros: '1',
|
|
352
|
+
codigo_juros: '1',
|
|
353
353
|
data_juros: Date.parse('07/09/2016'),
|
|
354
354
|
valor_juros: 0.25,
|
|
355
|
-
codigo_multa: '2',
|
|
355
|
+
codigo_multa: '2',
|
|
356
356
|
data_multa: Date.parse('07/09/2016'),
|
|
357
357
|
valor_multa: 2.00,
|
|
358
358
|
data_emissao: Date.parse('06/09/2016'),
|
|
359
359
|
})
|
|
360
360
|
}
|
|
361
|
-
let(:lote) { BrBoleto::Remessa::Lote.new(pagamentos: pagamento) }
|
|
361
|
+
let(:lote) { BrBoleto::Remessa::Lote.new(pagamentos: pagamento) }
|
|
362
362
|
it "deve gerar o arquivo de remessa corretamente com as informações passadas" do
|
|
363
363
|
remessa = BrBoleto::Remessa::Cnab240::Sicoob.new({
|
|
364
364
|
data_hora_arquivo: Time.parse('06/09/2016 09:43:52'),
|
|
@@ -366,7 +366,8 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
|
|
|
366
366
|
conta: conta,
|
|
367
367
|
lotes: [lote],
|
|
368
368
|
})
|
|
369
|
-
|
|
369
|
+
idx = 0
|
|
370
|
+
remessa.dados_do_arquivo.split("\n")[idx].must_equal read_fixture('remessa/cnab240/sicoob.rem').split("\n")[idx]
|
|
370
371
|
end
|
|
371
372
|
end
|
|
372
373
|
end
|