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.
Files changed (257) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +0 -0
  3. data/.travis.yml +0 -0
  4. data/Gemfile +0 -0
  5. data/Gemfile.lock +0 -0
  6. data/History.txt +0 -0
  7. data/LICENSE +0 -0
  8. data/README.markdown +10 -10
  9. data/Rakefile +0 -0
  10. data/br_boleto.gemspec +0 -0
  11. data/lib/br_boleto.rb +0 -0
  12. data/lib/br_boleto/active_model_base.rb +0 -0
  13. data/lib/br_boleto/association/have_conta.rb +0 -0
  14. data/lib/br_boleto/association/have_pagador.rb +0 -0
  15. data/lib/br_boleto/association/have_pagamentos.rb +0 -0
  16. data/lib/br_boleto/boleto/banco_brasil.rb +0 -0
  17. data/lib/br_boleto/boleto/base.rb +0 -0
  18. data/lib/br_boleto/boleto/bradesco.rb +0 -0
  19. data/lib/br_boleto/boleto/caixa.rb +0 -0
  20. data/lib/br_boleto/boleto/cecred.rb +0 -0
  21. data/lib/br_boleto/boleto/itau.rb +0 -0
  22. data/lib/br_boleto/boleto/santander.rb +0 -0
  23. data/lib/br_boleto/boleto/sicoob.rb +0 -0
  24. data/lib/br_boleto/boleto/unicred.rb +0 -0
  25. data/lib/br_boleto/calculos/digitos.rb +0 -0
  26. data/lib/br_boleto/calculos/fator_vencimento.rb +0 -0
  27. data/lib/br_boleto/calculos/fatores_de_multiplicacao.rb +0 -0
  28. data/lib/br_boleto/calculos/linha_digitavel.rb +0 -0
  29. data/lib/br_boleto/calculos/modulo10.rb +0 -0
  30. data/lib/br_boleto/calculos/modulo11.rb +0 -0
  31. data/lib/br_boleto/calculos/modulo11_fator3197.rb +0 -0
  32. data/lib/br_boleto/calculos/modulo11_fator_de2a7.rb +0 -0
  33. data/lib/br_boleto/calculos/modulo11_fator_de2a9.rb +0 -0
  34. data/lib/br_boleto/calculos/modulo11_fator_de2a9_resto_zero.rb +0 -0
  35. data/lib/br_boleto/calculos/modulo11_fator_de9a2.rb +0 -0
  36. data/lib/br_boleto/calculos/modulo11_fator_de9a2_resto_x.rb +0 -0
  37. data/lib/br_boleto/calculos/modulo_numero_de_controle.rb +0 -0
  38. data/lib/br_boleto/conta/banco_brasil.rb +0 -0
  39. data/lib/br_boleto/conta/base.rb +0 -0
  40. data/lib/br_boleto/conta/bradesco.rb +0 -0
  41. data/lib/br_boleto/conta/caixa.rb +0 -0
  42. data/lib/br_boleto/conta/cecred.rb +0 -0
  43. data/lib/br_boleto/conta/itau.rb +0 -0
  44. data/lib/br_boleto/conta/santander.rb +0 -0
  45. data/lib/br_boleto/conta/sicoob.rb +0 -0
  46. data/lib/br_boleto/conta/sicredi.rb +0 -0
  47. data/lib/br_boleto/conta/unicred.rb +10 -2
  48. data/lib/br_boleto/helper/cpf_cnpj.rb +0 -0
  49. data/lib/br_boleto/helper/default_codes.rb +0 -0
  50. data/lib/br_boleto/helper/format_value.rb +0 -0
  51. data/lib/br_boleto/helper/number.rb +0 -0
  52. data/lib/br_boleto/pagador.rb +0 -0
  53. data/lib/br_boleto/remessa/base.rb +0 -0
  54. data/lib/br_boleto/remessa/cnab240/banco_brasil.rb +0 -0
  55. data/lib/br_boleto/remessa/cnab240/base.rb +0 -0
  56. data/lib/br_boleto/remessa/cnab240/bradesco.rb +0 -0
  57. data/lib/br_boleto/remessa/cnab240/cecred.rb +0 -0
  58. data/lib/br_boleto/remessa/cnab240/helper/header_arquivo.rb +0 -0
  59. data/lib/br_boleto/remessa/cnab240/helper/header_lote.rb +5 -2
  60. data/lib/br_boleto/remessa/cnab240/helper/segmento_q.rb +0 -0
  61. data/lib/br_boleto/remessa/cnab240/helper/segmento_r.rb +0 -0
  62. data/lib/br_boleto/remessa/cnab240/helper/segmento_s.rb +0 -0
  63. data/lib/br_boleto/remessa/cnab240/helper/trailer_arquivo.rb +0 -0
  64. data/lib/br_boleto/remessa/cnab240/helper/trailer_lote.rb +0 -0
  65. data/lib/br_boleto/remessa/cnab240/itau.rb +0 -0
  66. data/lib/br_boleto/remessa/cnab240/santander.rb +0 -0
  67. data/lib/br_boleto/remessa/cnab240/sicoob.rb +10 -1
  68. data/lib/br_boleto/remessa/cnab240/sicredi.rb +0 -0
  69. data/lib/br_boleto/remessa/cnab240/unicred.rb +0 -0
  70. data/lib/br_boleto/remessa/cnab400/banco_brasil.rb +0 -0
  71. data/lib/br_boleto/remessa/cnab400/base.rb +0 -0
  72. data/lib/br_boleto/remessa/cnab400/bradesco.rb +0 -0
  73. data/lib/br_boleto/remessa/cnab400/caixa.rb +0 -0
  74. data/lib/br_boleto/remessa/cnab400/helper/detalhe.rb +0 -0
  75. data/lib/br_boleto/remessa/cnab400/helper/header.rb +0 -0
  76. data/lib/br_boleto/remessa/cnab400/helper/trailer.rb +0 -0
  77. data/lib/br_boleto/remessa/cnab400/itau.rb +0 -0
  78. data/lib/br_boleto/remessa/cnab400/santander.rb +0 -0
  79. data/lib/br_boleto/remessa/cnab400/sicoob.rb +0 -0
  80. data/lib/br_boleto/remessa/cnab400/sicredi.rb +3 -2
  81. data/lib/br_boleto/remessa/cnab400/unicred.rb +204 -28
  82. data/lib/br_boleto/remessa/lote.rb +0 -0
  83. data/lib/br_boleto/remessa/pagamento.rb +0 -0
  84. data/lib/br_boleto/retorno/base.rb +0 -0
  85. data/lib/br_boleto/retorno/cnab240/banco_brasil.rb +0 -0
  86. data/lib/br_boleto/retorno/cnab240/base.rb +0 -0
  87. data/lib/br_boleto/retorno/cnab240/bradesco.rb +0 -0
  88. data/lib/br_boleto/retorno/cnab240/caixa.rb +0 -0
  89. data/lib/br_boleto/retorno/cnab240/cecred.rb +0 -0
  90. data/lib/br_boleto/retorno/cnab240/itau.rb +0 -0
  91. data/lib/br_boleto/retorno/cnab240/santander.rb +0 -0
  92. data/lib/br_boleto/retorno/cnab240/sicoob.rb +0 -0
  93. data/lib/br_boleto/retorno/cnab240/sicredi.rb +0 -0
  94. data/lib/br_boleto/retorno/cnab240/unicred.rb +0 -0
  95. data/lib/br_boleto/retorno/cnab400/banco_brasil.rb +0 -0
  96. data/lib/br_boleto/retorno/cnab400/base.rb +0 -0
  97. data/lib/br_boleto/retorno/cnab400/bradesco.rb +0 -0
  98. data/lib/br_boleto/retorno/cnab400/caixa.rb +0 -0
  99. data/lib/br_boleto/retorno/cnab400/itau.rb +0 -0
  100. data/lib/br_boleto/retorno/cnab400/santander.rb +0 -0
  101. data/lib/br_boleto/retorno/cnab400/sicoob.rb +0 -0
  102. data/lib/br_boleto/retorno/cnab400/sicredi.rb +0 -0
  103. data/lib/br_boleto/retorno/cnab400/unicred.rb +0 -0
  104. data/lib/br_boleto/retorno/pagamento.rb +0 -0
  105. data/lib/br_boleto/string_methods.rb +0 -0
  106. data/lib/br_boleto/validations.rb +0 -0
  107. data/lib/br_boleto/version.rb +1 -1
  108. data/lib/config/locales/br-boleto-en.yml +0 -0
  109. data/lib/config/locales/br-boleto-pt-BR.yml +0 -0
  110. data/test/br_boleto/association/have_conta_test.rb +0 -0
  111. data/test/br_boleto/association/have_pagador_test.rb +0 -0
  112. data/test/br_boleto/association/have_pagamentos_test.rb +0 -0
  113. data/test/br_boleto/boleto/banco_brasil_test.rb +0 -0
  114. data/test/br_boleto/boleto/base_test.rb +0 -0
  115. data/test/br_boleto/boleto/bradesco_test.rb +0 -0
  116. data/test/br_boleto/boleto/caixa_test.rb +0 -0
  117. data/test/br_boleto/boleto/cecred_test.rb +0 -0
  118. data/test/br_boleto/boleto/itau_test.rb +0 -0
  119. data/test/br_boleto/boleto/santander_test.rb +0 -0
  120. data/test/br_boleto/boleto/sicoob_test.rb +0 -0
  121. data/test/br_boleto/boleto/unicred_test.rb +10 -10
  122. data/test/br_boleto/calculos/digitos_test.rb +0 -0
  123. data/test/br_boleto/calculos/fator_vencimento_test.rb +0 -0
  124. data/test/br_boleto/calculos/fatores_de_multiplicacao_test.rb +0 -0
  125. data/test/br_boleto/calculos/linha_digitavel_test.rb +0 -0
  126. data/test/br_boleto/calculos/modulo10_test.rb +0 -0
  127. data/test/br_boleto/calculos/modulo11_fator3197_test.rb +0 -0
  128. data/test/br_boleto/calculos/modulo11_fator_de2a7_test.rb +0 -0
  129. data/test/br_boleto/calculos/modulo11_fator_de2a9_resto_zero_test.rb +0 -0
  130. data/test/br_boleto/calculos/modulo11_fator_de2a9_test.rb +0 -0
  131. data/test/br_boleto/calculos/modulo11_fator_de9a2_resto_x_test.rb +0 -0
  132. data/test/br_boleto/calculos/modulo11_fator_de9a2_test.rb +0 -0
  133. data/test/br_boleto/calculos/modulo11_test.rb +0 -0
  134. data/test/br_boleto/calculos/modulo_numero_de_controle_test.rb +0 -0
  135. data/test/br_boleto/conta/banco_brasil_test.rb +0 -0
  136. data/test/br_boleto/conta/base_test.rb +0 -0
  137. data/test/br_boleto/conta/bradesco_test.rb +0 -0
  138. data/test/br_boleto/conta/caixa_test.rb +0 -0
  139. data/test/br_boleto/conta/cecred_test.rb +0 -0
  140. data/test/br_boleto/conta/itau_test.rb +0 -0
  141. data/test/br_boleto/conta/santantader_test.rb +0 -0
  142. data/test/br_boleto/conta/sicoob_test.rb +0 -0
  143. data/test/br_boleto/conta/sicredi_test.rb +0 -0
  144. data/test/br_boleto/conta/unicred_test.rb +3 -3
  145. data/test/br_boleto/helper/number_test.rb +0 -0
  146. data/test/br_boleto/pagador_test.rb +0 -0
  147. data/test/br_boleto/remessa/base_test.rb +0 -0
  148. data/test/br_boleto/remessa/cnab240/banco_brasil_test.rb +0 -0
  149. data/test/br_boleto/remessa/cnab240/base_test.rb +0 -0
  150. data/test/br_boleto/remessa/cnab240/bradesco_test.rb +0 -0
  151. data/test/br_boleto/remessa/cnab240/caixa_test.rb +0 -0
  152. data/test/br_boleto/remessa/cnab240/cecred_test.rb +0 -0
  153. data/test/br_boleto/remessa/cnab240/helper/header_arquivo_test.rb +0 -0
  154. data/test/br_boleto/remessa/cnab240/helper/header_lote_test.rb +14 -14
  155. data/test/br_boleto/remessa/cnab240/helper/segmento_p_test.rb +0 -0
  156. data/test/br_boleto/remessa/cnab240/helper/segmento_q_test.rb +0 -0
  157. data/test/br_boleto/remessa/cnab240/helper/segmento_r_test.rb +0 -0
  158. data/test/br_boleto/remessa/cnab240/helper/segmento_s_test.rb +0 -0
  159. data/test/br_boleto/remessa/cnab240/helper/trailer_arquivo_test.rb +0 -0
  160. data/test/br_boleto/remessa/cnab240/helper/trailer_lote_test.rb +0 -0
  161. data/test/br_boleto/remessa/cnab240/itau_test.rb +0 -0
  162. data/test/br_boleto/remessa/cnab240/santander_test.rb +0 -0
  163. data/test/br_boleto/remessa/cnab240/sicoob_test.rb +32 -31
  164. data/test/br_boleto/remessa/cnab240/sicredi_test.rb +0 -0
  165. data/test/br_boleto/remessa/cnab240/unicred_test.rb +21 -21
  166. data/test/br_boleto/remessa/cnab400/banco_brasil_test.rb +0 -0
  167. data/test/br_boleto/remessa/cnab400/base_test.rb +0 -0
  168. data/test/br_boleto/remessa/cnab400/bradesco_test.rb +0 -0
  169. data/test/br_boleto/remessa/cnab400/caixa_test.rb +0 -0
  170. data/test/br_boleto/remessa/cnab400/itau_test.rb +0 -0
  171. data/test/br_boleto/remessa/cnab400/santander_test.rb +0 -0
  172. data/test/br_boleto/remessa/cnab400/sicoob_test.rb +0 -0
  173. data/test/br_boleto/remessa/cnab400/sicredi_test.rb +0 -0
  174. data/test/br_boleto/remessa/cnab400/unicred_test.rb +40 -66
  175. data/test/br_boleto/remessa/lote_test.rb +0 -0
  176. data/test/br_boleto/remessa/pagamento_test.rb +0 -0
  177. data/test/br_boleto/retorno/base_test.rb +0 -0
  178. data/test/br_boleto/retorno/cnab240/banco_brasil_test.rb +0 -0
  179. data/test/br_boleto/retorno/cnab240/base_test.rb +0 -0
  180. data/test/br_boleto/retorno/cnab240/bradesco_test.rb +0 -0
  181. data/test/br_boleto/retorno/cnab240/caixa_test.rb +0 -0
  182. data/test/br_boleto/retorno/cnab240/cecred_test.rb +0 -0
  183. data/test/br_boleto/retorno/cnab240/itau_test.rb +0 -0
  184. data/test/br_boleto/retorno/cnab240/santander_test.rb +0 -0
  185. data/test/br_boleto/retorno/cnab240/sicoob_test.rb +0 -0
  186. data/test/br_boleto/retorno/cnab240/sicredi_test.rb +0 -0
  187. data/test/br_boleto/retorno/cnab240/unicred_test.rb +0 -0
  188. data/test/br_boleto/retorno/cnab400/banco_brasil_test.rb +0 -0
  189. data/test/br_boleto/retorno/cnab400/bradesco_test.rb +0 -0
  190. data/test/br_boleto/retorno/cnab400/caixa_test.rb +0 -0
  191. data/test/br_boleto/retorno/cnab400/itau_test.rb +0 -0
  192. data/test/br_boleto/retorno/cnab400/santander_test.rb +0 -0
  193. data/test/br_boleto/retorno/cnab400/sicoob_test.rb +0 -0
  194. data/test/br_boleto/retorno/cnab400/sicredi_test.rb +0 -0
  195. data/test/br_boleto/retorno/cnab400/unicred.rb +0 -0
  196. data/test/br_boleto/retorno/pagamento_test.rb +0 -0
  197. data/test/factories/boleto/base.rb +0 -0
  198. data/test/factories/boleto/boleto_banco_brasil.rb +0 -0
  199. data/test/factories/boleto/boleto_bradesco.rb +0 -0
  200. data/test/factories/boleto/boleto_caixa.rb +0 -0
  201. data/test/factories/boleto/boleto_cecred.rb +0 -0
  202. data/test/factories/boleto/boleto_itau.rb +0 -0
  203. data/test/factories/boleto/boleto_santander.rb +0 -0
  204. data/test/factories/boleto/boleto_sicoob.rb +0 -0
  205. data/test/factories/boleto/boleto_sicredi.rb +0 -0
  206. data/test/factories/boleto/boleto_unicred.rb +0 -0
  207. data/test/factories/conta/banco_brasil.rb +0 -0
  208. data/test/factories/conta/base.rb +0 -0
  209. data/test/factories/conta/bradesco.rb +0 -0
  210. data/test/factories/conta/caixa.rb +0 -0
  211. data/test/factories/conta/cecred.rb +0 -0
  212. data/test/factories/conta/itau.rb +0 -0
  213. data/test/factories/conta/santander.rb +0 -0
  214. data/test/factories/conta/sicoob.rb +0 -0
  215. data/test/factories/conta/sicredi.rb +0 -0
  216. data/test/factories/conta/unicred.rb +0 -0
  217. data/test/factories/pagador.rb +0 -0
  218. data/test/factories/remessa/base.rb +0 -0
  219. data/test/factories/remessa/cnab240/banco_brasil.rb +0 -0
  220. data/test/factories/remessa/cnab240/base.rb +0 -0
  221. data/test/factories/remessa/cnab240/bradesco.rb +0 -0
  222. data/test/factories/remessa/cnab240/caixa.rb +0 -0
  223. data/test/factories/remessa/cnab240/cecred.rb +0 -0
  224. data/test/factories/remessa/cnab240/itau.rb +0 -0
  225. data/test/factories/remessa/cnab240/santander.rb +0 -0
  226. data/test/factories/remessa/cnab240/sicoob.rb +0 -0
  227. data/test/factories/remessa/cnab240/sicredi.rb +0 -0
  228. data/test/factories/remessa/cnab240/unicred.rb +0 -0
  229. data/test/factories/remessa/cnab400/banco_brasil.rb +0 -0
  230. data/test/factories/remessa/cnab400/base.rb +0 -0
  231. data/test/factories/remessa/cnab400/bradesco.rb +0 -0
  232. data/test/factories/remessa/cnab400/caixa.rb +0 -0
  233. data/test/factories/remessa/cnab400/itau.rb +0 -0
  234. data/test/factories/remessa/cnab400/santander.rb +0 -0
  235. data/test/factories/remessa/cnab400/sicoob.rb +0 -0
  236. data/test/factories/remessa/cnab400/sicredi.rb +0 -0
  237. data/test/factories/remessa/cnab400/unicred.rb +0 -0
  238. data/test/factories/remessa/lote.rb +0 -0
  239. data/test/factories/remessa/pagamento.rb +0 -0
  240. data/test/factories/retorno/pagamento.rb +0 -0
  241. data/test/fixtures/remessa/cnab240/caixa.rem +1 -1
  242. data/test/fixtures/remessa/cnab240/cecred.rem +0 -0
  243. data/test/fixtures/remessa/cnab240/sicoob.rem +1 -1
  244. data/test/fixtures/remessa/cnab240/unicred.rem +7 -7
  245. data/test/fixtures/retorno/cnab240/banco_brasil.ret +0 -0
  246. data/test/fixtures/retorno/cnab240/caixa.ret +0 -0
  247. data/test/fixtures/retorno/cnab240/cecred.ret +0 -0
  248. data/test/fixtures/retorno/cnab240/padrao240.ret +0 -0
  249. data/test/fixtures/retorno/cnab240/santander.ret +0 -0
  250. data/test/fixtures/retorno/cnab400/bradesco.ret +0 -0
  251. data/test/fixtures/retorno/cnab400/itau.ret +0 -0
  252. data/test/fixtures/retorno/cnab400/sicoob.ret +0 -0
  253. data/test/fixtures/retorno/cnab400/sicredi.ret +0 -0
  254. data/test/inheritance/boleto_test.rb +0 -0
  255. data/test/inheritance/sicoob_test.rb +0 -0
  256. data/test/test_helper.rb +0 -0
  257. 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
@@ -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 = 8 #corrige bugs ou traz melhorias em implementações já existentes
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
@@ -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 '23795816800093015783069090000001001000897550' }
113
- it { subject.linha_digitavel.must_equal '23793.06901 90000.001009 10008.975509 5 81680009301578' }
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 '23793.06901 90000.001561 79008.975504 3 69040000040850'
125
- subject.codigo_de_barras.must_equal '23793690400000408503069090000001567900897550'
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
@@ -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 '237'
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 'BRADESCO'
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
@@ -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 'informacoes_da_conta'
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
@@ -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
- remessa.dados_do_arquivo.must_equal read_fixture('remessa/cnab240/sicoob.rem')
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