br_boleto 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 294ff39fa89db1c6ba4b5d5b19b8fab67b1aec44
4
- data.tar.gz: b95de65b899273762c04d225aa85cdbbaa3f91fc
3
+ metadata.gz: 2ea3e18f9bcb8221f2853ad69bf7eaf2f4f3424e
4
+ data.tar.gz: 4f5832a88480ac6672ca81258c235c7918f81acf
5
5
  SHA512:
6
- metadata.gz: a330174ff34f16d4456533e874020123e40dff5c7c0ecce1f5efdb6154fbece15e39d20bd60733f272e76f860420663a463fff8d62e553e5462b2f07ddeb4de0
7
- data.tar.gz: a5f2c505bd24a19295c904d5ef87fc6201f5a95b980fc083a6fd080316b37c2acc5e290c1bf7881b3830c969dc713b8edd8fa529f82c039167094d24663019cb
6
+ metadata.gz: 4029f3dc8d1fa4c8891ab167478283ef76a74099a284a1fc8cefdb060b9e0c76faf23b841f5f535e35d5330e48f8c935d8815b4971f1d722a6fe77904ef30112
7
+ data.tar.gz: c0c7f28257ff10c696e69bc320e918a4c7ecb1674e58c8509d6c8c0849a8901895def02b073a00bebbbd93e1d1c8227cc4319d073c73e5ccc1995e4a15ae2b27
@@ -54,6 +54,26 @@ module BrBoleto
54
54
  result.adjust_size_to(20)
55
55
  end
56
56
 
57
+ # Espaço reservado para o Banco
58
+ # 20 posições
59
+ # Brancos
60
+ #
61
+ def header_arquivo_posicao_172_a_191
62
+ ''.rjust(20, ' ')
63
+ end
64
+
65
+ # Espaço reservado para a Empresa
66
+ # 20 posições
67
+ # Brancos
68
+ #
69
+ def header_arquivo_posicao_192_a_211
70
+ ''.rjust(20, ' ')
71
+ end
72
+
73
+ # Posição 212 a 240 do Header do Arquivo
74
+ # Para o sicoob esse espaço deve ter 'Brancos'
75
+ # 29 posições
76
+ #
57
77
  def complemento_header_arquivo
58
78
  ''.rjust(29, ' ')
59
79
  end
@@ -71,6 +91,14 @@ module BrBoleto
71
91
  result
72
92
  end
73
93
 
94
+ # Tipo de Documento
95
+ # 1 posição
96
+ # Branco
97
+ #
98
+ def segmento_p_posicao_060_a_060
99
+ ' '
100
+ end
101
+
74
102
  # Tipo de cobrança
75
103
  # Ex: :simples, :caucionada
76
104
  #
@@ -124,6 +152,14 @@ module BrBoleto
124
152
  complemento.upcase
125
153
  end
126
154
 
155
+ # Forma de Lançamento
156
+ # 2 posições
157
+ # Brancos
158
+ #
159
+ def header_lote_posicao_012_a_013
160
+ ' '
161
+ end
162
+
127
163
  # Quantidade de titulos de cobrança simples
128
164
  # 6 posições
129
165
  #
@@ -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 = 0 #inclui novas funcionalidades, sem quebrar APIs existentes
5
- PATCH = 0 #corrige bugs ou traz melhorias em implementações já existentes
5
+ PATCH = 1 #corrige bugs ou traz melhorias em implementações já existentes
6
6
  CURRENT = "#{MAJOR}.#{MINOR}.#{PATCH}"
7
7
  end
8
8
  end
@@ -111,12 +111,6 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
111
111
  end
112
112
  end
113
113
 
114
- describe "#complemento_header_arquivo" do
115
- it "deve ter 29 posições em branco" do
116
- subject.complemento_header_arquivo.must_equal ''.rjust(29, ' ')
117
- end
118
- end
119
-
120
114
  describe "#complemento_trailer_lote" do
121
115
  let(:pagamento_2) { FactoryGirl.build(:remessa_pagamento, valor_documento: 50.25) }
122
116
  it "deve carregar os dados dos metodos complemento_trailer_lote na sequencia" do
@@ -237,25 +231,6 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
237
231
  end
238
232
  end
239
233
 
240
- describe "#complemento_p" do
241
- it "posicao 0 até 11 deve ter a conta_corrente" do
242
- subject.conta.stubs(:conta_corrente_dv)
243
- subject.conta.expects(:conta_corrente).returns(123456789)
244
- subject.complemento_p(pagamento)[0..11].must_equal "000123456789"
245
- end
246
- it "posicao 12 deve te o conta_corrente_dv" do
247
- subject.conta.expects(:conta_corrente_dv).returns("%")
248
- subject.complemento_p(pagamento)[12].must_equal "%"
249
- end
250
- it "posição 13 deve ser um caracter em branco" do
251
- subject.complemento_p(pagamento)[13].must_equal " "
252
- end
253
- it "posição 14 até 33 deve ter o valor do metodo formata_nosso_numero passando o nosso_numero do pagamento" do
254
- subject.expects(:formata_nosso_numero).with(pagamento).returns("12345678901234567890")
255
- subject.complemento_p(pagamento)[14..33].must_equal '12345678901234567890'
256
- end
257
- end
258
-
259
234
  describe "#dados_do_arquivo" do
