bcardarella-deepthroat 0.3.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.
@@ -0,0 +1,263 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class TestSummaries < Test::Unit::TestCase
4
+
5
+ def setup
6
+ shared_attributes
7
+ DeepThroat.api_key = "validApiKey"
8
+ web_faker(:summaries, :cid => @cid, :cycle => @cycle, :apikey => DeepThroat.api_key)
9
+ end
10
+
11
+ context "Finding all summaries for Hilary Clinton in 2006" do
12
+ setup { @summaries = DeepThroat::Summaries.find(:cid => @cid, :cycle => @cycle) }
13
+
14
+ should "map #cid" do
15
+ assert_equal @cid, @summaries.cid
16
+ end
17
+
18
+ should "map #cycle" do
19
+ assert_equal @cycle, @summaries.cycle
20
+ end
21
+
22
+ should "map #name" do
23
+ assert_equal @name, @summaries.name
24
+ end
25
+
26
+ should "map #state" do
27
+ assert_equal @state, @summaries.state
28
+ end
29
+
30
+ should "map #party" do
31
+ assert_equal @party, @summaries.party
32
+ end
33
+
34
+ should "map #chamber" do
35
+ assert_equal @chamber, @summaries.chamber
36
+ end
37
+
38
+ should "map #first_elected" do
39
+ assert_equal @first_elected, @summaries.first_elected
40
+ end
41
+
42
+ should "map #next_election" do
43
+ assert_equal @next_election, @summaries.next_election
44
+ end
45
+
46
+ should "map #total" do
47
+ assert_equal @total, @summaries.total
48
+ end
49
+
50
+ should "map #spent" do
51
+ assert_equal @spent, @summaries.spent
52
+ end
53
+
54
+ should "map #cash_on_hand" do
55
+ assert_equal @cash_on_hand, @summaries.cash_on_hand
56
+ end
57
+
58
+ should "map #debt" do
59
+ assert_equal @debt, @summaries.debt
60
+ end
61
+
62
+ should "map #origin" do
63
+ assert_equal @origin, @summaries.origin
64
+ end
65
+
66
+ should "map #source" do
67
+ assert_equal @source, @summaries.source
68
+ end
69
+ end
70
+
71
+ context "Finding all summaries for Hillary Clinton with no cycle defined" do
72
+ setup do
73
+ web_faker(:summaries, :cid => @cid, :apikey => DeepThroat.api_key)
74
+ end
75
+
76
+ should "not raise any errors" do
77
+ assert_nothing_raised do
78
+ @summaries = DeepThroat::Summaries.find(:cid => @cid)
79
+ end
80
+ end
81
+ end
82
+
83
+ context "A new instance with missing attributes" do
84
+ should "raise a 'DeepThroat::NoCIDError' when not given a cid" do
85
+ assert_raise DeepThroat::NoCIDError do
86
+ DeepThroat::Summaries.find(:cycle => @cycle)
87
+ end
88
+ end
89
+ end
90
+
91
+ context "Obtaining the XML" do
92
+ setup { @xml_response = DeepThroat::Summaries.get_xml(:cid => @cid, :cycle => @cycle, :method => "candSummary") }
93
+
94
+ should "return an XML feed" do
95
+ assert_equal @test_xml, @xml_response
96
+ end
97
+ end
98
+
99
+ context "Parsing the XML" do
100
+ setup { @summaries = DeepThroat::Summaries.parse(@test_xml)[0] }
101
+
102
+ should "the return a 'DeepThroat::Summaries::Details' object" do
103
+ assert_kind_of DeepThroat::Summaries, @summaries
104
+ end
105
+
106
+ should "assign :name" do
107
+ assert_equal @name, @summaries.name
108
+ assert_kind_of String, @summaries.name
109
+ end
110
+
111
+ should "assign :state" do
112
+ assert_equal @state, @summaries.state
113
+ assert_kind_of String, @summaries.state
114
+ end
115
+
116
+ should "assign :party" do
117
+ assert_equal @party, @summaries.party
118
+ assert_kind_of String, @summaries.party
119
+ end
120
+
121
+ should "assign :chamber" do
122
+ assert_equal @chamber, @summaries.chamber
123
+ assert_kind_of String, @summaries.chamber
124
+ end
125
+
126
+ should "assign :first_elected" do
127
+ assert_equal @first_elected, @summaries.first_elected
128
+ assert_kind_of String, @summaries.first_elected
129
+ end
130
+
131
+ should "assign :next_election" do
132
+ assert_equal @next_election, @summaries.next_election
133
+ assert_kind_of String, @summaries.next_election
134
+ end
135
+
136
+ should "assign :total" do
137
+ assert_equal @total, @summaries.total
138
+ assert_kind_of Integer, @summaries.total
139
+ end
140
+
141
+ should "assign :spent" do
142
+ assert_equal @spent, @summaries.spent
143
+ assert_kind_of Integer, @summaries.spent
144
+ end
145
+
146
+ should "assign :cash_on_hand" do
147
+ assert_equal @cash_on_hand, @summaries.cash_on_hand
148
+ assert_kind_of Integer, @summaries.cash_on_hand
149
+ end
150
+
151
+ should "assign :debt" do
152
+ assert_equal @debt, @summaries.debt
153
+ assert_kind_of Integer, @summaries.debt
154
+ end
155
+
156
+ should "assign :origin" do
157
+ assert_equal @origin, @summaries.origin
158
+ assert_kind_of String, @summaries.origin
159
+ end
160
+
161
+ should "assign :source" do
162
+ assert_equal @source, @summaries.source
163
+ assert_kind_of String, @summaries.source
164
+ end
165
+ end
166
+
167
+
168
+ context "Sad Paths" do
169
+ setup do
170
+ # invalid ApiKey
171
+ web_faker(:summaries_bad_api_key, :cid => @cid, :cycle => @cycle, :apikey => "badApiKey")
172
+ # blank ApiKey
173
+ web_faker(:summaries_bad_api_key, :cid => @cid, :cycle => @cycle, :apikey => "")
174
+ # no ApiKey
175
+ web_faker(:summaries_bad_api_key, :cid => @cid, :cycle => @cycle)
176
+
177
+ # invalid CID
178
+ web_faker(:summaries_bad_cid, :cid => "badCID", :cycle => @cycle, :apikey => @api_key)
179
+ end
180
+
181
+ context "ApiKey" do
182
+ should "raise 'DeepThroat::InvalidOrMissing::ApiKeyError' when given a bad ApiKey" do
183
+ DeepThroat.api_key = "badApiKey"
184
+ assert_raise DeepThroat::InvalidOrMissing::ApiKeyError do
185
+ DeepThroat::Summaries.find(:cid => @cid, :cycle => @cycle)
186
+ end
187
+ end
188
+
189
+ should "raise 'DeepThroat::InvalidOrMissing::ApiKeyError' when given a blank ApiKey" do
190
+ DeepThroat.api_key = ""
191
+ assert_raise DeepThroat::InvalidOrMissing::ApiKeyError do
192
+ DeepThroat::Summaries.find(:cid => @cid, :cycle => @cycle)
193
+ end
194
+ end
195
+
196
+ should "raise 'DeepThroat::InvalidOrMissing::ApiKeyError' when given no ApiKey" do
197
+ DeepThroat.api_key = nil
198
+ assert_raise DeepThroat::InvalidOrMissing::ApiKeyError do
199
+ DeepThroat::Summaries.find(:cid => @cid, :cycle => @cycle)
200
+ end
201
+ end
202
+ end
203
+
204
+ context "CID" do
205
+ should "raise 'DeepThroat::InvalidOrMissing::CIDError' when given a bad CID" do
206
+ @bad_cid = "badCID"
207
+ assert_raise DeepThroat::InvalidOrMissing::CIDError do
208
+ DeepThroat::Summaries.find(:cid => @bad_cid, :cycle => @cycle)
209
+ end
210
+ end
211
+ end
212
+
213
+ context "Cycle" do
214
+ should "raise 'DeepThroat::InvalidOrMissing::CycleError' when given a bad Cycle" do
215
+ @bad_cycle = 2000
216
+ assert_raise DeepThroat::InvalidOrMissing::CycleError do
217
+ DeepThroat::Summaries.find(:cid => @cid, :cycle => @bad_cycle)
218
+ end
219
+ end
220
+ end
221
+
222
+ end
223
+
224
+ context "CONSTANTS" do
225
+ should "have CYCLES defined as an Array" do
226
+ assert_kind_of Array, DeepThroat::Summaries::CYCLES
227
+ end
228
+
229
+ context "CYCLES" do
230
+ should "include the year 2006" do
231
+ assert DeepThroat::Summaries::CYCLES.include?(2006)
232
+ end
233
+
234
+ should "include the year 2008" do
235
+ assert DeepThroat::Summaries::CYCLES.include?(2008)
236
+ end
237
+ end
238
+ end
239
+
240
+
241
+ private
242
+
243
+ def shared_attributes
244
+ @cid = "N00000019"
245
+ @cycle = 2006
246
+ @api_key = DeepThroat.api_key
247
+
248
+ @test_xml = summaries_xml.match(/<response>.*/)[0]
249
+
250
+ @name = "Clinton, Hillary"
251
+ @state = "NY"
252
+ @party = "D"
253
+ @chamber = "S"
254
+ @first_elected = "2000"
255
+ @next_election = "2006"
256
+ @total = 51567732
257
+ @spent = 40828991
258
+ @cash_on_hand = 11021087
259
+ @debt = 93363
260
+ @origin = "Center for Responsive Politics"
261
+ @source = "http://www.opensecrets.org/politicians/summary.php?cid=N00000019&cycle=2006"
262
+ end
263
+ end
@@ -0,0 +1,181 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class TestTopSectors < Test::Unit::TestCase
4
+
5
+ def setup
6
+ shared_attributes
7
+ DeepThroat.api_key = "validApiKey"
8
+ web_faker(:top_sectors, :cid => @cid, :cycle => @cycle, :apikey => DeepThroat.api_key)
9
+ end
10
+
11
+ context "Finding all top_sectors for Hilary Clinton in 2006" do
12
+ setup { @top_sectors = DeepThroat::TopSectors.find(:cid => @cid, :cycle => @cycle) }
13
+
14
+ should "map #cid" do
15
+ assert_equal @cid, @top_sectors.cid
16
+ end
17
+
18
+ should "map #cycle" do
19
+ assert_equal @cycle, @top_sectors.cycle
20
+ end
21
+
22
+ should "map #name" do
23
+ assert_equal @name, @top_sectors.name
24
+ end
25
+
26
+ should "map #origin" do
27
+ assert_equal @origin, @top_sectors.origin
28
+ end
29
+
30
+ should "map #source" do
31
+ assert_equal @source, @top_sectors.source
32
+ end
33
+
34
+ should "map #sectors" do
35
+ assert_kind_of Array, @top_sectors.sectors
36
+ end
37
+ end
38
+
39
+ context "Finding all top_sectors for Hillary Clinton with no cycle defined" do
40
+ setup do
41
+ web_faker(:top_sectors, :cid => @cid, :apikey => DeepThroat.api_key)
42
+ end
43
+
44
+ should "not raise any errors" do
45
+ assert_nothing_raised do
46
+ @top_sectors = DeepThroat::TopSectors.find(:cid => @cid)
47
+ end
48
+ end
49
+ end
50
+
51
+ context "A new instance with missing attributes" do
52
+ should "raise a 'DeepThroat::NoCIDError' when not given a cid" do
53
+ assert_raise DeepThroat::NoCIDError do
54
+ DeepThroat::TopSectors.find(:cycle => @cycle)
55
+ end
56
+ end
57
+ end
58
+
59
+ context "Obtaining the XML" do
60
+ setup { @xml_response = DeepThroat::TopSectors.get_xml(:cid => @cid, :cycle => @cycle, :method => "candSector") }
61
+
62
+ should "return an XML feed" do
63
+ assert_equal @test_xml, @xml_response
64
+ end
65
+ end
66
+
67
+ context "Parsing the XML" do
68
+ setup { @top_sectors = DeepThroat::TopSectors.parse(@test_xml)[0] }
69
+
70
+ should "the return a 'DeepThroat::TopSectors::Details' object" do
71
+ assert_kind_of DeepThroat::TopSectors, @top_sectors
72
+ end
73
+
74
+ should "assign :name" do
75
+ assert_equal @name, @top_sectors.name
76
+ assert_kind_of String, @top_sectors.name
77
+ end
78
+
79
+ should "assign :origin" do
80
+ assert_equal @origin, @top_sectors.origin
81
+ assert_kind_of String, @top_sectors.origin
82
+ end
83
+
84
+ should "assign :source" do
85
+ assert_equal @source, @top_sectors.source
86
+ assert_kind_of String, @top_sectors.source
87
+ end
88
+
89
+ should "assign :sectors" do
90
+ assert_kind_of Array, @top_sectors.sectors
91
+ end
92
+ end
93
+
94
+
95
+ context "Sad Paths" do
96
+ setup do
97
+ # invalid ApiKey
98
+ web_faker(:top_sectors_bad_api_key, :cid => @cid, :cycle => @cycle, :apikey => "badApiKey")
99
+ # blank ApiKey
100
+ web_faker(:top_sectors_bad_api_key, :cid => @cid, :cycle => @cycle, :apikey => "")
101
+ # no ApiKey
102
+ web_faker(:top_sectors_bad_api_key, :cid => @cid, :cycle => @cycle)
103
+
104
+ # invalid CID
105
+ web_faker(:top_sectors_bad_cid, :cid => "badCID", :cycle => @cycle, :apikey => @api_key)
106
+ end
107
+
108
+ context "ApiKey" do
109
+ should "raise 'DeepThroat::InvalidOrMissing::ApiKeyError' when given a bad ApiKey" do
110
+ DeepThroat.api_key = "badApiKey"
111
+ assert_raise DeepThroat::InvalidOrMissing::ApiKeyError do
112
+ DeepThroat::TopSectors.find(:cid => @cid, :cycle => @cycle)
113
+ end
114
+ end
115
+
116
+ should "raise 'DeepThroat::InvalidOrMissing::ApiKeyError' when given a blank ApiKey" do
117
+ DeepThroat.api_key = ""
118
+ assert_raise DeepThroat::InvalidOrMissing::ApiKeyError do
119
+ DeepThroat::TopSectors.find(:cid => @cid, :cycle => @cycle)
120
+ end
121
+ end
122
+
123
+ should "raise 'DeepThroat::InvalidOrMissing::ApiKeyError' when given no ApiKey" do
124
+ DeepThroat.api_key = nil
125
+ assert_raise DeepThroat::InvalidOrMissing::ApiKeyError do
126
+ DeepThroat::TopSectors.find(:cid => @cid, :cycle => @cycle)
127
+ end
128
+ end
129
+ end
130
+
131
+ context "CID" do
132
+ should "raise 'DeepThroat::InvalidOrMissing::CIDError' when given a bad CID" do
133
+ @bad_cid = "badCID"
134
+ assert_raise DeepThroat::InvalidOrMissing::CIDError do
135
+ DeepThroat::TopSectors.find(:cid => @bad_cid, :cycle => @cycle)
136
+ end
137
+ end
138
+ end
139
+
140
+ context "Cycle" do
141
+ should "raise 'DeepThroat::InvalidOrMissing::CycleError' when given a bad Cycle" do
142
+ @bad_cycle = 2000
143
+ assert_raise DeepThroat::InvalidOrMissing::CycleError do
144
+ DeepThroat::TopSectors.find(:cid => @cid, :cycle => @bad_cycle)
145
+ end
146
+ end
147
+ end
148
+
149
+ end
150
+
151
+ context "CONSTANTS" do
152
+ should "have CYCLES defined as an Array" do
153
+ assert_kind_of Array, DeepThroat::TopSectors::CYCLES
154
+ end
155
+
156
+ context "CYCLES" do
157
+ should "include the year 2006" do
158
+ assert DeepThroat::TopSectors::CYCLES.include?(2006)
159
+ end
160
+
161
+ should "include the year 2008" do
162
+ assert DeepThroat::TopSectors::CYCLES.include?(2008)
163
+ end
164
+ end
165
+ end
166
+
167
+
168
+ private
169
+
170
+ def shared_attributes
171
+ @cid = "N00000019"
172
+ @cycle = 2006
173
+ @api_key = DeepThroat.api_key
174
+
175
+ @test_xml = top_sectors_xml.match(/<response>.*/)[0]
176
+
177
+ @name = "Hillary Clinton (D)"
178
+ @origin = "Center for Responsive Politics"
179
+ @source = "http://www.opensecrets.org/politicians/industries.php?cid=N00000019&cycle=2006"
180
+ end
181
+ end
@@ -0,0 +1,56 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class TestTopSectorsSector < Test::Unit::TestCase
4
+ def setup
5
+ shared_attributes
6
+ DeepThroat.api_key = "fakeapi_key"
7
+ web_faker(:contributions, :cid => @cid, :cycle => @cycle, :api_key => DeepThroat.api_key)
8
+ end
9
+
10
+ context "Parsing the XML" do
11
+ setup { @sector = DeepThroat::TopSectors::Sector.parse(@test_xml) }
12
+
13
+ should "the return a 'DeepThroat::TopSectors::Sector' object" do
14
+ assert_kind_of DeepThroat::TopSectors::Sector, @sector
15
+ end
16
+
17
+ should "assign :sector" do
18
+ assert_equal @sector_name, @sector.sector
19
+ assert_kind_of String, @sector.sector
20
+ end
21
+
22
+ should "assign :sectorid" do
23
+ assert_equal @sectorid, @sector.sectorid
24
+ assert_kind_of String, @sector.sectorid
25
+ end
26
+
27
+ should "assign :indivs" do
28
+ assert_equal @indivs, @sector.indivs
29
+ assert_kind_of Integer, @sector.indivs
30
+ end
31
+
32
+ should "assign :pacs" do
33
+ assert_equal @pacs, @sector.pacs
34
+ assert_kind_of Integer, @sector.pacs
35
+ end
36
+
37
+ should "assign :total" do
38
+ assert_equal @total, @sector.total
39
+ assert_kind_of Integer, @sector.total
40
+ end
41
+ end
42
+
43
+ private
44
+
45
+ def shared_attributes
46
+ @cid = "N00000019"
47
+ @cycle = 2006
48
+
49
+ @test_xml = "<sector sector_name=\"Agribusiness\" sectorid=\"A\" indivs=\"210110\" pacs=\"46500\" total=\"256610\" />"
50
+ @sector_name = "Agribusiness"
51
+ @sectorid = "A"
52
+ @indivs = 210110
53
+ @pacs = 46500
54
+ @total = 256610
55
+ end
56
+ end
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 400 Bad Request
2
+ Date: Fri, 06 Mar 2009 14:04:41 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 39
7
+ Content-Type: text/plain
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ key does not have access to this method
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 400 Bad Request
2
+ Date: Fri, 06 Mar 2009 14:05:59 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 11
7
+ Content-Type: text/plain
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ Invalid CID
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 400 Bad Request
2
+ Date: Fri, 06 Mar 2009 14:05:31 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 18
7
+ Content-Type: text/plain
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ Invalid Year|Cycle
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 404 Not Found
2
+ Date: Sun, 12 Apr 2009 20:31:04 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 18
7
+ Content-Type: text/plain
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ Resource not found
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 200 OK
2
+ Date: Wed, 04 Feb 2009 15:33:43 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 1023
7
+ Content-Type: text/xml; charset=utf-8
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ <response><contributors cand_name="Hillary Clinton (D)" cid="N00000019" cycle="2006" origin="Center for Responsive Politics" source="http://www.opensecrets.org/politicians/contrib.php?cid=N00000019&amp;cycle=2006" notice="The organizations themselves did not donate, rather the money came from the organization&apos;s PAC, its individual members or employees or owners, and those individuals&apos; immediate families." ><contributor org_name="Citigroup Inc" total="228110" /><contributor org_name="Goldman Sachs" total="193570" /><contributor org_name="Metropolitan Life" total="154850" /><contributor org_name="Time Warner" total="138630" /><contributor org_name="Corning Inc" total="135750" /><contributor org_name="Morgan Stanley" total="122560" /><contributor org_name="JP Morgan Chase &amp; Co" total="120075" /><contributor org_name="Credit Suisse Group" total="117650" /><contributor org_name="Skadden, Arps et al" total="108330" /><contributor org_name="Ernst &amp; Young" total="98250" /></contributors></response>
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 500 Internal Server Error
2
+ Date: Fri, 06 Mar 2009 14:06:39 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 27
7
+ Content-Type: text/plain
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ Invalid service: badMethodName
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 200 OK
2
+ Date: Wed, 04 Feb 2009 15:40:38 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 2056
7
+ Content-Type: text/xml; charset=utf-8
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ <response><industries cand_name="Hillary Clinton (D)" cid="N00000019" cycle="2006" origin="Center for Responsive Politics" source="http://www.opensecrets.org/politicians/industries.php?cid=N00000019&amp;cycle=2006" last_updated="06/04/2007" ><industry industry_name="Lawyers/Law Firms" indivs="3921550" pacs="202695" total="4124245" /><industry industry_name="Securities &amp; Investment" indivs="2302989" pacs="106964" total="2409953" /><industry industry_name="Retired" indivs="2166071" pacs="0" total="2166071" /><industry industry_name="Real Estate" indivs="1964653" pacs="56100" total="2020753" /><industry industry_name="TV/Movies/Music" indivs="1238328" pacs="60500" total="1298828" /><industry industry_name="Business Services" indivs="1096496" pacs="17500" total="1113996" /><industry industry_name="Women&apos;s Issues" indivs="940019" pacs="1200" total="941219" /><industry industry_name="Misc Finance" indivs="854572" pacs="0" total="854572" /><industry industry_name="Health Professionals" indivs="739656" pacs="63750" total="803406" /><industry industry_name="Education" indivs="713124" pacs="7000" total="720124" /><industry industry_name="Democratic/Liberal" indivs="514373" pacs="24047" total="538420" /><industry industry_name="Printing &amp; Publishing" indivs="520650" pacs="4700" total="525350" /><industry industry_name="Insurance" indivs="420500" pacs="83150" total="503650" /><industry industry_name="Commercial Banks" indivs="442745" pacs="40750" total="483495" /><industry industry_name="Misc Business" indivs="394756" pacs="0" total="394756" /><industry industry_name="Lobbyists" indivs="341474" pacs="7152" total="348626" /><industry industry_name="Pro-Israel" indivs="305655" pacs="37618" total="343273" /><industry industry_name="Hospitals/Nursing Homes" indivs="277711" pacs="47000" total="324711" /><industry industry_name="Computers/Internet" indivs="297407" pacs="19687" total="317094" /><industry industry_name="Misc Manufacturing &amp; Distributing" indivs="281865" pacs="29000" total="310865" /></industries></response>
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 200 OK
2
+ Date: Wed, 04 Feb 2009 15:39:00 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 444
7
+ Content-Type: text/xml; charset=utf-8
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ <response><candIndus cand_name="Clinton, Hillary" cid="N00000019" cycle="2008" industry="Crop Production " chamber="S" party="D" state="New York " total="218291" indivs="211491" pacs="6800" rank="4" origin="Center for Responsive Politics" source="http://www.opensecrets.org/industries/recips.php?Ind=A01&amp;cycle=2008&amp;recipdetail=S&amp;Mem=Y&amp;sortorder=U" last_updated="1/5/09" /></response>
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 200 OK
2
+ Date: Wed, 04 Feb 2009 15:49:33 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 5706
7
+ Content-Type: text/xml; charset=utf-8
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ <response><member_profile name="Clinton, Hillary" member_id="N00000019" net_low="10409018" net_high="51232000" positions_held_count="1" asset_count="168" asset_low="10409018" asset_high="51232000" transaction_count="169" tx_low="11241168" tx_high="26040000" source="http://www.opensecrets.org/pfds/CIDSummary.php?CID=N00000019&amp;year=2007" origin="Center for Responsive Politics" update_timestamp="1/26/09" ><assets><asset name="Citibank Deposit Accounts" holdings_low="5000001" holdings_high="25000000" industry="" sector="" subsidiary_of="" /><asset name="Citibank Market Deposit Account" holdings_low="5000001" holdings_high="25000000" industry="" sector="" subsidiary_of="" /><asset name="US Treasury Note" holdings_low="133007" holdings_high="347000" industry="" sector="" subsidiary_of="" /><asset name="National Life Life Insurance" holdings_low="100001" holdings_high="250000" industry="" sector="" subsidiary_of="" /><asset name="Freddie Mac Bond" holdings_low="65002" holdings_high="150000" industry="Real Estate" sector="Finance/Insur/RealEst" subsidiary_of="Freddie Mac" /><asset name="Fannie Mae Bond" holdings_low="51002" holdings_high="116000" industry="Real Estate" sector="Finance/Insur/RealEst" subsidiary_of="" /><asset name="Northwestern Mutual Life Insurance" holdings_low="30002" holdings_high="100000" industry="Insurance" sector="Finance/Insur/RealEst" subsidiary_of="" /><asset name="Quellos Alpha Engine LP" holdings_low="15001" holdings_high="50000" industry="" sector="" subsidiary_of="" /><asset name="Arkansas Public Employees Retirement Sys" holdings_low="15001" holdings_high="50000" industry="" sector="" subsidiary_of="" /><asset name="New York State Thruway Authority Bond" holdings_low="0" holdings_high="4000" industry="" sector="" subsidiary_of="" /><asset name="New York, NY G/O Bond" holdings_low="0" holdings_high="2000" industry="" sector="" subsidiary_of="" /><asset name="New York City Bond" holdings_low="0" holdings_high="2000" industry="" sector="" subsidiary_of="" /><asset name="New York State Dorm Auth Bond" holdings_low="0" holdings_high="2000" industry="" sector="" subsidiary_of="" /><asset name="JPMorgan Chase &amp; Co" holdings_low="0" holdings_high="2000" industry="Commercial Banks" sector="Finance/Insur/RealEst" subsidiary_of="" /><asset name="Triborough Bridge &amp; Tunnel New York Bond" holdings_low="0" holdings_high="2000" industry="" sector="" subsidiary_of="" /><asset name="Liberty Global Inc" holdings_low="0" holdings_high="2000" industry="" sector="" subsidiary_of="" /><asset name="Liberty Media" holdings_low="0" holdings_high="2000" industry="TV/Movies/Music" sector="Communic/Electronics" subsidiary_of="" /><asset name="Magna International" holdings_low="0" holdings_high="1000" industry="Automotive" sector="Transportation" subsidiary_of="" /><asset name="Merrill Lynch" holdings_low="0" holdings_high="1000" industry="Securities & Investment" sector="Finance/Insur/RealEst" subsidiary_of="" /><asset name="Metropolitan New York Trns Auth Bond" holdings_low="0" holdings_high="1000" industry="" sector="" subsidiary_of="" /></assets><transactions><transaction asset_name="Biogen Idec" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Cisco Systems" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="General Electric" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Home Depot" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Merrill Lynch" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Microsoft Corp" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Texas Instruments" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Time Warner" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Walt Disney Co" tx_date="May 16 2007" tx_action="Sold" value_low="250001" value_high="500000" /><transaction asset_name="Bank of America" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Autodesk Inc" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Abbott Laboratories" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Anadarko Petroleum" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Amgen Inc" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="American International Group" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="American Express" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Amazon.com" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Alcoa Inc" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Cablevision Systems" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /><transaction asset_name="Caterpillar Inc" tx_date="May 16 2007" tx_action="Sold" value_low="100001" value_high="250000" /></transactions><positions><position title="Secretary/Treasurer" organization="Clinton Family Foundation" /></positions></member_profile></response>
@@ -0,0 +1,11 @@
1
+ HTTP/1.0 200 OK
2
+ Date: Wed, 04 Feb 2009 15:50:42 GMT
3
+ Server: Apache/2.0.63
4
+ X-Powered-By: PHP/5.2.5
5
+ Vary: Accept-Encoding
6
+ Content-Length: 6547
7
+ Content-Type: text/xml; charset=utf-8
8
+ X-Cache: MISS from www.opensecrets.org
9
+ Connection: close
10
+
11
+ <response><trips member_name="Clinton, Hillary" record_count="23" cid="N00000019" year="2006" origin="Center for Responsive Politics" source="http://opensecrets.org/travel/search_results.php?id=N00000019" last_updated="5/16/08" ><trip traveler="Tamera S. Luzzatto" start_date="01/02/2006" end_date="01/09/2006" destination="Israel" sponsor="Jewish Community Relations Cncl/NY" purpose="To observe security procedures and attend briefings." cost="4049.70" guests=" " relationship=" " /><trip traveler="Melissa Ho" start_date="02/23/2006" end_date="02/25/2006" destination="New York City, New York" sponsor="Stone Barns Center for Food &amp; Agricul" purpose="Strategic planning meetings, constituent meetings" cost="375.54" guests=" " relationship=" " /><trip traveler="Amitabh Desai" start_date="04/07/2006" end_date="04/11/2006" destination="New York, New York" sponsor="Humpty Dumpty Institute" purpose="Participate in Congressional delegation to the United Nations" cost="420.00" guests=" " relationship=" " /><trip traveler="Tamera S. Luzzatto" start_date="04/19/2006" end_date="04/20/2006" destination="Boston, Massachusetts" sponsor="Institute of Politics at Harvard Univers" purpose="Met with leaders of the Kennedy School of Government and give guest lectures at their Institute of Politics" cost="759.77" guests=" " relationship=" " /><trip traveler="Tamera S. Luzzatto" start_date="06/12/2006" end_date="06/12/2006" destination="Binghamton, New York" sponsor="Lockheed Martin" purpose="Staff Senator Clinton&apos;s participation in ribbon-cutting ceremony of new Lockheed Martin facility generating jobs in New York." cost="526.00" guests=" " relationship=" " /><trip traveler="Andrew Shapiro" start_date="06/12/2006" end_date="06/12/2006" destination="Binghamton, New York" sponsor="Lockheed Martin" purpose="Staff Senator Clinton&apos;s participation in ribbon-cutting ceremony of new Lockheed Martin facility generating jobs in New York." cost="526.00" guests=" " relationship=" " /><trip traveler="Hillary Rodham Clinton" start_date="06/12/2006" end_date="06/12/2006" destination="Dulles, Virginia" sponsor="Lockheed Martin" purpose="Speaking engagement/Announcement" cost="385.00" guests=" " relationship=" " /><trip traveler="Huma Abedin" start_date="06/12/2006" end_date="06/12/2006" destination="Dulles, Virginia" sponsor="Lockheed Martin" purpose="Speaking engagement/Announcement" cost="385.00" guests=" " relationship=" " /><trip traveler="Gregory M. Walton" start_date="06/22/2006" end_date="06/25/2006" destination="Long Beach, California" sponsor="Multiple Sponsors" purpose="Attend Annual Conference of the Society for the Psychological Study of Social Issues" cost="1278.39" guests=" " relationship=" " /><trip traveler="Tamera S. Luzzatto" start_date="07/22/2006" end_date="07/24/2006" destination="Denver, Colorado" sponsor="Democratic Leadership Council" purpose="In conjunction with the Senator&apos;s keynote speech at the DLC convention" cost="1868.35" guests=" " relationship=" " /><trip traveler="Laurie Rubiner" start_date="07/22/2006" end_date="07/24/2006" destination="Denver, Colorado" sponsor="Democratic Leadership Council" purpose="In conjunction with the Senator&apos;s keynote speech at the DLC convention" cost="1846.15" guests=" " relationship=" " /><trip traveler="Huma Abedin" start_date="07/23/2006" end_date="07/24/2006" destination="Denver, Colorado" sponsor="Democratic Leadership Council" purpose="In conjunction with the Senator&apos;s keynote speech at the DLC Convention" cost="1133.00" guests=" " relationship=" " /><trip traveler="Hillary Rodham Clinton" start_date="07/23/2006" end_date="07/24/2006" destination="Denver, Colorado" sponsor="Democratic Leadership Council" purpose="Keynote speech at the DLC Convention" cost="1133.00" guests=" " relationship=" " /><trip traveler="Lorraine Voles" start_date="07/31/2006" end_date="07/31/2006" destination="Buffalo, New York" sponsor="Pfizer Inc" purpose="To staff Senator Clinton at &amp;quot;Upstate New York Biotech Day,&amp;quot; an event co-hosted by New Jobs for New York and Pfizer, where Sen. Clinton was a moderator and participant in panels." cost="670.00" guests=" " relationship=" " /><trip traveler="Laurie Rubiner" start_date="08/25/2006" end_date="08/31/2006" destination="Germany" sponsor="American Council on Germany" purpose="To participate in the Young Leader Conference hosted by American" cost="2075.00" guests=" " relationship=" " /><trip traveler="Andrew Shapiro" start_date="09/16/2006" end_date="09/17/2006" destination="Montebello, New York" sponsor="Montebello Jewish Center" purpose="Speech to members of Montebello Jewish Center congregation" cost="188.61" guests=" " relationship=" " /><trip traveler="Huma Abedin" start_date="09/21/2006" end_date="09/21/2006" destination="New York, New York" sponsor="William J Clinton Foundation" purpose="Speech and panel discussion" cost="475.00" guests=" " relationship=" " /><trip traveler="Hillary Rodham Clinton" start_date="09/21/2006" end_date="09/21/2006" destination="New York, New York" sponsor="William J Clinton Foundation" purpose="Speech and panel discussion" cost="900.00" guests=" " relationship=" " /><trip traveler="Ann Gavaghan" start_date="10/26/2006" end_date="10/27/2006" destination="Durham, North Carolina" sponsor="Multiple Sponsors" purpose="To present at and attend the Duke Environmental Law and Policy Forum" cost="700.60" guests=" " relationship=" " /><trip traveler="Kris M. Balderston" start_date="11/30/2006" end_date="" destination="New York, New York" sponsor="Commission on Indpt Colleges &amp; Univs" purpose="To speak at a conference to university presidents about upstate issues and economic development." cost="376.59" guests=" " relationship=" " /><trip traveler="Joshua Williams" start_date="12/18/2006" end_date="12/18/2006" destination="New York, New York" sponsor="Managed Funds Assn" purpose="Hedge Fund site visits - to discuss policy and regulation issues with hedge fund professionals" cost="526.80" guests=" " relationship=" " /><trip traveler="Huma Abedin" start_date="12/30/2005" end_date="01/01/2006" destination="Charleston, South Carolina" sponsor="Renaissance Weekend" purpose="Speaking engagement and seminars" cost="380.00" guests=" " relationship=" " /><trip traveler="Hillary Rodham Clinton" start_date="12/30/2005" end_date="01/01/2006" destination="Charleston, South Carolina" sponsor="Renaissance Weekend" purpose="Speaking engagement and seminars" cost="380.00" guests=" " relationship=" " /></trips></response>