brcobranca 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. data/History.txt +4 -0
  2. data/Manifest.txt +39 -0
  3. data/README.rdoc +71 -0
  4. data/Rakefile +32 -0
  5. data/brcobranca.gemspec +49 -0
  6. data/config/website.yml +2 -0
  7. data/lib/brcobranca/arquivos/logos/bb.jpg +0 -0
  8. data/lib/brcobranca/arquivos/logos/hsbc.jpg +0 -0
  9. data/lib/brcobranca/arquivos/logos/itau.jpg +0 -0
  10. data/lib/brcobranca/arquivos/templates/modelo_generico.eps +0 -0
  11. data/lib/brcobranca/boleto/banco_brasil.rb +79 -0
  12. data/lib/brcobranca/boleto/banco_hsbc.rb +63 -0
  13. data/lib/brcobranca/boleto/banco_itau.rb +105 -0
  14. data/lib/brcobranca/boleto/base.rb +142 -0
  15. data/lib/brcobranca/boleto/template/rghost.rb +151 -0
  16. data/lib/brcobranca/boleto/template/util.rb +24 -0
  17. data/lib/brcobranca/config.rb +9 -0
  18. data/lib/brcobranca/core_ext.rb +250 -0
  19. data/lib/brcobranca/currency.rb +70 -0
  20. data/lib/brcobranca/retorno/retorno_cbr643.rb +84 -0
  21. data/lib/brcobranca.rb +27 -0
  22. data/script/console +10 -0
  23. data/script/destroy +14 -0
  24. data/script/generate +14 -0
  25. data/script/txt2html +71 -0
  26. data/test/arquivos/CBR64310.RET +51 -0
  27. data/test/test_banco_brasil.rb +276 -0
  28. data/test/test_banco_hsbc.rb +66 -0
  29. data/test/test_banco_itau.rb +103 -0
  30. data/test/test_base.rb +162 -0
  31. data/test/test_core_ext.rb +227 -0
  32. data/test/test_currency.rb +51 -0
  33. data/test/test_helper.rb +5 -0
  34. data/test/test_retorno_cbr643.rb +17 -0
  35. data/website/index.html +74 -0
  36. data/website/index.txt +41 -0
  37. data/website/javascripts/rounded_corners_lite.inc.js +285 -0
  38. data/website/stylesheets/screen.css +159 -0
  39. data/website/template.html.erb +49 -0
  40. data.tar.gz.sig +0 -0
  41. metadata +175 -0
  42. metadata.gz.sig +0 -0