260
235
  it "deve gerar os dados do arquivo" do
261
236
  subject.dados_do_arquivo.size.must_equal 1927
@@ -297,6 +272,27 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
297
272
  end
298
273
  end
299
274
 
275
+ describe "particularidades do header_arquivo" do
276
+ describe "#complemento_header_arquivo" do
277
+ it "deve ter 29 posições em branco" do
278
+ subject.complemento_header_arquivo.must_equal ''.rjust(29, ' ')
279
+ end
280
+ end
281
+
282
+ it "#header_arquivo_posicao_172_a_191 deve ter 20 posições em branco" do
283
+ subject.header_arquivo_posicao_172_a_191.must_equal ''.rjust(20, ' ')
284
+ end
285
+ it "#header_arquivo_posicao_192_a_211 deve ter 20 posições em branco" do
286
+ subject.header_arquivo_posicao_192_a_211.must_equal ''.rjust(20, ' ')
287
+ end
288
+ end
289
+
290
+ describe "particularidades header_lote" do
291
+ it "#header_lote_posicao_012_a_013 deve ter 2 digitos em branco" do
292
+ subject.header_lote_posicao_012_a_013.must_equal ' '
293
+ end
294
+ end
295
+
300
296
  describe "particularidades do Segmento R" do
301
297
  describe "#segmento_r_posicao_066_a_066 - Codigo da multa " do
302
298
  # Para o Sicoob o código reference a Isento é '0', diferente do padrão
@@ -328,6 +324,24 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
328
324
  end
329
325
 
330
326
  describe "particularidades do Segmento P" do
327
+ describe "#complemento_p" do
328
+ it "posicao 0 até 11 deve ter a conta_corrente" do
329
+ subject.conta.stubs(:conta_corrente_dv)
330
+ subject.conta.expects(:conta_corrente).returns(123456789)
331
+ subject.complemento_p(pagamento)[0..11].must_equal "000123456789"
332
+ end
333
+ it "posicao 12 deve te o conta_corrente_dv" do
334
+ subject.conta.expects(:conta_corrente_dv).returns("%")
335
+ subject.complemento_p(pagamento)[12].must_equal "%"
336
+ end
337
+ it "posição 13 deve ser um caracter em branco" do
338
+ subject.complemento_p(pagamento)[13].must_equal " "
339
+ end
340
+ it "posição 14 até 33 deve ter o valor do metodo formata_nosso_numero passando o nosso_numero do pagamento" do
341
+ subject.expects(:formata_nosso_numero).with(pagamento).returns("12345678901234567890")
342
+ subject.complemento_p(pagamento)[14..33].must_equal '12345678901234567890'
343
+ end
344
+ end
331
345
  describe "#segmento_p_posicao_118_a_118 - Codigo de Juros " do
332
346
  # Para o Sicoob o código reference a Isento é '0', diferente do padrão
333
347
  # estabelecido pela FEBRABAN onde o código de isento é '3'
@@ -355,6 +369,9 @@ describe BrBoleto::Remessa::Cnab240::Sicoob do
355
369
  subject.send(:segmento_p_posicao_118_a_118, pagamento).must_equal '0'
356
370
  end
357
371
  end
372
+ it "#segmento_p_posicao_060_a_060 deve ter 1 digito em branco" do
373
+ subject.segmento_p_posicao_060_a_060.must_equal ' '
374
+ end
358
375
  end
359
376
 
360
377
  describe 'Geração do arquivo' do
@@ -1,6 +1,6 @@
1
- 75600000 233486451000130 0304060000000548430 EMPRESA EMITENTE SICOOB 106092016094352000011081000000000000000000000000000000000000000000000
2
- 75600011R0100040 2033486451000130 0304060000000548430 EMPRESA EMITENTE 000000110609201600000000
3
- 7560001300001P 010304060000000548430 000015780401014 102220000000001578040609201600000000001478900000 02N06092016107092016000000000000025000000000000000000000000000000000000000000000000000000 1000000090000000000
1
+ 75600000 233486451000130 0304060000000548430 EMPRESA EMITENTE SICOOB 10609201609435200001108100000
2
+ 75600011R01 040 2033486451000130 0304060000000548430 EMPRESA EMITENTE 000000110609201600000000
3
+ 7560001300001P 010304060000000548430 000015780401014 10 220000000001578040609201600000000001478900000 02N06092016107092016000000000000025000000000000000000000000000000000000000000000000000000 1000000090000000000
4
4
  7560001300002Q 011000078793321112BENJAMIN FRANCISCO MARCOS VINICIUS FERNARUA PRINCIPAL S/N 881 CENTRO 79210972ANASTACIO MS0000000000000000 000
5
5
  7560001300003R 01000000000000000000000000000000000000000000000000207092016000000000000200 0000000000000000 000000000000 0
6
6
  7560001300004S 01101 01
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: br_boleto
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bruno M. Mergen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-11 00:00:00.000000000 Z
11
+ date: 2016-09-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake