cnab 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,124 +2,132 @@ require 'spec_helper'
2
2
 
3
3
  describe Cnab::Detalhe::SegmentoT do
4
4
  describe "#initialize" do
5
- before :each do
6
- @segmento_t = Cnab::Detalhe::SegmentoT.new(LINE)
7
- end
8
-
9
- it "should set #banco" do
10
- @segmento_t.banco.should == "012"
5
+ context "with a non valid line" do
6
+ it "should raise an error" do
7
+ lambda { Cnab::Detalhe::SegmentoT.new("12345") }.should raise_error(Cnab::Exceptions::LineNotParseable)
8
+ end
11
9
  end
12
10
 
13
- it "should set #lote" do
14
- @segmento_t.lote.should == "3456"
15
- end
11
+ context "with a valid line" do
12
+ before :each do
13
+ @segmento_t = Cnab::Detalhe::SegmentoT.new(LINE)
14
+ end
16
15
 
17
- it "should set #tipo_registro" do
18
- @segmento_t.tipo_registro.should == "7"
19
- end
16
+ it "should set #banco" do
17
+ @segmento_t.banco.should == "012"
18
+ end
20
19
 
21
- it "should set #num_registro" do
22
- @segmento_t.num_registro.should == "89012"
23
- end
20
+ it "should set #lote" do
21
+ @segmento_t.lote.should == "3456"
22
+ end
24
23
 
25
- it "should set #segmento" do
26
- @segmento_t.segmento.should == "3"
27
- end
24
+ it "should set #tipo_registro" do
25
+ @segmento_t.tipo_registro.should == "7"
26
+ end
28
27
 
29
- it "should set #res_cnab1" do
30
- @segmento_t.res_cnab1.should == "4"
31
- end
28
+ it "should set #num_registro" do
29
+ @segmento_t.num_registro.should == "89012"
30
+ end
32
31
 
33
- it "should set #cod_movimentacao" do
34
- @segmento_t.cod_movimentacao.should == "56"
35
- end
32
+ it "should set #segmento" do
33
+ @segmento_t.segmento.should == "3"
34
+ end
36
35
 
37
- it "should set #agencia" do
38
- @segmento_t.agencia.should == "78901"
39
- end
36
+ it "should set #res_cnab1" do
37
+ @segmento_t.res_cnab1.should == "4"
38
+ end
40
39
 
41
- it "should set #dv_agencia" do
42
- @segmento_t.dv_agencia.should == "2"
43
- end
40
+ it "should set #cod_movimentacao" do
41
+ @segmento_t.cod_movimentacao.should == "56"
42
+ end
44
43
 
45
- it "should set #conta_corrente" do
46
- @segmento_t.conta_corrente.should == "345678901234"
47
- end
44
+ it "should set #agencia" do
45
+ @segmento_t.agencia.should == "78901"
46
+ end
48
47
 
49
- it "should set #dv_conta" do
50
- @segmento_t.dv_conta.should == "5"
51
- end
48
+ it "should set #dv_agencia" do
49
+ @segmento_t.dv_agencia.should == "2"
50
+ end
52
51
 
53
- it "should set #dv_conta_agencia" do
54
- @segmento_t.dv_conta_agencia.should == "6"
55
- end
52
+ it "should set #conta_corrente" do
53
+ @segmento_t.conta_corrente.should == "345678901234"
54
+ end
56
55
 
57
- it "should set #id_titulo" do
58
- @segmento_t.id_titulo.should == "78901234567890123456"
59
- end
56
+ it "should set #dv_conta" do
57
+ @segmento_t.dv_conta.should == "5"
58
+ end
60
59
 
61
- it "should set #carteira" do
62
- @segmento_t.carteira.should == "7"
63
- end
60
+ it "should set #dv_conta_agencia" do
61
+ @segmento_t.dv_conta_agencia.should == "6"
62
+ end
64
63
 
65
- it "should set #doc_cobranca" do
66
- @segmento_t.doc_cobranca.should == "890123456789012"
67
- end
64
+ it "should set #id_titulo" do
65
+ @segmento_t.id_titulo.should == "78901234567890123456"
66
+ end
68
67
 
