shout-mouth-communicator 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. data/.gitignore +6 -0
  2. data/.rvmrc +1 -0
  3. data/Gemfile +4 -0
  4. data/README.rdoc +7 -0
  5. data/Rakefile +2 -0
  6. data/lib/shout-mouth-communicator/shout-mouth-communicator.rb +241 -0
  7. data/lib/shout-mouth-communicator/version.rb +7 -0
  8. data/lib/shout-mouth-communicator.rb +1 -0
  9. data/shout-mouth-communicator.gemspec +25 -0
  10. data/specs/.gitkeep +0 -0
  11. data/specs/fakes/xmlrpc_server.rb +71 -0
  12. data/specs/fakes/xmlrpc_server_responses/add_user.xml +10 -0
  13. data/specs/fakes/xmlrpc_server_responses/bad_authentication.xml +30 -0
  14. data/specs/fakes/xmlrpc_server_responses/delete_page.xml +10 -0
  15. data/specs/fakes/xmlrpc_server_responses/delete_post.xml +10 -0
  16. data/specs/fakes/xmlrpc_server_responses/delete_user.xml +10 -0
  17. data/specs/fakes/xmlrpc_server_responses/edit_category.xml +10 -0
  18. data/specs/fakes/xmlrpc_server_responses/edit_comment.xml +10 -0
  19. data/specs/fakes/xmlrpc_server_responses/edit_page.xml +10 -0
  20. data/specs/fakes/xmlrpc_server_responses/edit_post.xml +11 -0
  21. data/specs/fakes/xmlrpc_server_responses/edit_tag.xml +10 -0
  22. data/specs/fakes/xmlrpc_server_responses/edit_user.xml +10 -0
  23. data/specs/fakes/xmlrpc_server_responses/get_authors.xml +41 -0
  24. data/specs/fakes/xmlrpc_server_responses/get_categories.xml +197 -0
  25. data/specs/fakes/xmlrpc_server_responses/get_comments.xml +101 -0
  26. data/specs/fakes/xmlrpc_server_responses/get_comments_all.xml +189 -0
  27. data/specs/fakes/xmlrpc_server_responses/get_comments_spam.xml +12 -0
  28. data/specs/fakes/xmlrpc_server_responses/get_options.xml +573 -0
  29. data/specs/fakes/xmlrpc_server_responses/get_page.xml +182 -0
  30. data/specs/fakes/xmlrpc_server_responses/get_pages.xml +188 -0
  31. data/specs/fakes/xmlrpc_server_responses/get_post.xml +193 -0
  32. data/specs/fakes/xmlrpc_server_responses/get_recent_posts.xml +385 -0
  33. data/specs/fakes/xmlrpc_server_responses/get_tags.xml +173 -0
  34. data/specs/fakes/xmlrpc_server_responses/get_user_info.xml +41 -0
  35. data/specs/fakes/xmlrpc_server_responses/new_category.xml +10 -0
  36. data/specs/fakes/xmlrpc_server_responses/new_media_object.xml +23 -0
  37. data/specs/fakes/xmlrpc_server_responses/new_page.xml +10 -0
  38. data/specs/fakes/xmlrpc_server_responses/new_post.xml +10 -0
  39. data/specs/fakes/xmlrpc_server_responses/set_options.xml +36 -0
  40. data/specs/fakes/xmlrpc_server_responses/validation_error.xml +30 -0
  41. data/specs/helpers/spec_helper.rb +9 -0
  42. data/specs/shout_mout_client_specification.rb +172 -0
  43. metadata +161 -0
