br_boleto 2.2.8 → 2.2.9
Sign up to get free protection for your applications and to get access to all the features.
- 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
|