cnab240_bancoabc 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,298 +0,0 @@
1
- # frozen_string_literal: false
2
-
3
- require "spec_helper"
4
-
5
- describe CNAB240::BancoABC::Entities::RegisterP do
6
- describe "#register?" do
7
- subject { described_class.new.register? }
8
-
9
- it { expect(subject).to be_truthy }
10
- end
11
-
12
- describe "#codigo_banco" do
13
- subject { described_class.new.codigo_banco(2) }
14
-
15
- it { expect(subject).to eq("2 ") }
16
- end
17
-
18
- describe "#lote_servico" do
19
- subject { described_class.new.lote_servico(2) }
20
-
21
- it { expect(subject).to eq("2 ") }
22
- end
23
-
24
- describe "#tipo_registro" do
25
- subject { described_class.new.tipo_registro(2) }
26
-
27
- it { expect(subject).to eq("2") }
28
- end
29
-
30
- describe "#numero_registro" do
31
- subject { described_class.new.numero_registro(2) }
32
-
33
- it { expect(subject).to eq("00002") }
34
- end
35
-
36
- describe "#segmento" do
37
- subject { described_class.new.segmento }
38
-
39
- it { expect(subject).to eq("P") }
40
- end
41
-
42
- describe "#cnab" do
43
- subject { described_class.new.cnab("1") }
44
-
45
- it { expect(subject).to eq("1") }
46
- end
47
-
48
- describe "#codigo_movimento" do
49
- subject { described_class.new.codigo_movimento("1") }
50
-
51
- it { expect(subject).to eq("1 ") }
52
- end
53
-
54
- describe "#direcionamento_cobranca" do
55
- subject { described_class.new.direcionamento_cobranca(23) }
56
-
57
- it { expect(subject).to eq("2") }
58
- end
59
-
60
- describe "#identificacao_empresa" do
61
- subject { described_class.new.identificacao_empresa }
62
-
63
- it { expect(subject).to eq("00019070022307900000") }
64
- end
65
-
66
- describe "#modalidade_cobranca" do
67
- subject { described_class.new.modalidade_cobranca }
68
-
69
- it { expect(subject).to eq("000") }
70
- end
71
-
72
- describe "#uso_exclusivo_abc" do
73
- subject { described_class.new.uso_exclusivo_abc(1) }
74
-
75
- it { expect(subject).to eq("1 ") }
76
- end
77
-
78
- describe "#modalidade_banco_cedente" do
79
- subject { described_class.new.modalidade_banco_cedente(1) }
80
-
81
- it { expect(subject).to eq("1 ") }
82
- end
83
-
84
- describe "#identificacao_do_titulo" do
85
- subject { described_class.new.identificacao_do_titulo(1234567) }
86
-
87
- it { expect(subject).to eq("1234567 ") }
88
- end
89
-
90
- describe "#carteira" do
91
- subject { described_class.new.carteira(1234567) }
92
-
93
- it { expect(subject).to eq("1") }
94
- end
95
-
96
- describe "#cadastramento" do
97
- subject { described_class.new.cadastramento("P") }
98
-
99
- it { expect(subject).to eq("P") }
100
- end
101
-
102
- describe "#documento" do
103
- subject { described_class.new.documento("D") }
104
-
105
- it { expect(subject).to eq("D") }
106
- end
107
-
108
- describe "#dist_boleto" do
109
- subject { described_class.new.dist_boleto("B") }
110
-
111
- it { expect(subject).to eq("B") }
112
- end
113
-
114
- describe "#numero_documento" do
115
- subject { described_class.new.numero_documento("987654321") }
116
-
117
- it { expect(subject).to eq("987654321 ") }
118
- end
119
-
120
- describe "#emissao_boleto" do
121
- subject { described_class.new.emissao_boleto("B") }
122
-
123
- it { expect(subject).to eq("B") }
124
- end
125
-
126
- describe "#data_vencimento" do
127
- subject { described_class.new.data_vencimento("987654321") }
128
-
129
- it { expect(subject).to eq("98765432") }
130
- end
131
-
132
- describe "#valor_titulo" do
133
- subject { described_class.new.valor_titulo("987654321") }
134
-
135
- it { expect(subject).to eq("000000987654321") }
136
- end
137
-
138
- describe "#agencia" do
139
- subject { described_class.new.agencia("987654321") }
140
-
141
- it { expect(subject).to eq("98765") }
142
- end
143
-
144
- describe "#digito_verificador" do
145
- subject { described_class.new.digito_verificador("98765") }
146
-
147
- it { expect(subject).to eq("9") }
148
- end
149
-
150
- describe "#especie_titulo" do
151
- subject { described_class.new.especie_titulo("98765") }
152
-
153
- it { expect(subject).to eq("98") }
154
- end
155
-
156
- describe "#aceite" do
157
- subject { described_class.new.aceite }
158
-
159
- it { expect(subject).to eq("N") }
160
- end
161
-
162
- describe "#data_emissao" do
163
- subject { described_class.new.data_emissao(82108431331244) }
164
-
165
- it { expect(subject).to eq("82108431") }
166
- end
167
-
168
- describe "#codigo_juros_mora" do
169
- subject { described_class.new.codigo_juros_mora(82108431331244) }
170
-
171
- it { expect(subject).to eq("8") }
172
- end
173
-
174
- describe "#data_juros_mora" do
175
- subject { described_class.new.data_juros_mora(82108431331244) }
176
-
177
- it { expect(subject).to eq("82108431") }
178
- end
179
-
180
- describe "#juros_mora" do
181
- subject { described_class.new.juros_mora(82108431331244) }
182
-
183
- it { expect(subject).to eq("082108431331244") }
184
- end
185
-
186
- describe "#cod_desconto" do
187
- subject { described_class.new.cod_desconto(82) }
188
-
189
- it { expect(subject).to eq("8") }
190
- end
191
-
192
- describe "#data_desconto" do
193
- subject { described_class.new.data_desconto(82) }
194
-
195
- it { expect(subject).to eq("82 ") }
196
- end
197
-
198
- describe "#valor_desconto" do
199
- subject { described_class.new.valor_desconto(820123) }
200
-
201
- it { expect(subject).to eq("000000000820123") }
202
- end
203
-
204
- describe "#valor_iof" do
205
- subject { described_class.new.valor_iof(820123) }
206
-
207
- it { expect(subject).to eq("000000000820123") }
208
- end
209
-
210
- describe "#valor_abatimento" do
211
- subject { described_class.new.valor_abatimento(820123) }
212
-
213
- it { expect(subject).to eq("000000000820123") }
214
- end
215
-
216
- describe "#uso_empresa_cedente" do
217
- subject { described_class.new.uso_empresa_cedente(820123) }
218
-
219
- it { expect(subject).to eq("820123 ") }
220
- end
221
-
222
- describe "#codigo_protesto" do
223
- subject { described_class.new.codigo_protesto(codigo_protesto) }
224
-
225
- context "when instrucao type is Protestar" do
226
- let(:codigo_protesto) { 1 }
227
-
228
- it { expect(subject).to eq("1") }
229
- end
230
-
231
- context "when protestar_titulos flag is true" do
232
- let(:codigo_protesto) { 1 }
233
-
234
- it { expect(subject).to eq("1") }
235
- end
236
-
237
- context "when protestar_titulos flag is false and instrucao type is not Protestar" do
238
- let(:codigo_protesto) { 3 }
239
-
240
- it { expect(subject).to eq("3") }
241
- end
242
- end
243
-
244
- describe "#prazo_protesto" do
245
- subject { described_class.new.prazo_protesto(dias_protesto, codigo_protesto) }
246
-
247
- context "when codigo protesto is dias corridos" do
248
- let(:codigo_protesto) { 1 }
249
- let(:dias_protesto) { 10 }
250
-
251
- it { expect(subject).to eq("10") }
252
- end
253
-
254
- context "when codigo protesto is dias úteis" do
255
- let(:codigo_protesto) { 2 }
256
- let(:dias_protesto) { 5 }
257
-
258
- it { expect(subject).to eq("05") }
259
- end
260
-
261
- context "when codigo protesto is isento" do
262
- let(:codigo_protesto) { 3 }
263
- let(:dias_protesto) { 15 }
264
-
265
- it { expect(subject).to eq("00") }
266
- end
267
- end
268
-
269
- describe "#codigo_baixa_devolucao" do
270
- subject { described_class.new.codigo_baixa_devolucao }
271
-
272
- it { expect(subject).to eq("2") }
273
- end
274
-
275
- describe "#prazo_baixa_devolucao" do
276
- subject { described_class.new.prazo_baixa_devolucao }
277
-
278
- it { expect(subject).to eq("000") }
279
- end
280
-
281
- describe "#codigo_moeda" do
282
- subject { described_class.new.codigo_moeda(31234) }
283
-
284
- it { expect(subject).to eq("31") }
285
- end
286
-
287
- describe "#numero_contrato" do
288
- subject { described_class.new.numero_contrato(31234) }
289
-
290
- it { expect(subject).to eq("31234 ") }
291
- end
292
-
293
- describe "#uso_livre" do
294
- subject { described_class.new.uso_livre(31234) }
295
-
296
- it { expect(subject).to eq("3") }
297
- end
298
- end
@@ -1,149 +0,0 @@
1
- # frozen_string_literal: false
2
-
3
- require "spec_helper"
4
-
5
- describe CNAB240::BancoABC::Entities::RegisterQ do
6
- describe "#register?" do
7
- subject { described_class.new.register? }
8
-
9
- it { expect(subject).to be_truthy }
10
- end
11
-
12
- describe "#codigo_banco" do
13
- subject { described_class.new.codigo_banco(2) }
14
-
15
- it { expect(subject).to eq("2 ") }
16
- end
17
-
18
- describe "#lote_servico" do
19
- subject { described_class.new.lote_servico(2) }
20
-
21
- it { expect(subject).to eq("2 ") }
22
- end
23
-
24
- describe "#tipo_registro" do
25
- subject { described_class.new.tipo_registro(2) }
26
-
27
- it { expect(subject).to eq("2") }
28
- end
29
-
30
- describe "#numero_registro" do
31
- subject { described_class.new.numero_registro(2) }
32
-
33
- it { expect(subject).to eq("00002") }
34
- end
35
-
36
- describe "#segmento" do
37
- subject { described_class.new.segmento }
38
-
39
- it { expect(subject).to eq("Q") }
40
- end
41
-
42
- describe "#cnab" do
43
- subject { described_class.new.cnab("1") }
44
-
45
- it { expect(subject).to eq("1") }
46
- end
47
-
48
- describe "#codigo_movimento" do
49
- subject { described_class.new.codigo_movimento("1") }
50
-
51
- it { expect(subject).to eq("1 ") }
52
- end
53
-
54
- describe "#uso_livre" do
55
- subject { described_class.new.uso_livre(31234) }
56
-
57
- it { expect(subject).to eq("31234 ") }
58
- end
59
-
60
- describe "#tipo_inscricao" do
61
- subject { described_class.new.tipo_inscricao(31234) }
62
-
63
- it { expect(subject).to eq("3") }
64
- end
65
-
66
- describe "#numero_inscricao" do
67
- subject { described_class.new.numero_inscricao(31234) }
68
-
69
- it { expect(subject).to eq("000000000031234") }
70
- end
71
-
72
- describe "#nome" do
73
- subject { described_class.new.nome(31234) }
74
-
75
- it { expect(subject).to eq("31234 ") }
76
- end
77
-
78
- describe "#endereco" do
79
- subject { described_class.new.endereco(31234) }
80
-
81
- it { expect(subject).to eq("31234 ") }
82
- end
83
-
84
- describe "#bairro" do
85
- subject { described_class.new.bairro(31234) }
86
-
87
- it { expect(subject).to eq("31234 ") }
88
- end
89
-
90
- describe "#cep" do
91
- subject { described_class.new.cep(31233242342344) }
92
-
93
- it { expect(subject).to eq("31233") }
94
- end
95
-
96
- describe "#sufixo_cep" do
97
- subject { described_class.new.sufixo_cep(2341) }
98
-
99
- it { expect(subject).to eq("234") }
100
- end
101
-
102
- describe "#cidade" do
103
- subject { described_class.new.cidade("RIO CLARO") }
104
-
105
- it { expect(subject).to eq("RIO CLARO ") }
106
- end
107
-
108
- describe "#cidade" do
109
- subject { described_class.new.uf("SPF") }
110
-
111
- it { expect(subject).to eq("SP") }
112
- end
113
-
114
- describe "#uf" do
115
- subject { described_class.new.uf("SPF") }
116
-
117
- it { expect(subject).to eq("SP") }
118
- end
119
-
120
- describe "#tipo_inscricao_sac" do
121
- subject { described_class.new.tipo_inscricao_sac("SPF") }
122
-
123
- it { expect(subject).to eq("S") }
124
- end
125
-
126
- describe "#numero_inscricao_sac" do
127
- subject { described_class.new.numero_inscricao_sac("SP12312314123123F") }
128
-
129
- it { expect(subject).to eq("SP12312314123123F") }
130
- end
131
-
132
- describe "#nome_sac" do
133
- subject { described_class.new.nome_sac("SP12312314123123F") }
134
-
135
- it { expect(subject).to eq("SP12312314123123F ") }
136
- end
137
-
138
- describe "#banco_correspondente" do
139
- subject { described_class.new.banco_correspondente }
140
-
141
- it { expect(subject).to eq("000") }
142
- end
143
-
144
- describe "#nosso_numero_banco" do
145
- subject { described_class.new.nosso_numero_banco(13948129038) }
146
-
147
- it { expect(subject).to eq("13948129038 ") }
148
- end
149
- end
@@ -1,191 +0,0 @@
1
- # frozen_string_literal: false
2
-
3
- require "spec_helper"
4
-
5
- describe CNAB240::BancoABC::Entities::RegisterR do
6
- describe "#register?" do
7
- subject { described_class.new.register? }
8
-
9
- it { expect(subject).to be_truthy }
10
- end
11
-
12
- describe "#codigo_banco" do
13
- subject { described_class.new.codigo_banco(2) }
14
-
15
- it { expect(subject).to eq("002") }
16
- end
17
-
18
- describe "#lote_servico" do
19
- subject { described_class.new.lote_servico(2) }
20
-
21
- it { expect(subject).to eq("0002") }
22
- end
23
-
24
- describe "#tipo_registro" do
25
- subject { described_class.new.tipo_registro(2) }
26
-
27
- it { expect(subject).to eq("2") }
28
- end
29
-
30
- describe "#numero_registro" do
31
- subject { described_class.new.numero_registro(2) }
32
-
33
- it { expect(subject).to eq("00002") }
34
- end
35
-
36
- describe "#segmento" do
37
- subject { described_class.new.segmento }
38
-
39
- it { expect(subject).to eq("R") }
40
- end
41
-
42
- describe "#cnab" do
43
- subject { described_class.new.cnab("1") }
44
-
45
- it { expect(subject).to eq("1") }
46
- end
47
-
48
- describe "#codigo_movimento" do
49
- subject { described_class.new.codigo_movimento("1") }
50
-
51
- it { expect(subject).to eq("01") }
52
- end
53
-
54
- describe "#uso_exclusivo" do
55
- subject { described_class.new.uso_exclusivo(31234) }
56
-
57
- it { expect(subject).to eq("31234 ") }
58
- end
59
-
60
- describe "#cod_desconto_2" do
61
- subject { described_class.new.cod_desconto_2(820123) }
62
-
63
- it { expect(subject).to eq("820123") }
64
- end
65
-
66
- describe "#data_desconto_2" do
67
- subject { described_class.new.data_desconto_2(820123) }
68
-
69
- it { expect(subject).to eq("00820123") }
70
- end
71
-
72
- describe "#valor_desconto_2" do
73
- subject { described_class.new.valor_desconto_2(820123) }
74
-
75
- it { expect(subject).to eq("000000000820123") }
76
- end
77
-
78
- describe "#cod_desconto_3" do
79
- subject { described_class.new.cod_desconto_3(820123) }
80
-
81
- it { expect(subject).to eq("820123") }
82
- end
83
-
84
- describe "#data_desconto_3" do
85
- subject { described_class.new.data_desconto_3(820123) }
86
-
87
- it { expect(subject).to eq("00820123") }
88
- end
89
-
90
- describe "#valor_desconto_3" do
91
- subject { described_class.new.valor_desconto_3(820123) }
92
-
93
- it { expect(subject).to eq("000000000820123") }
94
- end
95
-
96
- describe "#cod_multa" do
97
- subject { described_class.new.cod_multa(820123) }
98
-
99
- it { expect(subject).to eq("820123") }
100
- end
101
-
102
- describe "#data_multa" do
103
- subject { described_class.new.data_multa(820123) }
104
-
105
- it { expect(subject).to eq("00820123") }
106
- end
107
-
108
- describe "#valor_multa" do
109
- subject { described_class.new.valor_multa(820123) }
110
-
111
- it { expect(subject).to eq("000000000820123") }
112
- end
113
-
114
- describe "#informacao_sacado" do
115
- subject { described_class.new.informacao_sacado(820123) }
116
-
117
- it { expect(subject).to eq("0000820123") }
118
- end
119
-
120
- describe "#mensagem_3" do
121
- subject { described_class.new.mensagem_3(820123) }
122
-
123
- it { expect(subject).to eq("820123 ") }
124
- end
125
-
126
- describe "#mensagem_4" do
127
- subject { described_class.new.mensagem_4(820123) }
128
-
129
- it { expect(subject).to eq("820123 ") }
130
- end
131
-
132
- describe "#uso_exclusivo" do
133
- subject { described_class.new.uso_exclusivo(820123) }
134
-
135
- it { expect(subject).to eq("820123 ") }
136
- end
137
-
138
- describe "#cod_ocorrencia_sacado" do
139
- subject { described_class.new.cod_ocorrencia_sacado(820123) }
140
-
141
- it { expect(subject).to eq("00820123") }
142
- end
143
-
144
- describe "#cod_banco_conta_debito" do
145
- subject { described_class.new.cod_banco_conta_debito(820123) }
146
-
147
- it { expect(subject).to eq("820") }
148
- end
149
-
150
- describe "#cod_agencia_debito" do
151
- subject { described_class.new.cod_agencia_debito(820123) }
152
-
153
- it { expect(subject).to eq("82012") }
154
- end
155
-
156
- describe "#digito_verificador_agencia" do
157
- subject { described_class.new.digito_verificador_agencia(820123) }
158
-
159
- it { expect(subject).to eq("8") }
160
- end
161
-
162
- describe "#conta_corrente_debito" do
163
- subject { described_class.new.conta_corrente_debito(820123) }
164
-
165
- it { expect(subject).to eq("820123 ") }
166
- end
167
-
168
- describe "#digito_verificador_conta" do
169
- subject { described_class.new.digito_verificador_conta(820123) }
170
-
171
- it { expect(subject).to eq("8") }
172
- end
173
-
174
- describe "#aviso_debito_automatico" do
175
- subject { described_class.new.aviso_debito_automatico(2820123) }
176
-
177
- it { expect(subject).to eq("2820123") }
178
- end
179
-
180
- describe "#uso_exclusivo_cnab" do
181
- subject { described_class.new.uso_exclusivo_cnab(2820123) }
182
-
183
- it { expect(subject).to eq("2820123 ") }
184
- end
185
-
186
- describe "#digito_verificador_agencia_conta" do
187
- subject { described_class.new.digito_verificador_agencia_conta(2820123) }
188
-
189
- it { expect(subject).to eq("2") }
190
- end
191
- end
@@ -1,64 +0,0 @@
1
- # frozen_string_literal: false
2
-
3
- require "spec_helper"
4
-
5
- describe CNAB240::BancoABC::Entities::RegisterT do
6
- let(:header) { 13.times.map { rand(10) }.join }
7
- let(:segmento) { 1.times.map { rand(10) }.join }
8
- let(:segmento_space) { 1.times.map { rand(10) }.join }
9
- let(:codigo_movimento) { 2.times.map { rand(10) }.join }
10
- let(:codigo_movimento_space) { 29.times.map { rand(10) }.join }
11
- let(:identificacao_do_titulo) { 11.times.map { rand(10) }.join }
12
- let(:codigo_carteira) { 1.times.map { rand(10) }.join }
13
- let(:numero_documento) { 15.times.map { rand(10) }.join }
14
- let(:data_vencimento) { 8.times.map { rand(10) }.join }
15
- let(:valor_titulo) { 15.times.map { rand(10) }.join }
16
- let(:numero_do_banco) { 3.times.map { rand(10) }.join }
17
- let(:agencia) { 5.times.map { rand(10) }.join }
18
- let(:digito_verificador) { 1.times.map { rand(10) }.join }
19
- let(:uso_empresa) { 25.times.map { rand(10) }.join }
20
- let(:uso_empresa_space) { 2.times.map { rand(10) }.join }
21
- let(:tipo_inscricao) { 1.times.map { rand(10) }.join }
22
- let(:numero_inscricao) { 15.times.map { rand(10) }.join }
23
- let(:nome) { 40.times.map { rand(10) }.join }
24
- let(:nome_space) { 10.times.map { rand(10) }.join }
25
- let(:motivo_ocorrencia) { 10.times.map { rand(10) }.join }
26
- let(:valor_de_tarifas_custas_correspondentes) { 15.times.map { rand(10) }.join }
27
- let(:ocorrencia) { described_class.new(line).ocorrencia }
28
-
29
- let(:line) do
30
- header + segmento + segmento_space + codigo_movimento + codigo_movimento_space + identificacao_do_titulo + codigo_carteira +
31
- numero_documento + data_vencimento + valor_titulo + numero_do_banco + agencia + digito_verificador +
32
- uso_empresa + uso_empresa_space + tipo_inscricao + numero_inscricao + nome + nome_space + valor_de_tarifas_custas_correspondentes + motivo_ocorrencia
33
- end
34
-
35
- describe "#register?" do
36
- subject { described_class.new(line).register? }
37
-
38
- it { expect(subject).to be_truthy }
39
- end
40
-
41
- describe "#data" do
42
- subject { described_class.new(line).data }
43
-
44
- it { expect(subject).to eq({
45
- segmento: segmento.strip,
46
- codigo_movimento: codigo_movimento.strip,
47
- ocorrencia:,
48
- identificacao_do_titulo: identificacao_do_titulo.strip,
49
- codigo_carteira: codigo_carteira.strip,
50
- numero_documento: numero_documento.strip,
51
- data_vencimento: data_vencimento.strip,
52
- valor_titulo: valor_titulo.strip,
53
- numero_do_banco: numero_do_banco.strip,
54
- agencia: agencia.strip,
55
- digito_verificador: digito_verificador.strip,
56
- uso_empresa: uso_empresa.strip,
57
- tipo_inscricao: tipo_inscricao.strip,
58
- numero_inscricao: numero_inscricao.strip,
59
- nome: nome.strip,
60
- valor_de_tarifas_custas_correspondentes: valor_de_tarifas_custas_correspondentes.strip,
61
- motivo_ocorrencia:
62
- }) }
63
- end
64
- end