@@ -0,0 +1,385 @@
1
+ <?xml version="1.0"?>
2
+ <methodResponse>
3
+ <params>
4
+ <param>
5
+ <value>
6
+ <array>
7
+ <data>
8
+ <value>
9
+ <struct>
10
+ <member>
11
+ <name>dateCreated</name>
12
+ <value>
13
+ <dateTime.iso8601>20110423T20:05:04</dateTime.iso8601>
14
+ </value>
15
+ </member>
16
+ <member>
17
+ <name>userid</name>
18
+ <value>
19
+ <string>1</string>
20
+ </value>
21
+ </member>
22
+ <member>
23
+ <name>postid</name>
24
+ <value>
25
+ <string>1</string>
26
+ </value>
27
+ </member>
28
+ <member>
29
+ <name>description</name>
30
+ <value>
31
+ <string>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin malesuada imperdiet est convallis cursus. Suspendisse potenti. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed vulputate sagittis pharetra. In luctus, odio sed commodo cursus, quam eros bibendum mi, at laoreet leo sapien eget enim. Nunc iaculis augue in arcu consequat pellentesque. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Proin eu ante id tortor congue lacinia eget a quam. In tristique dui ut metus tempor dignissim sodales arcu tincidunt. Praesent volutpat venenatis neque, ut cursus velit cursus et. Proin varius lorem ut velit dignissim vulputate. Curabitur pellentesque interdum tincidunt. Etiam blandit feugiat erat, in elementum nisi ornare a. Etiam diam lectus, sagittis et hendrerit sed, feugiat vel purus. Mauris pharetra congue risus, sit amet pulvinar massa tempus rutrum. Proin sit amet semper ipsum. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</string>
32
+ </value>
33
+ </member>
34
+ <member>
35
+ <name>title</name>
36
+ <value>
37
+ <string>This is how we roll</string>
38
+ </value>
39
+ </member>
40
+ <member>
41
+ <name>link</name>
42
+ <value>
43
+ <string>http://shout_mouth.dev/post/2011/04/23/this-is-how-we-roll</string>
44
+ </value>
45
+ </member>
46
+ <member>
47
+ <name>permaLink</name>
48
+ <value>
49
+ <string>http://shout_mouth.dev/post/2011/04/23/this-is-how-we-roll</string>
50
+ </value>
51
+ </member>
52
+ <member>
53
+ <name>categories</name>
54
+ <value>
55
+ <array>
56
+ <data>
57
+ <value>
58
+ <string>category1</string>
59
+ </value>
60
+ <value>
61
+ <string>category2</string>
62
+ </value>
63
+ </data>
64
+ </array>
65
+ </value>
66
+ </member>
67
+ <member>
68
+ <name>mt_excerpt</name>
69
+ <value>
70
+ <string/>
71
+ </value>
72
+ </member>
73
+ <member>
74
+ <name>mt_text_more</name>
75
+ <value>
76
+ <string/>
77
+ </value>
78
+ </member>
79
+ <member>
80
+ <name>mt_allow_comments</name>
81
+ <value>
82
+ <int>1</int>
83
+ </value>
84
+ </member>
85
+ <member>
86
+ <name>mt_allow_pings</name>
87
+ <value>
88
+ <int>0</int>
89
+ </value>
90
+ </member>
91
+ <member>
92
+ <name>mt_keywords</name>
93
+ <value>
94
+ <string>tag1,tag2</string>
95
+ </value>
96
+ </member>
97
+ <member>
98
+ <name>wp_slug</name>
99
+ <value>
100
+ <string>this-is-how-we-roll</string>
101
+ </value>
102
+ </member>
103
+ <member>
104
+ <name>wp_password</name>
105
+ <value>
106
+ <string/>
107
+ </value>
108
+ </member>
109
+ <member>
110
+ <name>wp_author_id</name>
111
+ <value>
112
+ <string>1</string>
113
+ </value>
114
+ </member>
115
+ <member>
116
+ <name>wp_author_display_name</name>
117
+ <value>
118
+ <string>Daniel Watson</string>
119
+ </value>
120
+ </member>
121
+ <member>
122
+ <name>date_created_gmt</name>
123
+ <value>
124
+ <dateTime.iso8601>20110423T20:05:04</dateTime.iso8601>
125
+ </value>
126
+ </member>
127
+ <member>
128
+ <name>post_status</name>
129
+ <value>
130
+ <string>publish</string>
131
+ </value>
132
+ </member>
133
+ <member>
134
+ <name>custom_fields</name>
135
+ <value>
136
+ <array>
137
+ <data>
138
+ <value>
139
+ <struct>
140
+ <member>
141
+ <name>id</name>
142
+ <value>
143
+ <string>2</string>
144
+ </value>
145
+ </member>
146
+ <member>
147
+ <name>key</name>
148
+ <value>
149
+ <string>_edit_last</string>
150
+ </value>
151
+ </member>
152
+ <member>
153
+ <name>value</name>
154
+ <value>
155
+ <string>1</string>
156
+ </value>
157
+ </member>
158
+ </struct>
159
+ </value>
160
+ <value>
161
+ <struct>
162
+ <member>
163
+ <name>id</name>
164
+ <value>
165
+ <string>1</string>
166
+ </value>
167
+ </member>
168
+ <member>
169
+ <name>key</name>
170
+ <value>
171
+ <string>_edit_lock</string>
172
+ </value>
173
+ </member>
174
+ <member>
175
+ <name>value</name>
176
+ <value>
177
+ <string>#1299280582:1</string>
178
+ </value>
179
+ </member>
180
+ </struct>
181
+ </value>
182
+ </data>
183
+ </array>
184
+ </value>
185
+ </member>
186
+ <member>
187
+ <name>wp_post_format</name>
188
+ <value>
189
+ <string>standard</string>
190
+ </value>
191
+ </member>
192
+ </struct>
193
+ </value>
194
+ <value>
195
+ <struct>
196
+ <member>
197
+ <name>dateCreated</name>
198
+ <value>
199
+ <dateTime.iso8601>20110423T20:05:04</dateTime.iso8601>
200
+ </value>
201
+ </member>
202
+ <member>
203
+ <name>userid</name>
204
+ <value>
205
+ <string>1</string>
206
+ </value>
207
+ </member>
208
+ <member>
209
+ <name>postid</name>
210
+ <value>
211
+ <string>2</string>
212
+ </value>
213
+ </member>
214
+ <member>
215
+ <name>description</name>
216
+ <value>
217
+ <string>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin malesuada imperdiet est convallis cursus. Suspendisse potenti. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Sed vulputate sagittis pharetra. In luctus, odio sed commodo cursus, quam eros bibendum mi, at laoreet leo sapien eget enim. Nunc iaculis augue in arcu consequat pellentesque. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Proin eu ante id tortor congue lacinia eget a quam. In tristique dui ut metus tempor dignissim sodales arcu tincidunt. Praesent volutpat venenatis neque, ut cursus velit cursus et. Proin varius lorem ut velit dignissim vulputate. Curabitur pellentesque interdum tincidunt. Etiam blandit feugiat erat, in elementum nisi ornare a. Etiam diam lectus, sagittis et hendrerit sed, feugiat vel purus. Mauris pharetra congue risus, sit amet pulvinar massa tempus rutrum. Proin sit amet semper ipsum. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</string>
218
+ </value>
219
+ </member>
220
+ <member>
221
+ <name>title</name>
222
+ <value>
223
+ <string>New Post 1</string>
224
+ </value>
225
+ </member>
226
+ <member>
227
+ <name>link</name>
228
+ <value>
229
+ <string>http://shout_mouth.dev/post/2011/04/23/new-post-1</string>
230
+ </value>
231
+ </member>
232
+ <member>
233
+ <name>permaLink</name>
234
+ <value>
235
+ <string>http://shout_mouth.dev/post/2011/04/23/new-post-1</string>
236
+ </value>
237
+ </member>
238
+ <member>
239
+ <name>categories</name>
240
+ <value>
241
+ <array>
242
+ <data>
243
+ <value>
244
+ <string>category1</string>
245
+ </value>
246
+ <value>
247
+ <string>category2</string>
248
+ </value>
249
+ </data>
250
+ </array>
251
+ </value>
252
+ </member>
253
+ <member>
254
+ <name>mt_excerpt</name>
255
+ <value>
256
+ <string/>
257
+ </value>
258
+ </member>
259
+ <member>
260
+ <name>mt_text_more</name>
261
+ <value>
262
+ <string/>
263
+ </value>
264
+ </member>
265
+ <member>
266
+ <name>mt_allow_comments</name>
267
+ <value>
268
+ <int>1</int>
269
+ </value>
270
+ </member>
271
+ <member>
272
+ <name>mt_allow_pings</name>
273
+ <value>
274
+ <int>0</int>
275
+ </value>
276
+ </member>
277
+ <member>
278
+ <name>mt_keywords</name>
279
+ <value>
280
+ <string>tag1,tag2</string>
281
+ </value>
282
+ </member>
283
+ <member>
284
+ <name>wp_slug</name>
285
+ <value>
286
+ <string>new-post-1</string>
287
+ </value>
288
+ </member>
289
+ <member>
290
+ <name>wp_password</name>
291
+ <value>
292
+ <string/>
293
+ </value>
294
+ </member>
295
+ <member>
296
+ <name>wp_author_id</name>
297
+ <value>
298
+ <string>1</string>
299
+ </value>
300
+ </member>
301
+ <member>
302
+ <name>wp_author_display_name</name>
303
+ <value>
304
+ <string>Daniel Watson</string>
305
+ </value>
306
+ </member>
307
+ <member>
308
+ <name>date_created_gmt</name>
309
+ <value>
310
+ <dateTime.iso8601>20110423T20:05:04</dateTime.iso8601>
311
+ </value>
312
+ </member>
313
+ <member>
314
+ <name>post_status</name>
315
+ <value>
316
+ <string>publish</string>
317
+ </value>
318
+ </member>
319
+ <member>
320
+ <name>custom_fields</name>
321
+ <value>
322
+ <array>
323
+ <data>
324
+ <value>
325
+ <struct>
326
+ <member>
327
+ <name>id</name>
328
+ <value>
329
+ <string>2</string>
330
+ </value>
331
+ </member>
332
+ <member>
333
+ <name>key</name>
334
+ <value>
335
+ <string>_edit_last</string>
336
+ </value>
337
+ </member>
338
+ <member>
339
+ <name>value</name>
340
+ <value>
341
+ <string>1</string>
342
+ </value>
343
+ </member>
344
+ </struct>
345
+ </value>
346
+ <value>
347
+ <struct>
348
+ <member>
349
+ <name>id</name>
350
+ <value>
351
+ <string>1</string>
352
+ </value>
353
+ </member>
354
+ <member>
355
+ <name>key</name>
356
+ <value>
357
+ <string>_edit_lock</string>
358
+ </value>
359
+ </member>
360
+ <member>
361
+ <name>value</name>
362
+ <value>
363
+ <string>#1299280582:1</string>
364
+ </value>
365
+ </member>
366
+ </struct>
367
+ </value>
368
+ </data>
369
+ </array>
370
+ </value>
371
+ </member>
372
+ <member>
373
+ <name>wp_post_format</name>
374
+ <value>
375
+ <string>standard</string>
376
+ </value>
377
+ </member>
378
+ </struct>
379
+ </value>
380
+ </data>
381
+ </array>
382
+ </value>
383
+ </param>
384
+ </params>
385
+ </methodResponse>
@@ -0,0 +1,173 @@
1
+ <?xml version="1.0"?>
2
+ <methodResponse>
3
+ <params>
4
+ <param>
5
+ <value>
6
+ <array>
7
+ <data>
8
+ <value>
9
+ <struct>
10
+ <member>
11
+ <name>tag_id</name>
12
+ <value>
13
+ <string>1</string>
14
+ </value>
15
+ </member>
16
+ <member>
17
+ <name>name</name>
18
+ <value>
19
+ <string>tag1</string>
20
+ </value>
21
+ </member>
22
+ <member>
23
+ <name>count</name>
24
+ <value>
25
+ <string>2</string>
26
+ </value>
27
+ </member>
28
+ <member>
29
+ <name>slug</name>
30
+ <value>
31
+ <string>tag1</string>
32
+ </value>
33
+ </member>
34
+ <member>
35
+ <name>html_url</name>
36
+ <value>
37
+ <string>http://shout_mouth.dev/tag/tag1</string>
38
+ </value>
39
+ </member>
40
+ <member>
41
+ <name>rss_url</name>
42
+ <value>
43
+ <string/>
44
+ </value>
45
+ </member>
46
+ </struct>
47
+ </value>
48
+ <value>
49
+ <struct>
50
+ <member>
51
+ <name>tag_id</name>
52
+ <value>
53
+ <string>2</string>
54
+ </value>
55
+ </member>
56
+ <member>
57
+ <name>name</name>
58
+ <value>
59
+ <string>tag2</string>
60
+ </value>
61
+ </member>
62
+ <member>
63
+ <name>count</name>
64
+ <value>
65
+ <string>2</string>
66
+ </value>
67
+ </member>
68
+ <member>
69
+ <name>slug</name>
70
+ <value>
71
+ <string>tag2</string>
72
+ </value>
73
+ </member>
74
+ <member>
75
+ <name>html_url</name>
76
+ <value>
77
+ <string>http://shout_mouth.dev/tag/tag2</string>
78
+ </value>
79
+ </member>
80
+ <member>
81
+ <name>rss_url</name>
82
+ <value>
83
+ <string/>
84
+ </value>
85
+ </member>
86
+ </struct>
87
+ </value>
88
+ <value>
89
+ <struct>
90
+ <member>
91
+ <name>tag_id</name>
92
+ <value>
93
+ <string>3</string>
94
+ </value>
95
+ </member>
96
+ <member>
97
+ <name>name</name>
98
+ <value>
99
+ <string>tag3</string>
100
+ </value>
101
+ </member>
102
+ <member>
103
+ <name>count</name>
104
+ <value>
105
+ <string>1</string>
106
+ </value>
107
+ </member>
108
+ <member>
109
+ <name>slug</name>
110
+ <value>
111
+ <string>tag3</string>
112
+ </value>
113
+ </member>
114
+ <member>
115
+ <name>html_url</name>
116
+ <value>
117
+ <string>http://shout_mouth.dev/tag/tag3</string>
118
+ </value>
119
+ </member>
120
+ <member>
121
+ <name>rss_url</name>
122
+ <value>
123
+ <string/>
124
+ </value>
125
+ </member>
126
+ </struct>
127
+ </value>
128
+ <value>
129
+ <struct>
130
+ <member>
131
+ <name>tag_id</name>
132
+ <value>
133
+ <string>4</string>
134
+ </value>
135
+ </member>
136
+ <member>
137
+ <name>name</name>
138
+ <value>
139
+ <string>tag4</string>
140
+ </value>
141
+ </member>
142
+ <member>
143
+ <name>count</name>
144
+ <value>
145
+ <string>1</string>
146
+ </value>
147
+ </member>
148
+ <member>
149
+ <name>slug</name>
150
+ <value>
151
+ <string>tag4</string>
152
+ </value>
153
+ </member>
154
+ <member>
155
+ <name>html_url</name>
156
+ <value>
157
+ <string>http://shout_mouth.dev/tag/tag4</string>
158
+ </value>
159
+ </member>
160
+ <member>
161
+ <name>rss_url</name>
162
+ <value>
163
+ <string/>
164
+ </value>
165
+ </member>
166
+ </struct>
167
+ </value>
168
+ </data>
169
+ </array>
170
+ </value>
171
+ </param>
172
+ </params>
173
+ </methodResponse>
@@ -0,0 +1,41 @@
1
+ <?xml version="1.0"?>
2
+ <methodResponse>
3
+ <params>
4
+ <param>
5
+ <value>
6
+ <struct>
7
+ <member>
8
+ <name>nickname</name>
9
+ <value>
10
+ <string>Daniel Watson</string>
11
+ </value>
12
+ </member>
13
+ <member>
14
+ <name>userid</name>
15
+ <value>
16
+ <string>1</string>
17
+ </value>
18
+ </member>
19
+ <member>
20
+ <name>url</name>
21
+ <value>
22
+ <string>http://shout_mouth.dev</string>
23
+ </value>
24
+ </member>
25
+ <member>
26
+ <name>lastname</name>
27
+ <value>
28
+ <string>Watson</string>
29
+ </value>
30
+ </member>
31
+ <member>
32
+ <name>firstname</name>
33
+ <value>
34
+ <string>Daniel</string>
35
+ </value>
36
+ </member>
37
+ </struct>
38
+ </value>
39
+ </param>
40
+ </params>
41
+ </methodResponse>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0"?>
2
+ <methodResponse>
3
+ <params>
4
+ <param>
5
+ <value>
6
+ <int>5</int>
7
+ </value>
8
+ </param>
9
+ </params>
10
+ </methodResponse>
@@ -0,0 +1,23 @@
1
+ <?xml version="1.0"?>
2
+ <methodResponse>
3
+ <params>
4
+ <param>
5
+ <value>
6
+ <struct>
7
+ <member>
8
+ <name>file</name>
9
+ <value>
10
+ <string>Austria.gif</string>
11
+ </value>
12
+ </member>
13
+ <member>
14
+ <name>url</name>
15
+ <value>
16
+ <string>http://0.0.0.0:4000/uploads/Austria.gif</string>
17
+ </value>
18
+ </member>
19
+ </struct>
20
+ </value>
21
+ </param>
22
+ </params>
23
+ </methodResponse>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0"?>
2
+ <methodResponse>
3
+ <params>
4
+ <param>
5
+ <value>
6
+ <string>10</string>
7
+ </value>
8
+ </param>
9
+ </params>
10
+ </methodResponse>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0"?>
2
+ <methodResponse>
3
+ <params>
4
+ <param>
5
+ <value>
6
+ <int>4</int>
7
+ </value>
8
+ </param>
9
+ </params>
10
+ </methodResponse>