69
- it "should set #vencimento" do
70
- @segmento_t.vencimento.should == "34567890"
71
- end
68
+ it "should set #carteira" do
69
+ @segmento_t.carteira.should == "7"
70
+ end
72
71
 
73
- it "should set #valor_titulo" do
74
- @segmento_t.valor_titulo.should == "123456789012345"
75
- end
72
+ it "should set #doc_cobranca" do
73
+ @segmento_t.doc_cobranca.should == "890123456789012"
74
+ end
76
75
 
77
- it "should set #banco_recebimento" do
78
- @segmento_t.banco_recebimento.should == "678"
79
- end
76
+ it "should set #vencimento" do
77
+ @segmento_t.vencimento.should == "34567890"
78
+ end
80
79
 
81
- it "should set #ag_recebimento" do
82
- @segmento_t.ag_recebimento.should == "90123"
83
- end
80
+ it "should set #valor_titulo" do
81
+ @segmento_t.valor_titulo.should == "123456789012345"
82
+ end
84
83
 
85
- it "should set #dv_ag_recebimento" do
86
- @segmento_t.dv_ag_recebimento.should == "4"
87
- end
84
+ it "should set #banco_recebimento" do
85
+ @segmento_t.banco_recebimento.should == "678"
86
+ end
88
87
 
89
- it "should set #id_titulo_empresa" do
90
- @segmento_t.id_titulo_empresa.should == "5678901234567890123456789"
91
- end
88
+ it "should set #ag_recebimento" do
89
+ @segmento_t.ag_recebimento.should == "90123"
90
+ end
92
91
 
93
- it "should set #cod_moeda" do
94
- @segmento_t.cod_moeda.should == "01"
95
- end
92
+ it "should set #dv_ag_recebimento" do
93
+ @segmento_t.dv_ag_recebimento.should == "4"
94
+ end
96
95
 
97
- it "should set #tipo_inscricao" do
98
- @segmento_t.tipo_inscricao.should == "2"
99
- end
96
+ it "should set #id_titulo_empresa" do
97
+ @segmento_t.id_titulo_empresa.should == "5678901234567890123456789"
98
+ end
100
99
 
101
- it "should set #num_inscricao" do
102
- @segmento_t.num_inscricao.should == "345678901234567"
103
- end
100
+ it "should set #cod_moeda" do
101
+ @segmento_t.cod_moeda.should == "01"
102
+ end
104
103
 
105
- it "should set #nome" do
106
- @segmento_t.nome.should == "8901234567890123456789012345678901234567"
107
- end
104
+ it "should set #tipo_inscricao" do
105
+ @segmento_t.tipo_inscricao.should == "2"
106
+ end
108
107
 
109
- it "should set #num_contrato" do
110
- @segmento_t.num_contrato.should == "8901234567"
111
- end
108
+ it "should set #num_inscricao" do
109
+ @segmento_t.num_inscricao.should == "345678901234567"
110
+ end
111
+
112
+ it "should set #nome" do
113
+ @segmento_t.nome.should == "8901234567890123456789012345678901234567"
114
+ end
112
115
 
113
- it "should set #tarifa" do
114
- @segmento_t.tarifa.should == "890123456789012"
115
- end
116
+ it "should set #num_contrato" do
117
+ @segmento_t.num_contrato.should == "8901234567"
118
+ end
116
119
 
117
- it "should set #motivo" do
118
- @segmento_t.motivo.should == "3456789012"
119
- end
120
+ it "should set #tarifa" do
121
+ @segmento_t.tarifa.should == "890123456789012"
122
+ end
123
+
124
+ it "should set #motivo" do
125
+ @segmento_t.motivo.should == "3456789012"
126
+ end
120
127
 
121
- it "should set #res_cnab2" do
122
- @segmento_t.res_cnab2.should == "34567890123456789"
128
+ it "should set #res_cnab2" do
129
+ @segmento_t.res_cnab2.should == "34567890123456789"
130
+ end
123
131
  end
124
132
  end