data/test/test_base.rb ADDED
@@ -0,0 +1,162 @@
1
+ require File.join(File.dirname(__FILE__),'test_helper.rb')
2
+
3
+ class BaseTest < Test::Unit::TestCase #:nodoc:[all]
4
+
5
+ def setup
6
+ @boleto = Brcobranca::Boleto::Base.new
7
+ end
8
+
9
+ def test_should_initialize_correctly
10
+ assert_equal "DM", @boleto.especie_documento
11
+ assert_equal "R$", @boleto.especie
12
+ assert_equal "9", @boleto.moeda
13
+ assert_equal Date.today, @boleto.data_documento
14
+ assert_equal 1, @boleto.dias_vencimento
15
+ assert_equal((Date.today + 1), @boleto.data_vencimento)
16
+ assert_equal "S", @boleto.aceite
17
+ assert_equal 1, @boleto.quantidade
18
+ assert_equal 0.0, @boleto.valor
19
+ assert_equal 0.0, @boleto.valor_documento
20
+ assert_equal "QUALQUER BANCO ATÉ O VENCIMENTO", @boleto.local_pagamento
21
+ end
22
+
23
+ def test_should_calculate_correct_banco_dv
24
+ @boleto.banco = "85068014982"
25
+ assert_equal 9, @boleto.banco_dv
26
+ @boleto.banco = "05009401448"
27
+ assert_equal 1, @boleto.banco_dv
28
+ @boleto.banco = "12387987777700168"
29
+ assert_equal 2, @boleto.banco_dv
30
+ @boleto.banco = "4042"
31
+ assert_equal 8, @boleto.banco_dv
32
+ @boleto.banco = "61900"
33
+ assert_equal 0, @boleto.banco_dv
34
+ @boleto.banco = "0719"
35
+ assert_equal 6, @boleto.banco_dv
36
+ @boleto.banco = 85068014982
37
+ assert_equal 9, @boleto.banco_dv
38
+ @boleto.banco = 5009401448
39
+ assert_equal 1, @boleto.banco_dv
40
+ @boleto.banco = 12387987777700168
41
+ assert_equal 2, @boleto.banco_dv
42
+ @boleto.banco = 4042
43
+ assert_equal 8, @boleto.banco_dv
44
+ @boleto.banco = 61900
45
+ assert_equal 0, @boleto.banco_dv
46
+ @boleto.banco = 719
47
+ assert_equal 6, @boleto.banco_dv
48
+ end
49
+
50
+ def test_should_calculate_correct_agencia_dv
51
+ @boleto.agencia = "85068014982"
52
+ assert_equal 9, @boleto.agencia_dv
53
+ @boleto.agencia = "05009401448"
54
+ assert_equal 1, @boleto.agencia_dv
55
+ @boleto.agencia = "12387987777700168"
56
+ assert_equal 2, @boleto.agencia_dv
57
+ @boleto.agencia = "4042"
58
+ assert_equal 8, @boleto.agencia_dv
59
+ @boleto.agencia = "61900"
60
+ assert_equal 0, @boleto.agencia_dv
61
+ @boleto.agencia = "0719"
62
+ assert_equal 6, @boleto.agencia_dv
63
+ @boleto.agencia = 85068014982
64
+ assert_equal 9, @boleto.agencia_dv
65
+ @boleto.agencia = 5009401448
66
+ assert_equal 1, @boleto.agencia_dv
67
+ @boleto.agencia = 12387987777700168
68
+ assert_equal 2, @boleto.agencia_dv
69
+ @boleto.agencia = 4042
70
+ assert_equal 8, @boleto.agencia_dv
71
+ @boleto.agencia = 61900
72
+ assert_equal 0, @boleto.agencia_dv
73
+ @boleto.agencia = 719
74
+ assert_equal 6, @boleto.agencia_dv
75
+ end
76
+
77
+ def test_should_calculate_correct_conta_corrente_dv
78
+ @boleto.conta_corrente = "85068014982"
79
+ assert_equal 9, @boleto.conta_corrente_dv
80
+ @boleto.conta_corrente = "05009401448"
81
+ assert_equal 1, @boleto.conta_corrente_dv
82
+ @boleto.conta_corrente = "12387987777700168"
83
+ assert_equal 2, @boleto.conta_corrente_dv
84
+ @boleto.conta_corrente = "4042"
85
+ assert_equal 8, @boleto.conta_corrente_dv
86
+ @boleto.conta_corrente = "61900"
87
+ assert_equal 0, @boleto.conta_corrente_dv
88
+ @boleto.conta_corrente = "0719"
89
+ assert_equal 6, @boleto.conta_corrente_dv
90
+ @boleto.conta_corrente = 85068014982
91
+ assert_equal 9, @boleto.conta_corrente_dv
92
+ @boleto.conta_corrente = 5009401448
93
+ assert_equal 1, @boleto.conta_corrente_dv
94
+ @boleto.conta_corrente = 12387987777700168
95
+ assert_equal 2, @boleto.conta_corrente_dv
96
+ @boleto.conta_corrente = 4042
97
+ assert_equal 8, @boleto.conta_corrente_dv
98
+ @boleto.conta_corrente = 61900
99
+ assert_equal 0, @boleto.conta_corrente_dv
100
+ @boleto.conta_corrente = 719
101
+ assert_equal 6, @boleto.conta_corrente_dv
102
+ end
103
+
104
+ def test_should_calculate_correct_nosso_numero_dv
105
+ @boleto.numero_documento = "85068014982"
106
+ assert_equal 9, @boleto.nosso_numero_dv
107
+ @boleto.numero_documento = "05009401448"
108
+ assert_equal 1, @boleto.nosso_numero_dv
109
+ @boleto.numero_documento = "12387987777700168"
110
+ assert_equal 2, @boleto.nosso_numero_dv
111
+ @boleto.numero_documento = "4042"
112
+ assert_equal 8, @boleto.nosso_numero_dv
113
+ @boleto.numero_documento = "61900"
114
+ assert_equal 0, @boleto.nosso_numero_dv
115
+ @boleto.numero_documento = "0719"
116
+ assert_equal 6, @boleto.nosso_numero_dv
117
+ @boleto.numero_documento = 85068014982
118
+ assert_equal 9, @boleto.nosso_numero_dv
119
+ @boleto.numero_documento = 5009401448
120
+ assert_equal 1, @boleto.nosso_numero_dv
121
+ @boleto.numero_documento = 12387987777700168
122
+ assert_equal 2, @boleto.nosso_numero_dv
123
+ @boleto.numero_documento = 4042
124
+ assert_equal 8, @boleto.nosso_numero_dv
125
+ @boleto.numero_documento = 61900
126
+ assert_equal 0, @boleto.nosso_numero_dv
127
+ @boleto.numero_documento = 719
128
+ assert_equal 6, @boleto.nosso_numero_dv
129
+ end
130
+
131
+ def test_should_return_correct_valor_documento
132
+ @boleto.quantidade = 1
133
+ @boleto.valor = 1
134
+ assert_equal 1, @boleto.valor_documento
135
+ @boleto.quantidade = 1
136
+ @boleto.valor = 1.0
137
+ assert_equal 1.0, @boleto.valor_documento
138
+ @boleto.quantidade = 1
139
+ @boleto.valor = 1.2
140
+ assert_equal 1.2, @boleto.valor_documento
141
+ @boleto.quantidade = 100
142
+ @boleto.valor = 1
143
+ assert_equal 100, @boleto.valor_documento
144
+ @boleto.quantidade = 1
145
+ @boleto.valor = 135.43
146
+ assert_equal 135.43, @boleto.valor_documento
147
+ end
148
+
149
+ def test_should_return_correct_data_vencimento
150
+ @boleto.data_documento = Date.parse "2008-02-01"
151
+ @boleto.dias_vencimento = 1
152
+ assert_equal "2008-02-02", @boleto.data_vencimento.to_s
153
+ @boleto.data_documento = Date.parse "2008-02-02"
154
+ @boleto.dias_vencimento = 28
155
+ assert_equal "2008-03-01", @boleto.data_vencimento.to_s
156
+ @boleto.data_documento = Date.parse "2008-02-06"
157
+ @boleto.dias_vencimento = 100
158
+ assert_equal "2008-05-16", @boleto.data_vencimento.to_s
159
+ assert_equal Date.parse("2008-05-16"), @boleto.data_vencimento
160
+ end
161
+
162
+ end
@@ -0,0 +1,227 @@
1
+ require File.join(File.dirname(__FILE__),'test_helper.rb')
2
+
3
+ class CoreExtTest < Test::Unit::TestCase #:nodoc:[all]
4
+ # Teste da Extensão de core do Brcobranca
5
+ def test_should_format_correct_cpf
6
+ assert_equal "987.892.987-90", 98789298790.to_br_cpf
7
+ assert_equal "987.892.987-90", "98789298790".to_br_cpf
8
+ end
9
+
10
+ def test_should_format_correct_cep
11
+ assert_equal "85253-100", 85253100.to_br_cep
12
+ assert_equal "85253-100", "85253100".to_br_cep
13
+ end
14
+
15
+ def test_should_format_correct_cnpj
16
+ assert_equal "88.394.510/0001-03", 88394510000103.to_br_cnpj
17
+ assert_equal "88.394.510/0001-03", "88394510000103".to_br_cnpj
18
+ end
19
+
20
+ def test_should_return_correct_object_formated
21
+ assert_equal "987.892.987-90", 98789298790.formata_documento
22
+ assert_equal "987.892.987-90", "98789298790".formata_documento
23
+ assert_equal "85253-100", 85253100.formata_documento
24
+ assert_equal "85253-100", "85253100".formata_documento
25
+ assert_equal "88.394.510/0001-03", 88394510000103.formata_documento
26
+ assert_equal "88.394.510/0001-03", "88394510000103".formata_documento
27
+ end
28
+
29
+ def test_should_return_true_is_moeda
30
+ assert_equal true, 1234.03.to_s.moeda?
31
+ assert_equal true, +1234.03.to_s.moeda?
32
+ assert_equal true, -1234.03.to_s.moeda?
33
+ assert_equal false, 123403.to_s.moeda?
34
+ assert_equal false, -123403.to_s.moeda?
35
+ assert_equal false, +123403.to_s.moeda?
36
+ assert_equal true, "1234.03".moeda?
37
+ assert_equal true, "1234,03".moeda?
38
+ assert_equal true, "1,234.03".moeda?
39
+ assert_equal true, "1.234.03".moeda?
40
+ assert_equal true, "1,234,03".moeda?
41
+ assert_equal true, "12.340,03".moeda?
42
+ assert_equal true, "+1234.03".moeda?
43
+ assert_equal true, "+1234,03".moeda?
44
+ assert_equal true, "+1,234.03".moeda?
45
+ assert_equal true, "+1.234.03".moeda?
46
+ assert_equal true, "+1,234,03".moeda?
47
+ assert_equal true, "+12.340,03".moeda?
48
+ assert_equal true, "-1234.03".moeda?
49
+ assert_equal true, "-1234,03".moeda?
50
+ assert_equal true, "-1,234.03".moeda?
51
+ assert_equal true, "-1.234.03".moeda?
52
+ assert_equal true, "-1,234,03".moeda?
53
+ assert_equal true, "-12.340,03".moeda?
54
+ assert_equal false, "1234ab".moeda?
55
+ assert_equal false, "ab1213".moeda?
56
+ assert_equal false, "ffab".moeda?
57
+ assert_equal false, "1234".moeda?
58
+ end
59
+
60
+ def test_should_return_correct_number_days
61
+ assert_equal 3769, (Date.parse "2008-02-01").fator_vencimento
62
+ assert_equal 3770, (Date.parse "2008-02-02").fator_vencimento
63
+ assert_equal 3774, (Date.parse "2008-02-06").fator_vencimento
64
+ end
65
+
66
+ def test_should_return_correct_formated_date
67
+ assert_equal "01/02/2008", (Date.parse "2008-02-01").to_s_br
68
+ assert_equal "02/02/2008", (Date.parse "2008-02-02").to_s_br
69
+ assert_equal "06/02/2008", (Date.parse "2008-02-06").to_s_br
70
+ end
71
+
72
+ def test_should_clean_value
73
+ assert_equal "123403", 1234.03.limpa_valor_moeda
74
+ assert_equal "123403", +1234.03.limpa_valor_moeda
75
+ assert_equal "123403", -1234.03.limpa_valor_moeda
76
+ assert_equal 123403, 123403.limpa_valor_moeda
77
+ assert_equal(-123403, -123403.limpa_valor_moeda)
78
+ assert_equal(+123403, +123403.limpa_valor_moeda)
79
+ assert_equal "123403", "1234.03".limpa_valor_moeda
80
+ assert_equal "123403", "1234,03".limpa_valor_moeda
81
+ assert_equal "123403", "1,234.03".limpa_valor_moeda
82
+ assert_equal "123403", "1.234.03".limpa_valor_moeda
83
+ assert_equal "123403", "1,234,03".limpa_valor_moeda
84
+ assert_equal "1234003", "12.340,03".limpa_valor_moeda
85
+ assert_equal "123403", "+1234.03".limpa_valor_moeda
86
+ assert_equal "123403", "+1234,03".limpa_valor_moeda
87
+ assert_equal "123403", "+1,234.03".limpa_valor_moeda
88
+ assert_equal "123403", "+1.234.03".limpa_valor_moeda
89
+ assert_equal "123403", "+1,234,03".limpa_valor_moeda
90
+ assert_equal "1234003", "+12.340,03".limpa_valor_moeda
91
+ assert_equal "123403", "-1234.03".limpa_valor_moeda
92
+ assert_equal "123403", "-1234,03".limpa_valor_moeda
93
+ assert_equal "123403", "-1,234.03".limpa_valor_moeda
94
+ assert_equal "123403", "-1.234.03".limpa_valor_moeda
95
+ assert_equal "123403", "-1,234,03".limpa_valor_moeda
96
+ assert_equal "1234003", "-12.340,03".limpa_valor_moeda
97
+ assert_equal "1234ab", "1234ab".limpa_valor_moeda
98
+ assert_equal "ab1213", "ab1213".limpa_valor_moeda
99
+ assert_equal "ffab", "ffab".limpa_valor_moeda
100
+ assert_equal "1234", "1234".limpa_valor_moeda
101
+ end
102
+
103
+ def test_should_calculate_correct_module10
104
+ assert_equal nil, " ".modulo10
105
+ assert_equal nil, "".modulo10
106
+ assert_equal 5, "001905009".modulo10
107
+ assert_equal 9, "4014481606".modulo10
108
+ assert_equal 4, "0680935031".modulo10
109
+ assert_equal 5, "29004590".modulo10
110
+ assert_equal 1, "341911012".modulo10
111
+ assert_equal 8, "3456788005".modulo10
112
+ assert_equal 1, "7123457000".modulo10
113
+ assert_equal 8, "00571234511012345678".modulo10
114
+ assert_kind_of( Fixnum, "001905009".modulo10 )
115
+ assert_equal 0, 0.modulo10
116
+ assert_equal 5, 1905009.modulo10
117
+ assert_equal 9, 4014481606.modulo10
118
+ assert_equal 4, 680935031.modulo10
119
+ assert_equal 5, 29004590.modulo10
120
+ assert_kind_of( Fixnum, 1905009.modulo10 )
121
+ end
122
+
123
+ def test_should_calculate_correct_modulo11_9to2
124
+ assert_equal 9, "85068014982".modulo11_9to2
125
+ assert_equal 1, "05009401448".modulo11_9to2
126
+ assert_equal 2, "12387987777700168".modulo11_9to2
127
+ assert_equal 8, "4042".modulo11_9to2
128
+ assert_equal 0, "61900".modulo11_9to2
129
+ assert_equal 6, "0719".modulo11_9to2
130
+ assert_equal 5, "000000005444".modulo11_9to2
131
+ assert_equal 5, "5444".modulo11_9to2
132
+ assert_equal 3, "01129004590".modulo11_9to2
133
+ assert_equal 10, "15735".modulo11_9to2
134
+ assert_equal 0, "777700168".modulo11_9to2
135
+ assert_equal 3, "77700168".modulo11_9to2
136
+ assert_equal 2, "00015448".modulo11_9to2
137
+ assert_equal 2, "15448".modulo11_9to2
138
+ assert_equal 9, "12345678".modulo11_9to2
139
+ assert_equal 0, "34230".modulo11_9to2
140
+ assert_equal 3, "258281".modulo11_9to2
141
+ assert_kind_of( Fixnum, "5444".modulo11_9to2 )
142
+ assert_kind_of( Fixnum, "000000005444".modulo11_9to2 )
143
+ assert_equal 9, 85068014982.modulo11_9to2
144
+ assert_equal 1, 5009401448.modulo11_9to2
145
+ assert_equal 2, 12387987777700168.modulo11_9to2
146
+ assert_equal 8, 4042.modulo11_9to2
147
+ assert_equal 0, 61900.modulo11_9to2
148
+ assert_equal 6, 719.modulo11_9to2
149
+ assert_equal 5, 5444.modulo11_9to2
150
+ assert_equal 3, 1129004590.modulo11_9to2
151
+ assert_kind_of( Fixnum, 5444.modulo11_9to2 )
152
+ end
153
+
154
+ def test_should_calculate_correct_modulo11_9to2_10_como_x
155
+ assert_equal 9, "85068014982".modulo11_9to2_10_como_x
156
+ assert_equal 1, "05009401448".modulo11_9to2_10_como_x
157
+ assert_equal 2, "12387987777700168".modulo11_9to2_10_como_x
158
+ assert_equal 8, "4042".modulo11_9to2_10_como_x
159
+ assert_equal 0, "61900".modulo11_9to2_10_como_x
160
+ assert_equal 6, "0719".modulo11_9to2_10_como_x
161
+ assert_equal 5, "000000005444".modulo11_9to2_10_como_x
162
+ assert_equal 5, "5444".modulo11_9to2_10_como_x
163
+ assert_equal 3, "01129004590".modulo11_9to2_10_como_x
164
+ assert_equal "X", "15735".modulo11_9to2_10_como_x
165
+ assert_kind_of( String, "15735".modulo11_9to2_10_como_x )
166
+ assert_kind_of( Fixnum, "5444".modulo11_9to2_10_como_x )
167
+ assert_kind_of( Fixnum, "000000005444".modulo11_9to2_10_como_x )
168
+ end
169
+
170
+ def test_should_calculate_correct_modulo11_2to9
171
+ assert_equal 3, "0019373700000001000500940144816060680935031".modulo11_2to9
172
+ assert_kind_of( Fixnum, "0019373700000001000500940144816060680935031".modulo11_2to9 )
173
+ assert_equal 6, "3419166700000123451101234567880057123457000".modulo11_2to9
174
+ assert_equal 3, 19373700000001000500940144816060680935031.modulo11_2to9
175
+ assert_kind_of( Fixnum, 19373700000001000500940144816060680935031.modulo11_2to9 )
176
+ end
177
+
178
+ def test_should_calculate_correct_addiction_of_numbers
179
+ assert_equal 3, 111.soma_digitos
180
+ assert_equal 8, 8.soma_digitos
181
+ assert_equal 3, "111".soma_digitos
182
+ assert_equal 8, "8".soma_digitos
183
+ assert_kind_of( Fixnum, 111.soma_digitos )
184
+ assert_kind_of( Fixnum, "111".soma_digitos )
185
+ end
186
+
187
+ def test_should_fill_correctly_with_zeros
188
+ assert_equal "123", "123".zeros_esquerda(:tamanho => 0)
189
+ assert_equal "123", "123".zeros_esquerda(:tamanho => 1)
190
+ assert_equal "123", "123".zeros_esquerda(:tamanho => 2)
191
+ assert_equal "123", "123".zeros_esquerda(:tamanho => 3)
192
+ assert_equal "0123", "123".zeros_esquerda(:tamanho => 4)
193
+ assert_equal "00123", "123".zeros_esquerda(:tamanho => 5)
194
+ assert_equal "0000000123", "123".zeros_esquerda(:tamanho => 10)
195
+ assert_kind_of( String, "123".zeros_esquerda(:tamanho => 5) )
196
+ assert_equal "123", 123.zeros_esquerda(:tamanho => 0)
197
+ assert_equal "123", 123.zeros_esquerda(:tamanho => 1)
198
+ assert_equal "123", 123.zeros_esquerda(:tamanho => 2)
199
+ assert_equal "123", 123.zeros_esquerda(:tamanho => 3)
200
+ assert_equal "0123", 123.zeros_esquerda(:tamanho => 4)
201
+ assert_equal "00123", 123.zeros_esquerda(:tamanho => 5)
202
+ assert_equal "0000000123", 123.zeros_esquerda(:tamanho => 10)
203
+ assert_kind_of( String, 123.zeros_esquerda(:tamanho => 5) )
204
+ assert_equal "123", "123".zeros_esquerda
205
+ assert_equal "123", 123.zeros_esquerda
206
+ end
207
+
208
+ def test_should_mont_correct_linha_digitalvel
209
+ assert_equal("00190.00009 01238.798779 77700.168188 2 37690000013500", "00192376900000135000000001238798777770016818".linha_digitavel)
210
+ assert_kind_of(String, "00192376900000135000000001238798777770016818".linha_digitavel)
211
+ assert_equal nil, "".linha_digitavel
212
+ assert_equal nil, "00193373700".linha_digitavel
213
+ assert_equal nil, "0019337370000193373700".linha_digitavel
214
+ assert_equal nil, "00b193373700bb00193373700".linha_digitavel
215
+ assert_equal nil, "0019337370000193373700bbb".linha_digitavel
216
+ assert_equal nil, "0019237690000c135000c0000123f7987e7773016813".linha_digitavel
217
+ end
218
+
219
+ def test_should_return_correct_julian_date
220
+ assert_equal "0429", (Date.parse "2009-02-11").to_juliano
221
+ assert_equal "0428", (Date.parse "2008-02-11").to_juliano
222
+ assert_equal "0989", (Date.parse "2009-04-08").to_juliano
223
+ # Ano 2008 eh bisexto
224
+ assert_equal "0998", (Date.parse "2008-04-08").to_juliano
225
+ end
226
+
227
+ end
@@ -0,0 +1,51 @@
1
+ require File.join(File.dirname(__FILE__),'test_helper.rb')
2
+
3
+ class CurrencyTest < Test::Unit::TestCase #:nodoc:[all]
4
+ # Teste do modulo currency
5
+
6
+ # Testa se é numero Ex. 1321 ou 13.32
7
+ def test_should_return_true_is_numeric
8
+ assert_equal true, "1234".numeric?
9
+ assert_equal true, "123.4".numeric?
10
+ assert_equal true, "123,4".numeric?
11
+ assert_equal true, "1234.03".numeric?
12
+ assert_equal true, "1234,03".numeric?
13
+ assert_equal true, "-1234".numeric?
14
+ assert_equal true, "-123.4".numeric?
15
+ assert_equal true, "-123,4".numeric?
16
+ assert_equal true, "-1234.03".numeric?
17
+ assert_equal true, "-1234,03".numeric?
18
+ assert_equal true, "+1234".numeric?
19
+ assert_equal true, "+123.4".numeric?
20
+ assert_equal true, "+123,4".numeric?
21
+ assert_equal true, "+1234.03".numeric?
22
+ assert_equal true, "+1234,03".numeric?
23
+ assert_equal false, "1234,".numeric?
24
+ assert_equal false, "1234.".numeric?
25
+ assert_equal false, "1,234.03".numeric?
26
+ assert_equal false, "1.234.03".numeric?
27
+ assert_equal false, "1,234,03".numeric?
28
+ assert_equal false, "12.340,03".numeric?
29
+ assert_equal false, "1234ab".numeric?
30
+ assert_equal false, "ab1213".numeric?
31
+ assert_equal false, "ffab".numeric?
32
+ end
33
+
34
+ def test_should_return_correct_number
35
+ assert_equal 1234, "1234".to_number
36
+ assert_equal 123.4, "123.4".to_number
37
+ assert_equal 123.4, "123,4".to_number
38
+ assert_equal nil, "1234,".to_number
39
+ assert_equal nil, "1234.".to_number
40
+ assert_equal 1234.03, "1234.03".to_number
41
+ assert_equal 1234.03, "1234,03".to_number
42
+ assert_equal nil, "1,234.03".to_number
43
+ assert_equal nil, "1.234.03".to_number
44
+ assert_equal nil, "1,234,03".to_number
45
+ assert_equal nil, "12.340,03".to_number
46
+ assert_equal nil, "1234ab".to_number
47
+ assert_equal nil, "ab1213".to_number
48
+ assert_equal nil, "ffab".to_number
49
+ end
50
+
51
+ end
@@ -0,0 +1,5 @@
1
+ require 'rubygems'
2
+ require 'stringio'
3
+ require 'test/unit'
4
+ require 'date'
5
+ require File.join(File.dirname(__FILE__),'..',"lib",'brcobranca')
@@ -0,0 +1,17 @@
1
+ require File.join(File.dirname(__FILE__),'test_helper.rb')
2
+
3
+ class RetornoCbr643Test < Test::Unit::TestCase #:nodoc:[all]
4
+
5
+ def test_should_correct_return_retorno
6
+ @pagamentos = Brcobranca::Retorno::Cbr643.load_lines(File.join(File.dirname(__FILE__),'arquivos','CBR64310.RET'))
7
+ assert_equal("000002", @pagamentos.first.sequencial)
8
+ assert_equal("33521", @pagamentos.first.agencia_com_dv)
9
+ assert_equal("000141473", @pagamentos.first.cedente_com_dv)
10
+ assert_equal("1123725", @pagamentos.first.convenio)
11
+ assert_equal("080708", @pagamentos.first.data_liquidacao)
12
+ assert_equal("100708", @pagamentos.first.data_credito)
13
+ assert_equal("0000000108461", @pagamentos.first.valor_recebido)
14
+ assert_equal("11237250000047565", @pagamentos.first.nosso_numero)
15
+ end
16
+
17
+ end
@@ -0,0 +1,74 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <link rel="stylesheet" href="stylesheets/screen.css" type="text/css" media="screen" />
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+ <title>
8
+ brcobranca
9
+ </title>
10
+ <script src="javascripts/rounded_corners_lite.inc.js" type="text/javascript"></script>
11
+ <style>
12
+
13
+ </style>
14
+ <script type="text/javascript">
15
+ window.onload = function() {
16
+ settings = {
17
+ tl: { radius: 10 },
18
+ tr: { radius: 10 },
19
+ bl: { radius: 10 },
20
+ br: { radius: 10 },
21
+ antiAlias: true,
22
+ autoPad: true,
23
+ validTags: ["div"]
24
+ }
25
+ var versionBox = new curvyCorners(settings, document.getElementById("version"));
26
+ versionBox.applyCornersToAll();
27
+ }
28
+ </script>
29
+ </head>
30
+ <body>
31
+ <div id="main">
32
+
33
+ <h1>brcobranca</h1>
34
+ <div class="sidebar">
35
+ <div id="version" class="clickable" onclick='document.location = "http://rubyforge.org/projects/brcobranca"; return false'>
36
+ <p>Fazer download</p>
37
+ <a href="http://rubyforge.org/projects/brcobranca" class="numbers">2.0.0</a>
38
+ </div>
39
+ </div>
40
+ <p>Gerador de bloquetos de cobrança para bancos brasileiros.</p>
41
+ <h2>Instalando</h2>
42
+ <p><pre class='syntax'><span class="ident">sudo</span> <span class="ident">gem</span> <span class="ident">install</span> <span class="ident">brcobranca</span></pre></p>
43
+ <h2>Documentação</h2>
44
+ <ul>
45
+ <li><a href="http://brcobranca.rubyforge.org/rdoc">http://brcobranca.rubyforge.org/rdoc</a></li>
46
+ </ul>
47
+ <h2>Exemplo</h2>
48
+ <h2>Fontes</h2>
49
+ <ul>
50
+ <li>github: <a href="http://github.com/kivanio/brcobranca/tree/master">http://github.com/kivanio/brcobranca/tree/master</a></li>
51
+ </ul>
52
+ <pre>git clone git://github.com/kivanio/brcobranca.git</pre>
53
+ <h3>Se preferir compilar direto do fonte</h3>
54
+ <pre>cd brcobranca
55
+ rake test
56
+ rake install_gem</pre>
57
+ <h2>Licensa</h2>
58
+ <p>Esta gem é licenciada pel licensa <span class="caps">BSD</span></p>
59
+ <h2>Gostou?</h2>
60
+ <ul>
61
+ <li>Recomende-nos no <a href="http://www.workingwithrails.com/recommendation/new/person/5679-kivanio-pereira-barbosa">workingwithrails.com</a></li>
62
+ </ul>
63
+ <h2>Contato</h2>
64
+ <p>De brasileiro para brasileiros.</p>
65
+ <p>Copyleft 2009 Kivanio Barbosa, kivanio@gmail.com</p>
66
+ <p class="coda">
67
+ Theme extended from <a href="http://rb2js.rubyforge.org/">Paul Battley</a>
68
+ </p>
69
+ </div>
70
+
71
+ <!-- insert site tracking codes here, like Google Urchin -->
72
+
73
+ </body>
74
+ </html>
data/website/index.txt ADDED
@@ -0,0 +1,41 @@
1
+ h1. brcobranca
2
+
3
+ Gerador de bloquetos de cobrança para bancos brasileiros.
4
+
5
+ h2. Instalando
6
+
7
+ <pre syntax="ruby">sudo gem install brcobranca</pre>
8
+
9
+ h2. Documentação
10
+
11
+ * "http://brcobranca.rubyforge.org/rdoc":http://brcobranca.rubyforge.org/rdoc
12
+
13
+ h2. Exemplo
14
+
15
+ h2. Fontes
16
+
17
+ * github: "http://github.com/kivanio/brcobranca/tree/master":http://github.com/kivanio/brcobranca/tree/master
18
+
19
+ <pre>git clone git://github.com/kivanio/brcobranca.git</pre>
20
+
21
+
22
+ h3. Se preferir compilar direto do fonte
23
+
24
+ <pre>cd brcobranca
25
+ rake test
26
+ rake install_gem</pre>
27
+
28
+
29
+ h2. Licensa
30
+
31
+ Esta gem é licenciada pel licensa BSD
32
+
33
+ h2. Gostou?
34
+
35
+ * Recomende-nos no "workingwithrails.com":http://www.workingwithrails.com/recommendation/new/person/5679-kivanio-pereira-barbosa
36
+
37
+ h2. Contato
38
+
39
+ De brasileiro para brasileiros.
40
+
41
+ Copyleft 2009 Kivanio Barbosa, kivanio@gmail.com