fechell 0.1.9

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.
Files changed (76) hide show
  1. data/Manifest +75 -0
  2. data/README.rdoc +130 -0
  3. data/Rakefile +16 -0
  4. data/fechell.gemspec +33 -0
  5. data/lib/defs/3.00.csv +1 -0
  6. data/lib/defs/5.00.csv +1 -0
  7. data/lib/defs/5.1.csv +1 -0
  8. data/lib/defs/5.2.csv +1 -0
  9. data/lib/defs/5.3.csv +1 -0
  10. data/lib/defs/6.1.csv +1 -0
  11. data/lib/defs/6.2.csv +1 -0
  12. data/lib/defs/6.3.csv +1 -0
  13. data/lib/defs/6.4.csv +1 -0
  14. data/lib/fechell/forms.rb +1285 -0
  15. data/lib/fechell.rb +353 -0
  16. data/lib/tests/f3test.rb +1035 -0
  17. data/lib/tests/satest.rb +346 -0
  18. data/lib/tests/sbtest.rb +390 -0
  19. data/lib/tests/sc1test.rb +616 -0
  20. data/lib/tests/sctest.rb +387 -0
  21. data/lib/tests/testdata/F3-3.00-32564-SC1.fec +3 -0
  22. data/lib/tests/testdata/F3-3.00-32777.fec +17 -0
  23. data/lib/tests/testdata/F3-3.00-32909-SC.fec +3 -0
  24. data/lib/tests/testdata/F3-3.00-32933-SB.fec +3 -0
  25. data/lib/tests/testdata/F3-3.00-32933.fec +658 -0
  26. data/lib/tests/testdata/F3-5.00-97348.fec +410 -0
  27. data/lib/tests/testdata/F3-5.00-97424-SB.fec +3 -0
  28. data/lib/tests/testdata/F3-5.00-97424-SC.fec +3 -0
  29. data/lib/tests/testdata/F3-5.00-97424.fec +12 -0
  30. data/lib/tests/testdata/F3-5.00-97986-SC1.fec +3 -0
  31. data/lib/tests/testdata/F3-5.1-116177-SC1.fec +3 -0
  32. data/lib/tests/testdata/F3-5.1-116437-SC2.fec +370 -0
  33. data/lib/tests/testdata/F3-5.1-126642.fec +448 -0
  34. data/lib/tests/testdata/F3-5.1-126655-SB.fec +3 -0
  35. data/lib/tests/testdata/F3-5.1-126655-SC.fec +3 -0
  36. data/lib/tests/testdata/F3-5.1-126655.fec +70 -0
  37. data/lib/tests/testdata/F3-5.2-170434.fec +298 -0
  38. data/lib/tests/testdata/F3-5.2-170443.fec +5 -0
  39. data/lib/tests/testdata/F3-5.2-170775-SC.fec +3 -0
  40. data/lib/tests/testdata/F3-5.2-170890-SC.fec +3 -0
  41. data/lib/tests/testdata/F3-5.2-170890.fec +21 -0
  42. data/lib/tests/testdata/F3-5.2-171146-SC1.fec +3 -0
  43. data/lib/tests/testdata/F3-5.2-171146.fec +490 -0
  44. data/lib/tests/testdata/F3-5.3-210119-SB.fec +8 -0
  45. data/lib/tests/testdata/F3-5.3-210119.fec +86 -0
  46. data/lib/tests/testdata/F3-5.3-210142-SC1.fec +3 -0
  47. data/lib/tests/testdata/F3-5.3-210142.fec +414 -0
  48. data/lib/tests/testdata/F3-5.3-210250.fec +584 -0
  49. data/lib/tests/testdata/F3-5.3-212438-SC.fec +3 -0
  50. data/lib/tests/testdata/F3-6.1-331453-SB.fec +3 -0
  51. data/lib/tests/testdata/F3-6.1-331453.fec +414 -0
  52. data/lib/tests/testdata/F3-6.1-332530-SC.fec +4 -0
  53. data/lib/tests/testdata/F3-6.1-332675.fec +1140 -0
  54. data/lib/tests/testdata/F3-6.1-333405-SC1.fec +3 -0
  55. data/lib/tests/testdata/F3-6.1-333405.fec +199 -0
  56. data/lib/tests/testdata/F3-6.2-350353-SC.fec +4 -0
  57. data/lib/tests/testdata/F3-6.2-350353.fec +882 -0
  58. data/lib/tests/testdata/F3-6.2-350775-SB.fec +3 -0
  59. data/lib/tests/testdata/F3-6.2-350775.fec +406 -0
  60. data/lib/tests/testdata/F3-6.2-350844-SC1.fec +3 -0
  61. data/lib/tests/testdata/F3-6.2-350844.fec +139 -0
  62. data/lib/tests/testdata/F3-6.3-413014.fec +624 -0
  63. data/lib/tests/testdata/F3-6.3-413060-SC.fec +3 -0
  64. data/lib/tests/testdata/F3-6.3-413226-SB.fec +3 -0
  65. data/lib/tests/testdata/F3-6.3-413226.fec +219 -0
  66. data/lib/tests/testdata/F3-6.3-413284-SC1.fec +3 -0
  67. data/lib/tests/testdata/F3-6.4-420048-SC.fec +3 -0
  68. data/lib/tests/testdata/F3-6.4-420048.fec +325 -0
  69. data/lib/tests/testdata/F3-6.4-420106.fec +3 -0
  70. data/lib/tests/testdata/F3-6.4-423088-SC1.fec +3 -0
  71. data/lib/tests/testdata/F3-6.4-423088.fec +59 -0
  72. data/lib/tests/testdata/F3-6.4-424094.fec +969 -0
  73. data/lib/tests/testdata/F3-6.4-424586-SB.fec +4 -0
  74. data/lib/tests/testdata/F3-6.4-424586.fec +131 -0
  75. data/lib/tests.rb +6 -0
  76. metadata +153 -0
