cnab 0.1.0 → 0.2.0

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