125
133
  end
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+
3
+ describe Cnab::Detalhe::SegmentoTU do
4
+ let(:segmento_t) { Cnab::Detalhe::SegmentoT.new(LINE) }
5
+ let(:segmento_u) { Cnab::Detalhe::SegmentoU.new(LINE) }
6
+
7
+ describe "#method_missing" do
8
+ before :each do
9
+ @segmento_t_u = Cnab::Detalhe::SegmentoTU.new(segmento_t, segmento_u)
10
+ end
11
+
12
+ it "should call attributes on segmento_t object when it exists" do
13
+ @segmento_t_u.should respond_to(:ag_recebimento)
14
+ end
15
+
16
+ it "should call attributes on segmento_u object when it exists" do
17
+ @segmento_t_u.should respond_to(:valor_iof)
18
+ end
19
+
20
+ it "should raise an error if no segmento has the attribute" do
21
+ lambda { @segmento_t_u.valor_total }.should raise_error(NoMethodError)
22
+ end
23
+ end
24
+ end
@@ -2,104 +2,112 @@ require 'spec_helper'
2
2
 
3
3
  describe Cnab::Detalhe::SegmentoU do
4
4
  describe "#initialize" do
5
- before :each do
6
- @segmento_u = Cnab::Detalhe::SegmentoU.new(LINE)
5
+ context "with a non valid line" do
6
+ it "should raise an error" do
7
+ lambda { Cnab::Detalhe::SegmentoU.new("12345") }.should raise_error(Cnab::Exceptions::LineNotParseable)
8
+ end
7
9
  end