@@ -0,0 +1,616 @@
1
+ require "rubygems"
2
+ require "fechell"
3
+
4
+ require "fechell/forms"
5
+
6
+ require 'test/unit'
7
+
8
+
9
+ require 'test/unit/ui/console/testrunner'
10
+
11
+ class TC_FECTestScheduleC1 < Test::Unit::TestCase
12
+ def setup
13
+ @testfiles = {}
14
+ @testfiles["3.00"] = "tests/testdata/F3-3.00-32564-SC1.fec"
15
+ @testfiles["5.00"] = "tests/testdata/F3-5.00-97986-SC1.fec"
16
+ @testfiles["5.1"] = "tests/testdata/F3-5.1-116177-SC1.fec"
17
+ @testfiles["5.2"] = "tests/testdata/F3-5.2-171146-SC1.fec"
18
+ @testfiles["5.3"] = "tests/testdata/F3-5.3-210142-SC1.fec"
19
+ @testfiles["6.1"] = "tests/testdata/F3-6.1-333405-SC1.fec"
20
+ @testfiles["6.2"] = "tests/testdata/F3-6.2-350844-SC1.fec"
21
+ @testfiles["6.3"] = "tests/testdata/F3-6.3-413284-SC1.fec"
22
+ @testfiles["6.4"] = "tests/testdata/F3-6.4-423088-SC1.fec"
23
+ end
24
+
25
+ def test_v300
26
+
27
+ h = FECHell.new
28
+
29
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["3.00"])
30
+
31
+ h.process(@testfiles["3.00"]) do |line|
32
+ schedule = line[0]
33
+ values = line[1]
34
+
35
+ f = FECForm.schedule_for(schedule, fec_version, values)
36
+ if schedule == "SC1"
37
+ #SC1/10,C00371187,SC/10.4163,CAN,BAGLEY^DONALD DAVID JR^Mr.^Jr.,919 PINE DRIVE,,CALDWELL,TX,77836,2000.00,,20020215,,,,,,,,,0.00,,X,Personal Loan,2000.00,20020215,Bank One,303 North Market Street,,Brenham,TX,77833,,,Bagley^Jodi^Mrs.^,20020228,,,
38
+ assert_equal('C00371187',f.committee_fecid)
39
+ assert_equal('SC/10.4163',f.back_reference_transaction_id)
40
+ assert_equal('CAN',f.entity_type)
41
+ assert_equal('BAGLEY^DONALD DAVID JR^Mr.^Jr.',f.lender_organization_name)
42
+ assert_equal('919 PINE DRIVE',f.lender_street_1)
43
+ assert_equal('CALDWELL',f.lender_city)
44
+ assert_equal('TX',f.lender_state)
45
+ assert_equal('77836',f.lender_zip)
46
+ assert_equal('2000.00',f.loan_amount)
47
+ assert_equal('20020215',f.loan_incurred_date)
48
+ #assert_equal('',f.loan_due_date)
49
+ #assert_equal('',f.loan_interest_rate)
50
+ #assert_equal('',f.loan_restructured)
51
+ #assert_equal('',f.loan_incurred_date_original)
52
+ #assert_equal('',f.credit_amount_this_draw)
53
+ #assert_equal('',f.total_balance)
54
+ #assert_equal('',f.others_liable)
55
+ #assert_equal('',f.collateral)
56
+ #assert_equal('',f.collateral_description)
57
+ assert_equal('0.00',f.collateral_amount)
58
+ #assert_equal('',f.perfected_interest)
59
+ assert_equal('X',f.future_income)
60
+ assert_equal('Personal Loan',f.future_income_description)
61
+ assert_equal('2000.00',f.future_income_estimated_value)
62
+ assert_equal('20020215',f.future_income_depository_account_established_date)
63
+ assert_equal('Bank One',f.future_income_depository_account_location_name)
64
+ assert_equal('303 North Market Street',f.future_income_depository_account_location_street_1)
65
+ #assert_equal('',f.future_income_depository_account_location_street_2)
66
+ assert_equal('Brenham',f.future_income_depository_account_location_city)
67
+ assert_equal('TX',f.future_income_depository_account_location_state)
68
+ assert_equal('77833',f.future_income_depository_account_location_zip)
69
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
70
+ #assert_equal('',f.basis_of_loan_description)
71
+ assert_equal('Bagley',f.treasurer_last_name)
72
+ assert_equal('Jodi',f.treasurer_first_name)
73
+ #assert_equal('',f.treasurer_middle_name)
74
+ assert_equal('Mrs.',f.treasurer_prefix)
75
+ #assert_equal('',f.treasurer_suffix)
76
+ assert_equal('20020228',f.date_signed)
77
+ #assert_equal('',f.authorized_last_name)
78
+ #assert_equal('',f.authorized_first_name)
79
+ #assert_equal('',f.authorized_middle_name)
80
+ #assert_equal('',f.authorized_prefix)
81
+ #assert_equal('',f.authorized_suffix)
82
+ #assert_equal('',f.authorized_title)
83
+ #assert_equal('',f.authorized_date_signed)
84
+ break
85
+ end
86
+ end
87
+ end
88
+
89
+ def test_v500
90
+
91
+ h = FECHell.new
92
+
93
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["5.00"])
94
+
95
+ h.process(@testfiles["5.00"]) do |line|
96
+ schedule = line[0]
97
+ values = line[1]
98
+
99
+ f = FECForm.schedule_for(schedule, fec_version, values)
100
+ if schedule == "SC1"
101
+ #SC1/10,C00346858,SC/10.4222,CAN,Jeffrey Colyer,12711 W. 118th Street,,Overland Park,KS,66210,5000.00,7.00,20030801,20051231,,,,,,,,0.00,,,,0.00,,,,,,,,,,Bartels^Jenny^^,20031015,,,,
102
+ assert_equal('C00346858',f.committee_fecid)
103
+ assert_equal('SC/10.4222',f.back_reference_transaction_id)
104
+ assert_equal('CAN',f.entity_type)
105
+ assert_equal('Jeffrey Colyer',f.lender_organization_name)
106
+ assert_equal('12711 W. 118th Street',f.lender_street_1)
107
+ assert_equal('Overland Park',f.lender_city)
108
+ assert_equal('KS',f.lender_state)
109
+ assert_equal('66210',f.lender_zip)
110
+ assert_equal('5000.00',f.loan_amount)
111
+ assert_equal('20030801',f.loan_incurred_date)
112
+ assert_equal('20051231',f.loan_due_date)
113
+ assert_equal('7.00',f.loan_interest_rate)
114
+ #assert_equal('',f.loan_restructured)
115
+ #assert_equal('',f.loan_incurred_date_original)
116
+ #assert_equal('',f.credit_amount_this_draw)
117
+ #assert_equal('',f.total_balance)
118
+ #assert_equal('',f.others_liable)
119
+ #assert_equal('',f.collateral)
120
+ #assert_equal('',f.collateral_description)
121
+ assert_equal('0.00',f.collateral_amount)
122
+ #assert_equal('',f.perfected_interest)
123
+ #assert_equal('',f.future_income)
124
+ #assert_equal('',f.future_income_description)
125
+ assert_equal('0.00',f.future_income_estimated_value)
126
+ #assert_equal('20020215',f.future_income_depository_account_established_date)
127
+ #assert_equal('Bank One',f.future_income_depository_account_location_name)
128
+ #assert_equal('303 North Market Street',f.future_income_depository_account_location_street_1)
129
+ #assert_equal('',f.future_income_depository_account_location_street_2)
130
+ #assert_equal('',f.future_income_depository_account_location_city)
131
+ #assert_equal('',f.future_income_depository_account_location_state)
132
+ #assert_equal('',f.future_income_depository_account_location_zip)
133
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
134
+ #assert_equal('',f.basis_of_loan_description)
135
+ assert_equal('Bartels',f.treasurer_last_name)
136
+ assert_equal('Jenny',f.treasurer_first_name)
137
+ #assert_equal('',f.treasurer_middle_name)
138
+ #assert_equal('',f.treasurer_prefix)
139
+ #assert_equal('',f.treasurer_suffix)
140
+ assert_equal('20031015',f.date_signed)
141
+ #assert_equal('',f.authorized_last_name)
142
+ #assert_equal('',f.authorized_first_name)
143
+ #assert_equal('',f.authorized_middle_name)
144
+ #assert_equal('',f.authorized_prefix)
145
+ #assert_equal('',f.authorized_suffix)
146
+ #assert_equal('',f.authorized_title)
147
+ #assert_equal('',f.authorized_date_signed)
148
+ break
149
+ end
150
+ end
151
+ end
152
+
153
+ def test_v51
154
+
155
+ h = FECHell.new
156
+
157
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["5.1"])
158
+
159
+ h.process(@testfiles["5.1"]) do |line|
160
+ schedule = line[0]
161
+ values = line[1]
162
+
163
+ f = FECForm.schedule_for(schedule, fec_version, values)
164
+ if schedule == "SC1"
165
+ #SC1/10,C00397612,SC/10.4169,CAN,Lewiston State Bank,37 South 200 West,,Logan,UT,84321,4000.00,5.5,20040220,,,,,,,X,Commercial Property,134000.00,X,,,0.00,,,,,,,,,,Bond^Debbie^^,20040415,,,,
166
+ assert_equal('C00397612',f.committee_fecid)
167
+ assert_equal('SC/10.4169',f.back_reference_transaction_id)
168
+ assert_equal('CAN',f.entity_type)
169
+ assert_equal('Lewiston State Bank',f.lender_organization_name)
170
+ assert_equal('37 South 200 West',f.lender_street_1)
171
+ assert_equal('Logan',f.lender_city)
172
+ assert_equal('UT',f.lender_state)
173
+ assert_equal('84321',f.lender_zip)
174
+ assert_equal('4000.00',f.loan_amount)
175
+ assert_equal('20040220',f.loan_incurred_date)
176
+ #assert_equal('',f.loan_due_date)
177
+ assert_equal('5.5',f.loan_interest_rate)
178
+ #assert_equal('',f.loan_restructured)
179
+ #assert_equal('',f.loan_incurred_date_original)
180
+ #assert_equal('',f.credit_amount_this_draw)
181
+ #assert_equal('',f.total_balance)
182
+ #assert_equal('',f.others_liable)
183
+ assert_equal('X',f.collateral)
184
+ assert_equal('Commercial Property',f.collateral_description)
185
+ assert_equal('134000.00',f.collateral_amount)
186
+ assert_equal('X',f.perfected_interest)
187
+ #assert_equal('',f.future_income)
188
+ #assert_equal('',f.future_income_description)
189
+ assert_equal('0.00',f.future_income_estimated_value)
190
+ #assert_equal('20020215',f.future_income_depository_account_established_date)
191
+ #assert_equal('Bank One',f.future_income_depository_account_location_name)
192
+ #assert_equal('303 North Market Street',f.future_income_depository_account_location_street_1)
193
+ #assert_equal('',f.future_income_depository_account_location_street_2)
194
+ #assert_equal('',f.future_income_depository_account_location_city)
195
+ #assert_equal('',f.future_income_depository_account_location_state)
196
+ #assert_equal('',f.future_income_depository_account_location_zip)
197
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
198
+ #assert_equal('',f.basis_of_loan_description)
199
+ assert_equal('Bond',f.treasurer_last_name)
200
+ assert_equal('Debbie',f.treasurer_first_name)
201
+ #assert_equal('',f.treasurer_middle_name)
202
+ #assert_equal('',f.treasurer_prefix)
203
+ #assert_equal('',f.treasurer_suffix)
204
+ assert_equal('20040415',f.date_signed)
205
+ #assert_equal('',f.authorized_last_name)
206
+ #assert_equal('',f.authorized_first_name)
207
+ #assert_equal('',f.authorized_middle_name)
208
+ #assert_equal('',f.authorized_prefix)
209
+ #assert_equal('',f.authorized_suffix)
210
+ #assert_equal('',f.authorized_title)
211
+ #assert_equal('',f.authorized_date_signed)
212
+ break
213
+ end
214
+ end
215
+ end
216
+
217
+ def test_v52
218
+
219
+ h = FECHell.new
220
+
221
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["5.2"])
222
+
223
+ h.process(@testfiles["5.2"]) do |line|
224
+ schedule = line[0]
225
+ values = line[1]
226
+
227
+ f = FECForm.schedule_for(schedule, fec_version, values)
228
+ if schedule == "SC1"
229
+ #SC1/10,C00392688,SC/10.6340,CAN,Bank of America,2004 San Miguel,,Austin,TX,787462017,750000.00,Floating,20040317,3/17/06,,,100000.00,750000.00,,X,Personal Property,1517000.00,X,,,0.00,,,,,,,,,,Goolsby^Kaye T.^^,20050415,,,,
230
+ assert_equal('C00392688',f.committee_fecid)
231
+ assert_equal('SC/10.6340',f.back_reference_transaction_id)
232
+ assert_equal('CAN',f.entity_type)
233
+ assert_equal('Bank of America',f.lender_organization_name)
234
+ assert_equal('2004 San Miguel',f.lender_street_1)
235
+ assert_equal('Austin',f.lender_city)
236
+ assert_equal('TX',f.lender_state)
237
+ assert_equal('787462017',f.lender_zip)
238
+ assert_equal('750000.00',f.loan_amount)
239
+ assert_equal('20040317',f.loan_incurred_date)
240
+ assert_equal('3/17/06',f.loan_due_date)
241
+ assert_equal('Floating',f.loan_interest_rate)
242
+
243
+ #assert_equal('',f.loan_restructured)
244
+ #assert_equal('',f.loan_incurred_date_original)
245
+ assert_equal('100000.00',f.credit_amount_this_draw)
246
+ assert_equal('750000.00',f.total_balance)
247
+ #assert_equal('',f.others_liable)
248
+ assert_equal('X',f.collateral)
249
+ assert_equal('Personal Property',f.collateral_description)
250
+ assert_equal('1517000.00',f.collateral_amount)
251
+ assert_equal('X',f.perfected_interest)
252
+ #assert_equal('',f.future_income)
253
+ #assert_equal('',f.future_income_description)
254
+ assert_equal('0.00',f.future_income_estimated_value)
255
+ #assert_equal('20020215',f.future_income_depository_account_established_date)
256
+ #assert_equal('Bank One',f.future_income_depository_account_location_name)
257
+ #assert_equal('303 North Market Street',f.future_income_depository_account_location_street_1)
258
+ #assert_equal('',f.future_income_depository_account_location_street_2)
259
+ #assert_equal('',f.future_income_depository_account_location_city)
260
+ #assert_equal('',f.future_income_depository_account_location_state)
261
+ #assert_equal('',f.future_income_depository_account_location_zip)
262
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
263
+ #assert_equal('',f.basis_of_loan_description)
264
+ assert_equal('Goolsby',f.treasurer_last_name)
265
+ assert_equal('Kaye T.',f.treasurer_first_name)
266
+ #assert_equal('',f.treasurer_middle_name)
267
+ #assert_equal('',f.treasurer_prefix)
268
+ #assert_equal('',f.treasurer_suffix)
269
+ assert_equal('20050415',f.date_signed)
270
+ #assert_equal('',f.authorized_last_name)
271
+ #assert_equal('',f.authorized_first_name)
272
+ #assert_equal('',f.authorized_middle_name)
273
+ #assert_equal('',f.authorized_prefix)
274
+ #assert_equal('',f.authorized_suffix)
275
+ #assert_equal('',f.authorized_title)
276
+ #assert_equal('',f.authorized_date_signed)
277
+ break
278
+ end
279
+ end
280
+ end
281
+
282
+ def test_v53
283
+
284
+ h = FECHell.new
285
+
286
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["5.3"])
287
+
288
+ h.process(@testfiles["5.3"]) do |line|
289
+ schedule = line[0]
290
+ values = line[1]
291
+
292
+ f = FECForm.schedule_for(schedule, fec_version, values)
293
+ if schedule == "SC1"
294
+ #SC1/10,C00412544,SC/10.6530,ORG,Farmers & Merchants Bank,104 North Main Street,P.O. Box 559,Sylvania,GA,30467,52678.08,8.00,20051213,12/13/06,,,,,,X,Land,52678.08,X,,,0.00,,,,,,,,,,Hunter^Emelyn^^,20060412,,,,
295
+ assert_equal('C00412544',f.committee_fecid)
296
+ assert_equal('SC/10.6530',f.back_reference_transaction_id)
297
+ assert_equal('ORG',f.entity_type)
298
+ assert_equal('Farmers & Merchants Bank',f.lender_organization_name)
299
+ assert_equal('104 North Main Street',f.lender_street_1)
300
+ assert_equal('P.O. Box 559',f.lender_street_2)
301
+ assert_equal('Sylvania',f.lender_city)
302
+ assert_equal('GA',f.lender_state)
303
+ assert_equal('30467',f.lender_zip)
304
+ assert_equal('52678.08',f.loan_amount)
305
+ assert_equal('20051213',f.loan_incurred_date)
306
+ assert_equal('12/13/06',f.loan_due_date)
307
+ assert_equal('8.00',f.loan_interest_rate)
308
+
309
+ #assert_equal('',f.loan_restructured)
310
+ #assert_equal('',f.loan_incurred_date_original)
311
+ #assert_equal('',f.credit_amount_this_draw)
312
+ #assert_equal('',f.total_balance)
313
+ #assert_equal('',f.others_liable)
314
+ assert_equal('X',f.collateral)
315
+ assert_equal('Land',f.collateral_description)
316
+ assert_equal('52678.08',f.collateral_amount)
317
+ assert_equal('X',f.perfected_interest)
318
+ #assert_equal('',f.future_income)
319
+ #assert_equal('',f.future_income_description)
320
+ assert_equal('0.00',f.future_income_estimated_value)
321
+ #assert_equal('',f.future_income_depository_account_established_date)
322
+ #assert_equal('',f.future_income_depository_account_location_name)
323
+ #assert_equal(',f.future_income_depository_account_location_street_1)
324
+ #assert_equal('',f.future_income_depository_account_location_street_2)
325
+ #assert_equal('',f.future_income_depository_account_location_city)
326
+ #assert_equal('',f.future_income_depository_account_location_state)
327
+ #assert_equal('',f.future_income_depository_account_location_zip)
328
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
329
+ #assert_equal('',f.basis_of_loan_description)
330
+ assert_equal('Hunter',f.treasurer_last_name)
331
+ assert_equal('Emelyn',f.treasurer_first_name)
332
+ #assert_equal('',f.treasurer_middle_name)
333
+ #assert_equal('',f.treasurer_prefix)
334
+ #assert_equal('',f.treasurer_suffix)
335
+ assert_equal('20060412',f.date_signed)
336
+ #assert_equal('',f.authorized_last_name)
337
+ #assert_equal('',f.authorized_first_name)
338
+ #assert_equal('',f.authorized_middle_name)
339
+ #assert_equal('',f.authorized_prefix)
340
+ #assert_equal('',f.authorized_suffix)
341
+ #assert_equal('',f.authorized_title)
342
+ #assert_equal('',f.authorized_date_signed)
343
+ break
344
+ end
345
+ end
346
+ end
347
+
348
+
349
+ def test_v61
350
+
351
+ h = FECHell.new
352
+
353
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["6.1"])
354
+
355
+ h.process(@testfiles["6.1"]) do |line|
356
+ schedule = line[0]
357
+ values = line[1]
358
+
359
+ f = FECForm.schedule_for(schedule, fec_version, values)
360
+ if schedule == "SC1"
361
+ #SC1/10,C00439430,SC/10.5063.SC1,SC/10.5063,Commerce Bank,416 Main St,,Peoria,IL,61602,100000.00,7.67,20080121,1/22/2009,N,,100000.00,100000.00,Y,Y,Arch Development Fund 1 LLP,100000.00,Y,N,,0.00,,,,,,,,,,McCoy,Kip,Logan,,,20080415,Barr,Constance,,,,Vice President,20080121
362
+ assert_equal('C00439430',f.committee_fecid)
363
+ assert_equal('SC/10.5063.SC1',f.transaction_id)
364
+ assert_equal('SC/10.5063',f.back_reference_transaction_id)
365
+ assert_equal('Commerce Bank',f.lender_organization_name)
366
+ assert_equal('416 Main St',f.lender_street_1)
367
+ #assert_equal('',f.lender_street_2)
368
+ assert_equal('Peoria',f.lender_city)
369
+ assert_equal('IL',f.lender_state)
370
+ assert_equal('61602',f.lender_zip)
371
+ assert_equal('100000.00',f.loan_amount)
372
+ assert_equal('20080121',f.loan_incurred_date)
373
+ assert_equal('1/22/2009',f.loan_due_date)
374
+ assert_equal('7.67',f.loan_interest_rate)
375
+ assert_equal('N',f.loan_restructured)
376
+ #assert_equal('',f.loan_incurred_date_original)
377
+ assert_equal('100000.00',f.credit_amount_this_draw)
378
+ assert_equal('100000.00',f.total_balance)
379
+ assert_equal('Y',f.others_liable)
380
+ assert_equal('Y',f.collateral)
381
+ assert_equal('Arch Development Fund 1 LLP',f.collateral_description)
382
+ assert_equal('100000.00',f.collateral_amount)
383
+ assert_equal('Y',f.perfected_interest)
384
+ assert_equal('N',f.future_income)
385
+ #assert_equal('',f.future_income_description)
386
+ assert_equal('0.00',f.future_income_estimated_value)
387
+ #assert_equal('',f.future_income_depository_account_established_date)
388
+ #assert_equal('',f.future_income_depository_account_location_name)
389
+ #assert_equal(',f.future_income_depository_account_location_street_1)
390
+ #assert_equal('',f.future_income_depository_account_location_street_2)
391
+ #assert_equal('',f.future_income_depository_account_location_city)
392
+ #assert_equal('',f.future_income_depository_account_location_state)
393
+ #assert_equal('',f.future_income_depository_account_location_zip)
394
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
395
+ #assert_equal('',f.basis_of_loan_description)
396
+ assert_equal('McCoy',f.treasurer_last_name)
397
+ assert_equal('Kip',f.treasurer_first_name)
398
+ assert_equal('Logan',f.treasurer_middle_name)
399
+ #assert_equal('',f.treasurer_prefix)
400
+ #assert_equal('',f.treasurer_suffix)
401
+ assert_equal('20080415',f.date_signed)
402
+ assert_equal('Barr',f.authorized_last_name)
403
+ assert_equal('Constance',f.authorized_first_name)
404
+ #assert_equal('',f.authorized_middle_name)
405
+ #assert_equal('',f.authorized_prefix)
406
+ #assert_equal('',f.authorized_suffix)
407
+ assert_equal('Vice President',f.authorized_title)
408
+ assert_equal('20080121',f.authorized_date_signed)
409
+
410
+ break
411
+ end
412
+ end
413
+ end
414
+
415
+ def test_v62
416
+
417
+ h = FECHell.new
418
+
419
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["6.2"])
420
+
421
+ h.process(@testfiles["6.2"]) do |line|
422
+ schedule = line[0]
423
+ values = line[1]
424
+
425
+ f = FECForm.schedule_for(schedule, fec_version, values)
426
+ if schedule == "SC1"
427
+ #SC1/10,C00444919,SC/10.5274.SC1,SC/10.5274,CNB Bank,2711 Wallaceton-Bigler Road,,Bigler,PA,16825,750000.00,0.0500,20080401,n/a,N,,83000.00,198000.00,N,Y,Assignment of Investment Properties,750000.00,N,N,,0.00,,,,,,,,,,Johnston,Charles,R,,,20080715,Sloppy,Richard,,,,Loan Officer,20080709
428
+ assert_equal('C00444919',f.committee_fecid)
429
+ assert_equal('SC/10.5274.SC1',f.transaction_id)
430
+ assert_equal('SC/10.5274',f.back_reference_transaction_id)
431
+ assert_equal('CNB Bank',f.lender_organization_name)
432
+ assert_equal('2711 Wallaceton-Bigler Road',f.lender_street_1)
433
+ #assert_equal('',f.lender_street_2)
434
+ assert_equal('Bigler',f.lender_city)
435
+ assert_equal('PA',f.lender_state)
436
+ assert_equal('16825',f.lender_zip)
437
+ assert_equal('750000.00',f.loan_amount)
438
+ assert_equal('20080401',f.loan_incurred_date)
439
+ assert_equal('n/a',f.loan_due_date)
440
+ assert_equal('0.0500',f.loan_interest_rate)
441
+ assert_equal('N',f.loan_restructured)
442
+ #assert_equal('',f.loan_incurred_date_original)
443
+ assert_equal('83000.00',f.credit_amount_this_draw)
444
+ assert_equal('198000.00',f.total_balance)
445
+ assert_equal('N',f.others_liable)
446
+ assert_equal('Y',f.collateral)
447
+ assert_equal('Assignment of Investment Properties',f.collateral_description)
448
+ assert_equal('750000.00',f.collateral_amount)
449
+ assert_equal('N',f.perfected_interest)
450
+ assert_equal('N',f.future_income)
451
+ #assert_equal('',f.future_income_description)
452
+ assert_equal('0.00',f.future_income_estimated_value)
453
+ #assert_equal('',f.future_income_depository_account_established_date)
454
+ #assert_equal('',f.future_income_depository_account_location_name)
455
+ #assert_equal(',f.future_income_depository_account_location_street_1)
456
+ #assert_equal('',f.future_income_depository_account_location_street_2)
457
+ #assert_equal('',f.future_income_depository_account_location_city)
458
+ #assert_equal('',f.future_income_depository_account_location_state)
459
+ #assert_equal('',f.future_income_depository_account_location_zip)
460
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
461
+ #assert_equal('',f.basis_of_loan_description)
462
+ assert_equal('Johnston',f.treasurer_last_name)
463
+ assert_equal('Charles',f.treasurer_first_name)
464
+ assert_equal('R',f.treasurer_middle_name)
465
+ #assert_equal('',f.treasurer_prefix)
466
+ #assert_equal('',f.treasurer_suffix)
467
+ assert_equal('20080715',f.date_signed)
468
+ assert_equal('Sloppy',f.authorized_last_name)
469
+ assert_equal('Richard',f.authorized_first_name)
470
+ #assert_equal('',f.authorized_middle_name)
471
+ #assert_equal('',f.authorized_prefix)
472
+ #assert_equal('',f.authorized_suffix)
473
+ assert_equal('Loan Officer',f.authorized_title)
474
+ assert_equal('20080709',f.authorized_date_signed)
475
+ break
476
+ end
477
+ end
478
+ end
479
+
480
+ def test_v63
481
+
482
+ h = FECHell.new
483
+
484
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["6.3"])
485
+
486
+ h.process(@testfiles["6.3"]) do |line|
487
+ schedule = line[0]
488
+ values = line[1]
489
+
490
+ f = FECForm.schedule_for(schedule, fec_version, values)
491
+ if schedule == "SC1"
492
+ #SC1/10,C00313247,LA90415.C16726,LS90415.C16726,Traders and Farmers Bank,PO Box 550,,Haleyville,AL,35565 ,100000.00,.0360,20090331,20100331,N,20090331,0.00,0.00,N,Y,CD,100000.00,N,N,,0.00,19960207,Traders and Farmers Bank,PO Box 550,,Haleyville,AL,35565 ,,guaranteed by CD,Mobley,Jeff,,,,20090331,Whiteside,Brett,,,,Sr. V.P,20090331
493
+
494
+ assert_equal('C00313247',f.committee_fecid)
495
+ assert_equal('LA90415.C16726',f.transaction_id)
496
+ assert_equal('LS90415.C16726',f.back_reference_transaction_id)
497
+ assert_equal('Traders and Farmers Bank',f.lender_organization_name)
498
+ assert_equal('PO Box 550',f.lender_street_1)
499
+ #assert_equal('',f.lender_street_2)
500
+ assert_equal('Haleyville',f.lender_city)
501
+ assert_equal('AL',f.lender_state)
502
+ assert_equal('35565 ',f.lender_zip)
503
+ assert_equal('100000.00',f.loan_amount)
504
+ assert_equal('20090331',f.loan_incurred_date)
505
+ assert_equal('20100331',f.loan_due_date)
506
+ assert_equal('.0360',f.loan_interest_rate)
507
+ assert_equal('N',f.loan_restructured)
508
+ assert_equal('20090331',f.loan_incurred_date_original)
509
+ assert_equal('0.00',f.credit_amount_this_draw)
510
+ assert_equal('0.00',f.total_balance)
511
+ assert_equal('N',f.others_liable)
512
+ assert_equal('Y',f.collateral)
513
+ assert_equal('CD',f.collateral_description)
514
+ assert_equal('100000.00',f.collateral_amount)
515
+ assert_equal('N',f.perfected_interest)
516
+ assert_equal('N',f.future_income)
517
+ #assert_equal('',f.future_income_description)
518
+ assert_equal('0.00',f.future_income_estimated_value)
519
+ assert_equal('19960207',f.future_income_depository_account_established_date)
520
+ assert_equal('Traders and Farmers Bank',f.future_income_depository_account_location_name)
521
+ assert_equal('PO Box 550',f.future_income_depository_account_location_street_1)
522
+ #assert_equal('',f.future_income_depository_account_location_street_2)
523
+ assert_equal('Haleyville',f.future_income_depository_account_location_city)
524
+ assert_equal('AL',f.future_income_depository_account_location_state)
525
+ assert_equal('35565 ',f.future_income_depository_account_location_zip)
526
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
527
+ assert_equal('guaranteed by CD',f.basis_of_loan_description)
528
+ assert_equal('Mobley',f.treasurer_last_name)
529
+ assert_equal('Jeff',f.treasurer_first_name)
530
+ #assert_equal('',f.treasurer_middle_name)
531
+ #assert_equal('',f.treasurer_prefix)
532
+ #assert_equal('',f.treasurer_suffix)
533
+ assert_equal('20090331',f.date_signed)
534
+ assert_equal('Whiteside',f.authorized_last_name)
535
+ assert_equal('Brett',f.authorized_first_name)
536
+ #assert_equal('',f.authorized_middle_name)
537
+ #assert_equal('',f.authorized_prefix)
538
+ #assert_equal('',f.authorized_suffix)
539
+ assert_equal('Sr. V.P',f.authorized_title)
540
+ assert_equal('20090331',f.authorized_date_signed)
541
+ break
542
+ end
543
+ end
544
+ end
545
+
546
+ def test_v64
547
+
548
+ h = FECHell.new
549
+
550
+ fec_version,original_form_type, form_type, values = h.header_lines(@testfiles["6.4"])
551
+
552
+ h.process(@testfiles["6.4"]) do |line|
553
+ schedule = line[0]
554
+ values = line[1]
555
+
556
+ f = FECForm.schedule_for(schedule, fec_version, values)
557
+ if schedule == "SC1"
558
+
559
+ #SC1/10,C00460436,SC/10.4214.SC1,SC/10.4214,Citibank,P.O. Box 310,,Hampstead,MD,21074,50000.00,0.0299,20090630,n/a,N,,,,N,N,,0.00,N,N,,0.00,,,,,,,,,,CLARK,CASEY,,,,20090712,CLARK,CASEY,,,,Candidate,20090630
560
+
561
+ assert_equal('C00460436',f.committee_fecid)
562
+ assert_equal('SC/10.4214.SC1',f.transaction_id)
563
+ assert_equal('SC/10.4214',f.back_reference_transaction_id)
564
+ assert_equal('Citibank',f.lender_organization_name)
565
+ assert_equal('P.O. Box 310',f.lender_street_1)
566
+ #assert_equal('',f.lender_street_2)
567
+ assert_equal('Hampstead',f.lender_city)
568
+ assert_equal('MD',f.lender_state)
569
+ assert_equal('21074',f.lender_zip)
570
+ assert_equal('50000.00',f.loan_amount)
571
+ assert_equal('20090630',f.loan_incurred_date)
572
+ #assert_equal('',f.loan_due_date)
573
+ assert_equal('0.0299',f.loan_interest_rate)
574
+ assert_equal('N',f.loan_restructured)
575
+ #assert_equal('',f.loan_incurred_date_original)
576
+ #assert_equal('',f.credit_amount_this_draw)
577
+ #assert_equal('',f.total_balance)
578
+ assert_equal('N',f.others_liable)
579
+ assert_equal('N',f.collateral)
580
+ #assert_equal('',f.collateral_description)
581
+ assert_equal('0.00',f.collateral_amount)
582
+ assert_equal('N',f.perfected_interest)
583
+ assert_equal('N',f.future_income)
584
+ #assert_equal('',f.future_income_description)
585
+ assert_equal('0.00',f.future_income_estimated_value)
586
+ assert_equal('',f.future_income_depository_account_established_date)
587
+ #assert_equal('',f.future_income_depository_account_location_name)
588
+ #assert_equal('',f.future_income_depository_account_location_street_1)
589
+ #assert_equal('',f.future_income_depository_account_location_street_2)
590
+ #assert_equal('',f.future_income_depository_account_location_city)
591
+ #assert_equal('',f.future_income_depository_account_location_state)
592
+ #assert_equal('',f.future_income_depository_account_location_zip)
593
+ #assert_equal('',f.future_income_depository_account_authorization_date_presidential)
594
+ #assert_equal('',f.basis_of_loan_description)
595
+ assert_equal('CLARK',f.treasurer_last_name)
596
+ assert_equal('CASEY',f.treasurer_first_name)
597
+ #assert_equal('',f.treasurer_middle_name)
598
+ #assert_equal('',f.treasurer_prefix)
599
+ #assert_equal('',f.treasurer_suffix)
600
+ assert_equal('20090712',f.date_signed)
601
+ assert_equal('CLARK',f.authorized_last_name)
602
+ assert_equal('CASEY',f.authorized_first_name)
603
+ #assert_equal('',f.authorized_middle_name)
604
+ #assert_equal('',f.authorized_prefix)
605
+ #assert_equal('',f.authorized_suffix)
606
+ assert_equal('Candidate',f.authorized_title)
607
+ assert_equal('20090630',f.authorized_date_signed)
608
+ break
609
+ end
610
+ end
611
+ end
612
+
613
+
614
+ end
615
+
616
+ Test::Unit::UI::Console::TestRunner.run(TC_FECTestScheduleC1)