8
-
9
- it "should set #banco" do
10
- @segmento_u.banco.should == "012"
11
- end
12
-
13
- it "should set #lote" do
14
- @segmento_u.lote.should == "3456"
15
- end
16
-
17
- it "should set #tipo_registro" do
18
- @segmento_u.tipo_registro.should == "7"
19
- end
20
-
21
- it "should set #num_registro" do
22
- @segmento_u.num_registro.should == "89012"
23
- end
24
-
25
- it "should set #segmento" do
26
- @segmento_u.segmento.should == "3"
27
- end
28
-
29
- it "should set #res_cnab1" do
30
- @segmento_u.res_cnab1.should == "4"
31
- end
32
-
33
- it "should set #cod_movimentacao" do
34
- @segmento_u.cod_movimentacao.should == "56"
35
- end
36
-
37
- it "should set #acrescimos" do
38
- @segmento_u.acrescimos.should == "789012345678901"
39
- end
40
-
41
- it "should set #valor_desconto" do
42
- @segmento_u.valor_desconto.should == "234567890123456"
43
- end
44
-
45
- it "should set #valor_abatimento" do
46
- @segmento_u.valor_abatimento.should == "789012345678901"
47
- end
48
-
49
- it "should set #valor_iof" do
50
- @segmento_u.valor_iof.should == "234567890123456"
51
- end
52
-
53
- it "should set #valor_pago" do
54
- @segmento_u.valor_pago.should == "789012345678901"
55
- end
56
-
57
- it "should set #valor_liquido" do
58
- @segmento_u.valor_liquido.should == "234567890123456"
59
- end
60
-
61
- it "should set #outras_despesas" do
62
- @segmento_u.outras_despesas.should == "7890123456789012"
63
- end
64
-
65
- it "should set #outros_creditos" do
66
- @segmento_u.outros_creditos.should == "34567890123456"
67
- end
68
-
69
- it "should set #data_ocorrencia" do
70
- @segmento_u.data_ocorrencia.should == "78901234"
71
- end
72
-
73
- it "should set #data_credito" do
74
- @segmento_u.data_credito.should == "56789012"
75
- end
76
-
77
- it "should set #cod_ocorrencia_sacado" do
78
- @segmento_u.cod_ocorrencia_sacado.should == "3456"
79
- end
80
-
81
- it "should set #data_ocorrencia_sacado" do
82
- @segmento_u.data_ocorrencia_sacado.should == "78901234"
83
- end
84
-
85
- it "should set #valor_ocorrencia_sacado" do
86
- @segmento_u.valor_ocorrencia_sacado.should == "567890123456789"
87
- end
88
-
89
- it "should set #compl_ocorrencia_sacado" do
90
- @segmento_u.compl_ocorrencia_sacado.should == "012345678901234567890123456789"
91
- end
92
-
93
- it "should set #banco_compensacao" do
94
- @segmento_u.banco_compensacao.should == "012"
95
- end
96
-
97
- it "should set #banco_enviado" do
98
- @segmento_u.banco_enviado.should == "34567890123456789012"
99
- end
100
-
101
- it "should set #res_cnab2" do
102
- @segmento_u.res_cnab2.should == "3456789"
10
+
11
+ context "with a valid line" do
12
+ before :each do
13
+ @segmento_u = Cnab::Detalhe::SegmentoU.new(LINE)
14
+ end
15
+
16
+ it "should set #banco" do
17
+ @segmento_u.banco.should == "012"
18
+ end
19
+
20
+ it "should set #lote" do
21
+ @segmento_u.lote.should == "3456"
22
+ end
23
+
24
+ it "should set #tipo_registro" do
25
+ @segmento_u.tipo_registro.should == "7"
26
+ end
27
+
28
+ it "should set #num_registro" do
29
+ @segmento_u.num_registro.should == "89012"
30
+ end
31
+
32
+ it "should set #segmento" do
33
+ @segmento_u.segmento.should == "3"
34
+ end
35
+
36
+ it "should set #res_cnab1" do
37
+ @segmento_u.res_cnab1.should == "4"
38
+ end
39
+
40
+ it "should set #cod_movimentacao" do
41
+ @segmento_u.cod_movimentacao.should == "56"
42
+ end
43
+
44
+ it "should set #acrescimos" do
45
+ @segmento_u.acrescimos.should == "789012345678901"
46
+ end
47
+
48
+ it "should set #valor_desconto" do
49
+ @segmento_u.valor_desconto.should == "234567890123456"
50
+ end
51
+
52
+ it "should set #valor_abatimento" do
53
+ @segmento_u.valor_abatimento.should == "789012345678901"
54
+ end
55
+
56
+ it "should set #valor_iof" do
57
+ @segmento_u.valor_iof.should == "234567890123456"
58
+ end
59
+
60
+ it "should set #valor_pago" do
61
+ @segmento_u.valor_pago.should == "789012345678901"
62
+ end
63
+
64
+ it "should set #valor_liquido" do
65
+ @segmento_u.valor_liquido.should == "234567890123456"
66
+ end
67
+
68
+ it "should set #outras_despesas" do
69
+ @segmento_u.outras_despesas.should == "7890123456789012"
70
+ end
71
+
72
+ it "should set #outros_creditos" do
73
+ @segmento_u.outros_creditos.should == "34567890123456"
74
+ end
75
+
76
+ it "should set #data_ocorrencia" do
77
+ @segmento_u.data_ocorrencia.should == "78901234"
78
+ end
79
+
80
+ it "should set #data_credito" do
81
+ @segmento_u.data_credito.should == "56789012"
82
+ end
83
+
84
+ it "should set #cod_ocorrencia_sacado" do
85
+ @segmento_u.cod_ocorrencia_sacado.should == "3456"
86
+ end
87
+
88
+ it "should set #data_ocorrencia_sacado" do
89
+ @segmento_u.data_ocorrencia_sacado.should == "78901234"
90
+ end
91
+
92
+ it "should set #valor_ocorrencia_sacado" do
93
+ @segmento_u.valor_ocorrencia_sacado.should == "567890123456789"
94
+ end
95
+
96
+ it "should set #compl_ocorrencia_sacado" do
97
+ @segmento_u.compl_ocorrencia_sacado.should == "012345678901234567890123456789"
98
+ end
99
+
100
+ it "should set #banco_compensacao" do
101
+ @segmento_u.banco_compensacao.should == "012"
102
+ end
103
+
104
+ it "should set #banco_enviado" do
105
+ @segmento_u.banco_enviado.should == "34567890123456789012"
106
+ end
107
+
108
+ it "should set #res_cnab2" do
109
+ @segmento_u.res_cnab2.should == "3456789"
110
+ end
103
111
  end
104
112
  end
105
113
  end