redditkit 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (180) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.md +22 -0
  3. data/README.md +155 -0
  4. data/Rakefile +8 -0
  5. data/lib/redditkit.rb +26 -0
  6. data/lib/redditkit/base.rb +60 -0
  7. data/lib/redditkit/client.rb +142 -0
  8. data/lib/redditkit/client/account.rb +73 -0
  9. data/lib/redditkit/client/apps.rb +63 -0
  10. data/lib/redditkit/client/captcha.rb +36 -0
  11. data/lib/redditkit/client/comments.rb +54 -0
  12. data/lib/redditkit/client/flair.rb +148 -0
  13. data/lib/redditkit/client/links.rb +134 -0
  14. data/lib/redditkit/client/miscellaneous.rb +50 -0
  15. data/lib/redditkit/client/moderation.rb +179 -0
  16. data/lib/redditkit/client/multireddits.rb +207 -0
  17. data/lib/redditkit/client/private_messages.rb +74 -0
  18. data/lib/redditkit/client/search.rb +25 -0
  19. data/lib/redditkit/client/subreddits.rb +120 -0
  20. data/lib/redditkit/client/users.rb +109 -0
  21. data/lib/redditkit/client/utilities.rb +137 -0
  22. data/lib/redditkit/client/voting.rb +41 -0
  23. data/lib/redditkit/client/wiki.rb +83 -0
  24. data/lib/redditkit/comment.rb +54 -0
  25. data/lib/redditkit/creatable.rb +17 -0
  26. data/lib/redditkit/error.rb +111 -0
  27. data/lib/redditkit/link.rb +140 -0
  28. data/lib/redditkit/moderator_action.rb +19 -0
  29. data/lib/redditkit/multireddit.rb +32 -0
  30. data/lib/redditkit/multireddit_description.rb +14 -0
  31. data/lib/redditkit/paginated_response.rb +22 -0
  32. data/lib/redditkit/private_message.rb +27 -0
  33. data/lib/redditkit/response/parse_json.rb +29 -0
  34. data/lib/redditkit/response/raise_error.rb +21 -0
  35. data/lib/redditkit/subreddit.rb +86 -0
  36. data/lib/redditkit/thing.rb +20 -0
  37. data/lib/redditkit/user.rb +30 -0
  38. data/lib/redditkit/version.rb +19 -0
  39. data/lib/redditkit/votable.rb +37 -0
  40. data/redditkit.gemspec +25 -0
  41. data/spec/cassettes/RedditKit_Client/should_raise_an_error_with_invalid_credentials.yml +39 -0
  42. data/spec/cassettes/RedditKit_Client_Account/_sign_in/signs_the_user_in.yml +132 -0
  43. data/spec/cassettes/RedditKit_Client_Account/_update_session/updates_the_current_session.yml +133 -0
  44. data/spec/cassettes/RedditKit_Client_Captcha/_captcha_url/returns_a_CAPTCHA_url_from_an_identifier.yml +38 -0
  45. data/spec/cassettes/RedditKit_Client_Captcha/_needs_captcha_/checks_if_the_current_account_needs_a_CAPTCHA.yml +44 -0
  46. data/spec/cassettes/RedditKit_Client_Captcha/_new_captcha_identifier/returns_a_new_CAPTCHA_identifier.yml +38 -0
  47. data/spec/cassettes/RedditKit_Client_Comments/_comment/requests_the_correct_resource.yml +47 -0
  48. data/spec/cassettes/RedditKit_Client_Comments/_comments/with_a_RedditKit_Link/returns_comments_on_a_link.yml +140 -0
  49. data/spec/cassettes/RedditKit_Client_Comments/_comments/with_a_link_identifier/returns_comments_on_a_link.yml +89 -0
  50. data/spec/cassettes/RedditKit_Client_Comments/_submit_comment/requests_the_correct_resource.yml +313 -0
  51. data/spec/cassettes/RedditKit_Client_Flair/_apply_flair_template/clears_flair_templates.yml +52 -0
  52. data/spec/cassettes/RedditKit_Client_Flair/_clear_flair_templates/clears_flair_templates.yml +49 -0
  53. data/spec/cassettes/RedditKit_Client_Flair/_create_flair_template/creates_a_flair_template.yml +46 -0
  54. data/spec/cassettes/RedditKit_Client_Flair/_create_flair_template/raises_InvalidClassName.yml +46 -0
  55. data/spec/cassettes/RedditKit_Client_Flair/_create_flair_template/raises_TooManyClassNames.yml +47 -0
  56. data/spec/cassettes/RedditKit_Client_Flair/_delete_user_flair/requests_the_correct_resource.yml +60 -0
  57. data/spec/cassettes/RedditKit_Client_Flair/_flair_list/returns_the_list_of_flair.yml +44 -0
  58. data/spec/cassettes/RedditKit_Client_Flair/_set_flair/requests_the_correct_resource.yml +49 -0
  59. data/spec/cassettes/RedditKit_Client_Flair/_set_flair_options/sets_flair_options.yml +49 -0
  60. data/spec/cassettes/RedditKit_Client_Flair/_set_flair_with_csv/requests_the_correct_resource.yml +51 -0
  61. data/spec/cassettes/RedditKit_Client_Flair/_toggle_flair/requests_the_correct_resource.yml +49 -0
  62. data/spec/cassettes/RedditKit_Client_Links/_front_page/requests_the_correct_category.yml +498 -0
  63. data/spec/cassettes/RedditKit_Client_Links/_front_page/requests_the_correct_resource.yml +603 -0
  64. data/spec/cassettes/RedditKit_Client_Links/_hide/requests_the_correct_resource.yml +46 -0
  65. data/spec/cassettes/RedditKit_Client_Links/_link/returns_a_link.yml +55 -0
  66. data/spec/cassettes/RedditKit_Client_Links/_links/contains_pagination_information.yml +402 -0
  67. data/spec/cassettes/RedditKit_Client_Links/_links/requests_a_certain_number_of_links.yml +186 -0
  68. data/spec/cassettes/RedditKit_Client_Links/_links/requests_front_page_links_if_no_subreddit_is_present.yml +603 -0
  69. data/spec/cassettes/RedditKit_Client_Links/_links/requests_links_with_the_correct_time_frame.yml +375 -0
  70. data/spec/cassettes/RedditKit_Client_Links/_links/requests_the_correct_subreddit_and_category.yml +402 -0
  71. data/spec/cassettes/RedditKit_Client_Links/_links_with_domain/returns_links_with_a_specific_domain.yml +99 -0
  72. data/spec/cassettes/RedditKit_Client_Links/_mark_nsfw/requests_the_correct_resource.yml +46 -0
  73. data/spec/cassettes/RedditKit_Client_Links/_random_link/returns_a_random_link.yml +91 -0
  74. data/spec/cassettes/RedditKit_Client_Links/_submit/raises_RedditKit_InvalidCaptcha_if_no_CAPTCHA_is_filled_out.yml +54 -0
  75. data/spec/cassettes/RedditKit_Client_Links/_unhide/requests_the_correct_resource.yml +46 -0
  76. data/spec/cassettes/RedditKit_Client_Links/_unmark_nsfw/requests_the_correct_resource.yml +46 -0
  77. data/spec/cassettes/RedditKit_Client_Miscellaneous/_delete/requests_the_correct_resource.yml +46 -0
  78. data/spec/cassettes/RedditKit_Client_Miscellaneous/_edit/requests_the_correct_resource.yml +52 -0
  79. data/spec/cassettes/RedditKit_Client_Miscellaneous/_save/saves_an_object.yml +46 -0
  80. data/spec/cassettes/RedditKit_Client_Miscellaneous/_unsave/unsaves_an_object.yml +89 -0
  81. data/spec/cassettes/RedditKit_Client_Moderation/_accept_moderator_invitation/requests_the_correct_resource.yml +53 -0
  82. data/spec/cassettes/RedditKit_Client_Moderation/_ban/requests_the_correct_resource.yml +103 -0
  83. data/spec/cassettes/RedditKit_Client_Moderation/_contributors_to_subreddit/requests_the_correct_resource.yml +47 -0
  84. data/spec/cassettes/RedditKit_Client_Moderation/_ignore_reports/requests_the_correct_resource.yml +46 -0
  85. data/spec/cassettes/RedditKit_Client_Moderation/_moderation_log/returns_RedditKit_ModeratorAction_objects.yml +153 -0
  86. data/spec/cassettes/RedditKit_Client_Moderation/_moderators_of_subreddit/requests_the_correct_resource.yml +48 -0
  87. data/spec/cassettes/RedditKit_Client_Moderation/_reset_subreddit_header/requests_the_correct_resource.yml +55 -0
  88. data/spec/cassettes/RedditKit_Client_Moderation/_set_contest_mode/requests_the_correct_resource.yml +46 -0
  89. data/spec/cassettes/RedditKit_Client_Moderation/_set_sticky_post/requests_the_correct_resource.yml +46 -0
  90. data/spec/cassettes/RedditKit_Client_Moderation/_unban/requests_the_correct_resource.yml +54 -0
  91. data/spec/cassettes/RedditKit_Client_Moderation/_unignore_reports/requests_the_correct_resource.yml +46 -0
  92. data/spec/cassettes/RedditKit_Client_Multireddits/_add_subreddit_to_multireddit/adds_a_subreddit_to_a_multireddit.yml +177 -0
  93. data/spec/cassettes/RedditKit_Client_Multireddits/_create_multireddit/creates_a_multireddit.yml +137 -0
  94. data/spec/cassettes/RedditKit_Client_Multireddits/_create_multireddit/raises_RedditKit_Conflict_when_using_an_existing_name.yml +133 -0
  95. data/spec/cassettes/RedditKit_Client_Multireddits/_delete_multireddit/deletes_a_multireddit.yml +134 -0
  96. data/spec/cassettes/RedditKit_Client_Multireddits/_multireddit/with_a_path/returns_a_multireddit.yml +39 -0
  97. data/spec/cassettes/RedditKit_Client_Multireddits/_multireddit/without_a_path/returns_a_multireddit.yml +39 -0
  98. data/spec/cassettes/RedditKit_Client_Multireddits/_multireddit_description/with_a_multireddit/returns_a_multireddit_description.yml +81 -0
  99. data/spec/cassettes/RedditKit_Client_Multireddits/_multireddit_description/with_a_username_and_multireddit_name/returns_a_multireddit_description.yml +45 -0
  100. data/spec/cassettes/RedditKit_Client_Multireddits/_my_multireddits/return_s_the_user_s_multireddits.yml +47 -0
  101. data/spec/cassettes/RedditKit_Client_Multireddits/_remove_subreddit_from_multireddit/removes_a_subreddit_from_a_multireddit.yml +175 -0
  102. data/spec/cassettes/RedditKit_Client_Multireddits/_rename_multireddit/renames_a_multireddit.yml +134 -0
  103. data/spec/cassettes/RedditKit_Client_Multireddits/_set_multireddit_description/returns_a_multireddit_description.yml +48 -0
  104. data/spec/cassettes/RedditKit_Client_Multireddits/_update_multireddit/updates_a_multireddit.yml +184 -0
  105. data/spec/cassettes/RedditKit_Client_PrivateMessages/_block_author_of_message/requests_the_correct_resource.yml +46 -0
  106. data/spec/cassettes/RedditKit_Client_PrivateMessages/_mark_as_read/requests_the_correct_resource.yml +51 -0
  107. data/spec/cassettes/RedditKit_Client_PrivateMessages/_mark_as_unread/requests_the_correct_resource.yml +51 -0
  108. data/spec/cassettes/RedditKit_Client_PrivateMessages/_messages/requests_the_correct_resource.yml +187 -0
  109. data/spec/cassettes/RedditKit_Client_PrivateMessages/_unblock/requests_the_correct_resource.yml +46 -0
  110. data/spec/cassettes/RedditKit_Client_Search/_search/restricts_searches_to_a_specific_subreddit.yml +878 -0
  111. data/spec/cassettes/RedditKit_Client_Search/_search/returns_a_specific_number_of_results.yml +130 -0
  112. data/spec/cassettes/RedditKit_Client_Search/_search/returns_search_results.yml +844 -0
  113. data/spec/cassettes/RedditKit_Client_Subreddits/_random_subreddit/returns_a_random_subreddit.yml +181 -0
  114. data/spec/cassettes/RedditKit_Client_Subreddits/_recommended_subreddits/returns_subreddit_names.yml +37 -0
  115. data/spec/cassettes/RedditKit_Client_Subreddits/_search_subreddits_by_name/returns_subreddit_names.yml +875 -0
  116. data/spec/cassettes/RedditKit_Client_Subreddits/_subreddit/returns_a_specified_subreddit.yml +100 -0
  117. data/spec/cassettes/RedditKit_Client_Subreddits/_subreddits/returns_a_specified_number_of_subreddits.yml +505 -0
  118. data/spec/cassettes/RedditKit_Client_Subreddits/_subreddits/returns_subreddits_from_a_specific_category.yml +510 -0
  119. data/spec/cassettes/RedditKit_Client_Subreddits/_subreddits_by_topic/returns_subreddit_names.yml +41 -0
  120. data/spec/cassettes/RedditKit_Client_Subreddits/_subscribe/requests_the_correct_resource.yml +46 -0
  121. data/spec/cassettes/RedditKit_Client_Subreddits/_subscribed_subreddits/returns_a_specified_number_of_subreddits.yml +415 -0
  122. data/spec/cassettes/RedditKit_Client_Subreddits/_subscribed_subreddits/returns_subreddits_from_a_specific_category.yml +58 -0
  123. data/spec/cassettes/RedditKit_Client_Subreddits/_subscribed_subreddits/returns_the_user_s_subscribed_subreddits.yml +3469 -0
  124. data/spec/cassettes/RedditKit_Client_Subreddits/_unsubscribe/requests_the_correct_resource.yml +46 -0
  125. data/spec/cassettes/RedditKit_Client_Users/_friends/returns_the_user_s_friends.yml +48 -0
  126. data/spec/cassettes/RedditKit_Client_Users/_my_content/returns_the_user_s_content.yml +60 -0
  127. data/spec/cassettes/RedditKit_Client_Users/_user/requests_the_correct_resource.yml +48 -0
  128. data/spec/cassettes/RedditKit_Client_Users/_user/returns_a_specified_user.yml +48 -0
  129. data/spec/cassettes/RedditKit_Client_Users/_user/returns_the_authenticated_user.yml +48 -0
  130. data/spec/cassettes/RedditKit_Client_Users/_user_content/returns_the_user_s_content.yml +41 -0
  131. data/spec/cassettes/RedditKit_Client_Users/_username_available_/returns_false_for_an_unavailable_username.yml +36 -0
  132. data/spec/cassettes/RedditKit_Client_Users/_username_available_/returns_true_for_an_available_username.yml +36 -0
  133. data/spec/cassettes/RedditKit_Client_Voting/_downvote/with_a_comment_full_name_passed/downvotes_the_comment.yml +100 -0
  134. data/spec/cassettes/RedditKit_Client_Voting/_downvote/with_a_comment_passed/downvotes_the_comment.yml +154 -0
  135. data/spec/cassettes/RedditKit_Client_Voting/_downvote/with_a_link_full_name_passed/downvotes_the_link.yml +106 -0
  136. data/spec/cassettes/RedditKit_Client_Voting/_downvote/with_a_link_passed/downvotes_the_link.yml +166 -0
  137. data/spec/cassettes/RedditKit_Client_Voting/_upvote/with_a_comment_full_name_passed/upvotes_the_comment.yml +100 -0
  138. data/spec/cassettes/RedditKit_Client_Voting/_upvote/with_a_comment_passed/upvotes_the_comment.yml +154 -0
  139. data/spec/cassettes/RedditKit_Client_Voting/_upvote/with_a_link_full_name_passed/upvotes_the_link.yml +106 -0
  140. data/spec/cassettes/RedditKit_Client_Voting/_upvote/with_a_link_passed/upvotes_the_link.yml +166 -0
  141. data/spec/cassettes/RedditKit_Client_Voting/_withdraw_vote/with_a_comment_full_name_passed/withdraws_the_vote_on_the_comment.yml +154 -0
  142. data/spec/cassettes/RedditKit_Client_Voting/_withdraw_vote/with_a_comment_passed/withdraws_the_vote_on_the_comment.yml +208 -0
  143. data/spec/cassettes/RedditKit_Client_Voting/_withdraw_vote/with_a_link_full_name_passed/withdraws_the_vote_on_the_link.yml +166 -0
  144. data/spec/cassettes/RedditKit_Client_Voting/_withdraw_vote/with_a_link_passed/withdraws_the_vote_on_the_link.yml +226 -0
  145. data/spec/cassettes/RedditKit_Client_Wiki/_add_wiki_editor/requests_the_correct_resource.yml +46 -0
  146. data/spec/cassettes/RedditKit_Client_Wiki/_edit_wiki_page/requests_the_correct_resource.yml +48 -0
  147. data/spec/cassettes/RedditKit_Client_Wiki/_hide_wiki_revision/requests_the_correct_resource.yml +46 -0
  148. data/spec/cassettes/RedditKit_Client_Wiki/_remove_wiki_editor/requests_the_correct_resource.yml +46 -0
  149. data/spec/cassettes/RedditKit_Client_Wiki/_revert_to_revision/requests_the_correct_resource.yml +46 -0
  150. data/spec/cassettes/RedditKit_Comment/should_not_be_deleted_if_neither_author_and_comment_attributes_are_set_to_deleted_.yml +90 -0
  151. data/spec/cassettes/RedditKit_Comment/should_return_replies.yml +90 -0
  152. data/spec/cassettes/authenticated_client.yml +87 -0
  153. data/spec/redditkit/base_spec.rb +45 -0
  154. data/spec/redditkit/client/account_spec.rb +50 -0
  155. data/spec/redditkit/client/apps_spec.rb +58 -0
  156. data/spec/redditkit/client/captcha_spec.rb +30 -0
  157. data/spec/redditkit/client/comments_spec.rb +40 -0
  158. data/spec/redditkit/client/flair_spec.rb +92 -0
  159. data/spec/redditkit/client/links_spec.rb +103 -0
  160. data/spec/redditkit/client/miscellaneous_spec.rb +40 -0
  161. data/spec/redditkit/client/moderation_spec.rb +141 -0
  162. data/spec/redditkit/client/multireddits_spec.rb +158 -0
  163. data/spec/redditkit/client/private_messages_spec.rb +51 -0
  164. data/spec/redditkit/client/search_spec.rb +25 -0
  165. data/spec/redditkit/client/subreddits_spec.rb +83 -0
  166. data/spec/redditkit/client/users_spec.rb +92 -0
  167. data/spec/redditkit/client/voting_spec.rb +99 -0
  168. data/spec/redditkit/client/wiki_spec.rb +40 -0
  169. data/spec/redditkit/client_spec.rb +46 -0
  170. data/spec/redditkit/comment_spec.rb +26 -0
  171. data/spec/redditkit/creatable_spec.rb +24 -0
  172. data/spec/redditkit/error_spec.rb +61 -0
  173. data/spec/redditkit/link_spec.rb +33 -0
  174. data/spec/redditkit/multireddit_spec.rb +27 -0
  175. data/spec/redditkit/paginated_response_spec.rb +23 -0
  176. data/spec/redditkit/thing_spec.rb +18 -0
  177. data/spec/redditkit/votable_spec.rb +52 -0
  178. data/spec/redditkit_spec.rb +21 -0
  179. data/spec/spec_helper.rb +124 -0
  180. metadata +390 -0
@@ -0,0 +1,46 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://www.reddit.com/r/RedditKitTesting/api/wiki/alloweditor/add
6
+ body:
7
+ encoding: US-ASCII
8
+ string: page=some+page&username=samsymons
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Cookie:
13
+ - reddit_session=20332937,2013-11-10T11:35:59,2077074c26ccd8ec123c996b77eeb7afb6090af9
14
+ X-Modhash:
15
+ - 36zuxndsdf695692a68e32384990478663dadfc30f0a1dd959
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ Accept:
21
+ - "*/*"
22
+ response:
23
+ status:
24
+ code: 404
25
+ message: Not Found
26
+ headers:
27
+ Cache-Control:
28
+ - no-cache
29
+ Pragma:
30
+ - no-cache
31
+ Content-Length:
32
+ - '28'
33
+ Content-Type:
34
+ - application/json; charset=UTF-8
35
+ Server:
36
+ - "'; DROP TABLE servertypes; --"
37
+ Date:
38
+ - Mon, 11 Nov 2013 06:08:03 GMT
39
+ Connection:
40
+ - close
41
+ body:
42
+ encoding: UTF-8
43
+ string: "{\"reason\": \"PAGE_NOT_FOUND\"}"
44
+ http_version:
45
+ recorded_at: Mon, 11 Nov 2013 06:08:06 GMT
46
+ recorded_with: VCR 2.7.0
@@ -0,0 +1,48 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://www.reddit.com/r/RedditKitTesting/api/wiki/edit
6
+ body:
7
+ encoding: US-ASCII
8
+ string: page=fake-page&previous&content&reason
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Cookie:
13
+ - reddit_session=20332937,2013-11-10T11:35:59,2077074c26ccd8ec123c996b77eeb7afb6090af9
14
+ X-Modhash:
15
+ - 36zuxndsdf695692a68e32384990478663dadfc30f0a1dd959
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ Accept:
21
+ - "*/*"
22
+ response:
23
+ status:
24
+ code: 200
25
+ message: OK
26
+ headers:
27
+ Content-Type:
28
+ - text/html; charset=UTF-8
29
+ Content-Length:
30
+ - '2'
31
+ Cache-Control:
32
+ - no-cache
33
+ Pragma:
34
+ - no-cache
35
+ Server:
36
+ - "'; DROP TABLE servertypes; --"
37
+ Vary:
38
+ - Accept-Encoding
39
+ Date:
40
+ - Sun, 10 Nov 2013 22:21:31 GMT
41
+ Connection:
42
+ - keep-alive
43
+ body:
44
+ encoding: UTF-8
45
+ string: "{}"
46
+ http_version:
47
+ recorded_at: Sun, 10 Nov 2013 22:21:30 GMT
48
+ recorded_with: VCR 2.6.0
@@ -0,0 +1,46 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://www.reddit.com/r/RedditKitTesting/api/wiki/hide
6
+ body:
7
+ encoding: US-ASCII
8
+ string: page=fake-page&revision=12345
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Cookie:
13
+ - reddit_session=20332937,2013-11-10T11:35:59,2077074c26ccd8ec123c996b77eeb7afb6090af9
14
+ X-Modhash:
15
+ - 36zuxndsdf695692a68e32384990478663dadfc30f0a1dd959
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ Accept:
21
+ - "*/*"
22
+ response:
23
+ status:
24
+ code: 404
25
+ message: Not Found
26
+ headers:
27
+ Cache-Control:
28
+ - no-cache
29
+ Pragma:
30
+ - no-cache
31
+ Content-Length:
32
+ - '30'
33
+ Content-Type:
34
+ - application/json; charset=UTF-8
35
+ Server:
36
+ - "'; DROP TABLE servertypes; --"
37
+ Date:
38
+ - Sun, 10 Nov 2013 22:21:30 GMT
39
+ Connection:
40
+ - close
41
+ body:
42
+ encoding: UTF-8
43
+ string: "{\"reason\": \"INVALID_REVISION\"}"
44
+ http_version:
45
+ recorded_at: Sun, 10 Nov 2013 22:21:29 GMT
46
+ recorded_with: VCR 2.6.0
@@ -0,0 +1,46 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://www.reddit.com/r/RedditKitTesting/api/wiki/alloweditor/del
6
+ body:
7
+ encoding: US-ASCII
8
+ string: page=some+page&username=samsymons
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Cookie:
13
+ - reddit_session=20332937,2013-11-10T11:35:59,2077074c26ccd8ec123c996b77eeb7afb6090af9
14
+ X-Modhash:
15
+ - 36zuxndsdf695692a68e32384990478663dadfc30f0a1dd959
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ Accept:
21
+ - "*/*"
22
+ response:
23
+ status:
24
+ code: 404
25
+ message: Not Found
26
+ headers:
27
+ Cache-Control:
28
+ - no-cache
29
+ Pragma:
30
+ - no-cache
31
+ Content-Length:
32
+ - '28'
33
+ Content-Type:
34
+ - application/json; charset=UTF-8
35
+ Server:
36
+ - "'; DROP TABLE servertypes; --"
37
+ Date:
38
+ - Mon, 11 Nov 2013 06:08:02 GMT
39
+ Connection:
40
+ - close
41
+ body:
42
+ encoding: UTF-8
43
+ string: "{\"reason\": \"PAGE_NOT_FOUND\"}"
44
+ http_version:
45
+ recorded_at: Mon, 11 Nov 2013 06:08:06 GMT
46
+ recorded_with: VCR 2.7.0
@@ -0,0 +1,46 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://www.reddit.com/r/RedditKitTesting/api/wiki/revert
6
+ body:
7
+ encoding: US-ASCII
8
+ string: page=fake-page&revision=12345
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Cookie:
13
+ - reddit_session=20332937,2013-11-10T11:35:59,2077074c26ccd8ec123c996b77eeb7afb6090af9
14
+ X-Modhash:
15
+ - 36zuxndsdf695692a68e32384990478663dadfc30f0a1dd959
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ Accept-Encoding:
19
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
+ Accept:
21
+ - "*/*"
22
+ response:
23
+ status:
24
+ code: 404
25
+ message: Not Found
26
+ headers:
27
+ Cache-Control:
28
+ - no-cache
29
+ Pragma:
30
+ - no-cache
31
+ Content-Length:
32
+ - '30'
33
+ Content-Type:
34
+ - application/json; charset=UTF-8
35
+ Server:
36
+ - "'; DROP TABLE servertypes; --"
37
+ Date:
38
+ - Sun, 10 Nov 2013 22:21:31 GMT
39
+ Connection:
40
+ - close
41
+ body:
42
+ encoding: UTF-8
43
+ string: "{\"reason\": \"INVALID_REVISION\"}"
44
+ http_version:
45
+ recorded_at: Sun, 10 Nov 2013 22:21:29 GMT
46
+ recorded_with: VCR 2.6.0
@@ -0,0 +1,90 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.reddit.com/comments/1n002d.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - application/json; charset=UTF-8
23
+ Last-Modified:
24
+ - Sun, 10 Nov 2013 19:54:46 GMT
25
+ Server:
26
+ - "'; DROP TABLE servertypes; --"
27
+ Vary:
28
+ - accept-encoding
29
+ Cache-Control:
30
+ - private, must-revalidate, max-age=0
31
+ Date:
32
+ - Sun, 10 Nov 2013 22:21:14 GMT
33
+ Content-Length:
34
+ - '3613'
35
+ Connection:
36
+ - keep-alive
37
+ body:
38
+ encoding: UTF-8
39
+ string: "[{\"kind\": \"Listing\", \"data\": {\"modhash\": \"\", \"children\":
40
+ [{\"kind\": \"t3\", \"data\": {\"domain\": \"self.RedditKitTesting\", \"banned_by\":
41
+ null, \"media_embed\": {}, \"subreddit\": \"RedditKitTesting\", \"selftext_html\":
42
+ \"<!-- SC_OFF --><div class=\\\"md\\\"><p>Here's
43
+ a test self post. This will never be deleted and can be used to test voting/saving/hiding.</p>\\n</div><!--
44
+ SC_ON -->\", \"selftext\": \"Here's a test self post. This will never be
45
+ deleted and can be used to test voting/saving/hiding.\", \"likes\": null,
46
+ \"secure_media\": null, \"link_flair_text\": \"Test flair\", \"id\": \"1n002d\",
47
+ \"secure_media_embed\": {}, \"clicked\": false, \"stickied\": false, \"author\":
48
+ \"samsymons\", \"media\": null, \"score\": 1, \"approved_by\": null, \"over_18\":
49
+ false, \"hidden\": false, \"thumbnail\": \"\", \"subreddit_id\": \"t5_2ylc5\",
50
+ \"edited\": 1382729104.0, \"link_flair_css_class\": \"testclass\", \"author_flair_css_class\":
51
+ \"csvclass\", \"downs\": 1, \"saved\": false, \"is_self\": true, \"permalink\":
52
+ \"/r/RedditKitTesting/comments/1n002d/test_self_post/\", \"name\": \"t3_1n002d\",
53
+ \"created\": 1379988320.0, \"url\": \"http://www.reddit.com/r/RedditKitTesting/comments/1n002d/test_self_post/\",
54
+ \"author_flair_text\": \"Test CSV\", \"title\": \"Test self post\", \"created_utc\":
55
+ 1379984720.0, \"ups\": 2, \"num_comments\": 3, \"visited\": false, \"num_reports\":
56
+ null, \"distinguished\": null}}], \"after\": null, \"before\": null}}, {\"kind\":
57
+ \"Listing\", \"data\": {\"modhash\": \"\", \"children\": [{\"kind\": \"t1\",
58
+ \"data\": {\"subreddit_id\": \"t5_2ylc5\", \"banned_by\": null, \"subreddit\":
59
+ \"RedditKitTesting\", \"likes\": null, \"replies\": {\"kind\": \"Listing\",
60
+ \"data\": {\"modhash\": \"\", \"children\": [{\"kind\": \"t1\", \"data\":
61
+ {\"subreddit_id\": \"t5_2ylc5\", \"banned_by\": null, \"subreddit\": \"RedditKitTesting\",
62
+ \"likes\": null, \"replies\": {\"kind\": \"Listing\", \"data\": {\"modhash\":
63
+ \"\", \"children\": [{\"kind\": \"t1\", \"data\": {\"subreddit_id\": \"t5_2ylc5\",
64
+ \"banned_by\": null, \"subreddit\": \"RedditKitTesting\", \"likes\": null,
65
+ \"replies\": \"\", \"id\": \"cd2cxbf\", \"gilded\": 0, \"author\": \"samsymons\",
66
+ \"parent_id\": \"t1_ccs9m3u\", \"approved_by\": null, \"body\": \"Further
67
+ reply!\", \"edited\": false, \"author_flair_css_class\": \"csvclass\", \"downs\":
68
+ 0, \"body_html\": \"<div class=\\\"md\\\"><p>Further reply!</p>\\n</div>\",
69
+ \"link_id\": \"t3_1n002d\", \"score_hidden\": false, \"name\": \"t1_cd2cxbf\",
70
+ \"created\": 1383080906.0, \"author_flair_text\": \"Test CSV\", \"created_utc\":
71
+ 1383077306.0, \"distinguished\": null, \"num_reports\": null, \"ups\": 1}}],
72
+ \"after\": null, \"before\": null}}, \"id\": \"ccs9m3u\", \"gilded\": 0, \"author\":
73
+ \"samsymons\", \"parent_id\": \"t1_cce66qf\", \"approved_by\": null, \"body\":
74
+ \"Test reply.\", \"edited\": false, \"author_flair_css_class\": \"csvclass\",
75
+ \"downs\": 0, \"body_html\": \"<div class=\\\"md\\\"><p>Test reply.</p>\\n</div>\",
76
+ \"link_id\": \"t3_1n002d\", \"score_hidden\": false, \"name\": \"t1_ccs9m3u\",
77
+ \"created\": 1381864849.0, \"author_flair_text\": \"Test CSV\", \"created_utc\":
78
+ 1381861249.0, \"distinguished\": null, \"num_reports\": null, \"ups\": 1}}],
79
+ \"after\": null, \"before\": null}}, \"id\": \"cce66qf\", \"gilded\": 0, \"author\":
80
+ \"samsymons\", \"parent_id\": \"t3_1n002d\", \"approved_by\": null, \"body\":
81
+ \"Here's a test comment which will also never be deleted.\", \"edited\": false,
82
+ \"author_flair_css_class\": \"csvclass\", \"downs\": 1, \"body_html\": \"<div
83
+ class=\\\"md\\\"><p>Here's a test comment which will also
84
+ never be deleted.</p>\\n</div>\", \"link_id\": \"t3_1n002d\",
85
+ \"score_hidden\": false, \"name\": \"t1_cce66qf\", \"created\": 1379988702.0,
86
+ \"author_flair_text\": \"Test CSV\", \"created_utc\": 1379985102.0, \"distinguished\":
87
+ null, \"num_reports\": null, \"ups\": 2}}], \"after\": null, \"before\": null}}]"
88
+ http_version:
89
+ recorded_at: Sun, 10 Nov 2013 22:21:13 GMT
90
+ recorded_with: VCR 2.6.0
@@ -0,0 +1,90 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.reddit.com/comments/1n002d.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - application/json; charset=UTF-8
23
+ Last-Modified:
24
+ - Sun, 10 Nov 2013 19:54:46 GMT
25
+ Server:
26
+ - "'; DROP TABLE servertypes; --"
27
+ Vary:
28
+ - accept-encoding
29
+ Cache-Control:
30
+ - private, must-revalidate, max-age=0
31
+ Date:
32
+ - Sun, 10 Nov 2013 22:21:14 GMT
33
+ Content-Length:
34
+ - '3613'
35
+ Connection:
36
+ - keep-alive
37
+ body:
38
+ encoding: UTF-8
39
+ string: "[{\"kind\": \"Listing\", \"data\": {\"modhash\": \"\", \"children\":
40
+ [{\"kind\": \"t3\", \"data\": {\"domain\": \"self.RedditKitTesting\", \"banned_by\":
41
+ null, \"media_embed\": {}, \"subreddit\": \"RedditKitTesting\", \"selftext_html\":
42
+ \"<!-- SC_OFF --><div class=\\\"md\\\"><p>Here's
43
+ a test self post. This will never be deleted and can be used to test voting/saving/hiding.</p>\\n</div><!--
44
+ SC_ON -->\", \"selftext\": \"Here's a test self post. This will never be
45
+ deleted and can be used to test voting/saving/hiding.\", \"likes\": null,
46
+ \"secure_media\": null, \"link_flair_text\": \"Test flair\", \"id\": \"1n002d\",
47
+ \"secure_media_embed\": {}, \"clicked\": false, \"stickied\": false, \"author\":
48
+ \"samsymons\", \"media\": null, \"score\": 1, \"approved_by\": null, \"over_18\":
49
+ false, \"hidden\": false, \"thumbnail\": \"\", \"subreddit_id\": \"t5_2ylc5\",
50
+ \"edited\": 1382729104.0, \"link_flair_css_class\": \"testclass\", \"author_flair_css_class\":
51
+ \"csvclass\", \"downs\": 1, \"saved\": false, \"is_self\": true, \"permalink\":
52
+ \"/r/RedditKitTesting/comments/1n002d/test_self_post/\", \"name\": \"t3_1n002d\",
53
+ \"created\": 1379988320.0, \"url\": \"http://www.reddit.com/r/RedditKitTesting/comments/1n002d/test_self_post/\",
54
+ \"author_flair_text\": \"Test CSV\", \"title\": \"Test self post\", \"created_utc\":
55
+ 1379984720.0, \"ups\": 2, \"num_comments\": 3, \"visited\": false, \"num_reports\":
56
+ null, \"distinguished\": null}}], \"after\": null, \"before\": null}}, {\"kind\":
57
+ \"Listing\", \"data\": {\"modhash\": \"\", \"children\": [{\"kind\": \"t1\",
58
+ \"data\": {\"subreddit_id\": \"t5_2ylc5\", \"banned_by\": null, \"subreddit\":
59
+ \"RedditKitTesting\", \"likes\": null, \"replies\": {\"kind\": \"Listing\",
60
+ \"data\": {\"modhash\": \"\", \"children\": [{\"kind\": \"t1\", \"data\":
61
+ {\"subreddit_id\": \"t5_2ylc5\", \"banned_by\": null, \"subreddit\": \"RedditKitTesting\",
62
+ \"likes\": null, \"replies\": {\"kind\": \"Listing\", \"data\": {\"modhash\":
63
+ \"\", \"children\": [{\"kind\": \"t1\", \"data\": {\"subreddit_id\": \"t5_2ylc5\",
64
+ \"banned_by\": null, \"subreddit\": \"RedditKitTesting\", \"likes\": null,
65
+ \"replies\": \"\", \"id\": \"cd2cxbf\", \"gilded\": 0, \"author\": \"samsymons\",
66
+ \"parent_id\": \"t1_ccs9m3u\", \"approved_by\": null, \"body\": \"Further
67
+ reply!\", \"edited\": false, \"author_flair_css_class\": \"csvclass\", \"downs\":
68
+ 0, \"body_html\": \"<div class=\\\"md\\\"><p>Further reply!</p>\\n</div>\",
69
+ \"link_id\": \"t3_1n002d\", \"score_hidden\": false, \"name\": \"t1_cd2cxbf\",
70
+ \"created\": 1383080906.0, \"author_flair_text\": \"Test CSV\", \"created_utc\":
71
+ 1383077306.0, \"distinguished\": null, \"num_reports\": null, \"ups\": 1}}],
72
+ \"after\": null, \"before\": null}}, \"id\": \"ccs9m3u\", \"gilded\": 0, \"author\":
73
+ \"samsymons\", \"parent_id\": \"t1_cce66qf\", \"approved_by\": null, \"body\":
74
+ \"Test reply.\", \"edited\": false, \"author_flair_css_class\": \"csvclass\",
75
+ \"downs\": 0, \"body_html\": \"<div class=\\\"md\\\"><p>Test reply.</p>\\n</div>\",
76
+ \"link_id\": \"t3_1n002d\", \"score_hidden\": false, \"name\": \"t1_ccs9m3u\",
77
+ \"created\": 1381864849.0, \"author_flair_text\": \"Test CSV\", \"created_utc\":
78
+ 1381861249.0, \"distinguished\": null, \"num_reports\": null, \"ups\": 1}}],
79
+ \"after\": null, \"before\": null}}, \"id\": \"cce66qf\", \"gilded\": 0, \"author\":
80
+ \"samsymons\", \"parent_id\": \"t3_1n002d\", \"approved_by\": null, \"body\":
81
+ \"Here's a test comment which will also never be deleted.\", \"edited\": false,
82
+ \"author_flair_css_class\": \"csvclass\", \"downs\": 1, \"body_html\": \"<div
83
+ class=\\\"md\\\"><p>Here's a test comment which will also
84
+ never be deleted.</p>\\n</div>\", \"link_id\": \"t3_1n002d\",
85
+ \"score_hidden\": false, \"name\": \"t1_cce66qf\", \"created\": 1379988702.0,
86
+ \"author_flair_text\": \"Test CSV\", \"created_utc\": 1379985102.0, \"distinguished\":
87
+ null, \"num_reports\": null, \"ups\": 2}}], \"after\": null, \"before\": null}}]"
88
+ http_version:
89
+ recorded_at: Sun, 10 Nov 2013 22:21:13 GMT
90
+ recorded_with: VCR 2.6.0
@@ -0,0 +1,87 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://ssl.reddit.com/api/login
6
+ body:
7
+ encoding: US-ASCII
8
+ string: user=<REDDIT_USERNAME>&passwd=<REDDIT_USERNAME>Password&api_type=json
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Content-Type:
13
+ - application/x-www-form-urlencoded
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Date:
24
+ - Sun, 10 Nov 2013 19:35:59 GMT
25
+ Connection:
26
+ - close
27
+ Content-Type:
28
+ - application/json; charset=UTF-8
29
+ Content-Length:
30
+ - '182'
31
+ Set-Cookie:
32
+ - reddit_session=20332937%2C2013-11-10T11%3A35%3A59%2C2077074c26ccd8ec123c996b77eeb7afb6090af9;
33
+ Domain=reddit.com; Path=/; HttpOnly
34
+ Server:
35
+ - "'; DROP TABLE servertypes; --"
36
+ body:
37
+ encoding: UTF-8
38
+ string: "{\"json\": {\"errors\": [], \"data\": {\"modhash\": \"36zuxndsdf695692a68e32384990478663dadfc30f0a1dd959\",
39
+ \"cookie\": \"20332937,2013-11-10T11:35:59,2077074c26ccd8ec123c996b77eeb7afb6090af9\"}}}"
40
+ http_version:
41
+ recorded_at: Sun, 10 Nov 2013 19:35:57 GMT
42
+ - request:
43
+ method: get
44
+ uri: http://www.reddit.com/user/<REDDIT_USERNAME>/about.json
45
+ body:
46
+ encoding: US-ASCII
47
+ string: ''
48
+ headers:
49
+ User-Agent:
50
+ - Faraday v0.8.8
51
+ Cookie:
52
+ - reddit_session=20332937,2013-11-10T11:35:59,2077074c26ccd8ec123c996b77eeb7afb6090af9
53
+ X-Modhash:
54
+ - 36zuxndsdf695692a68e32384990478663dadfc30f0a1dd959
55
+ Accept-Encoding:
56
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
57
+ Accept:
58
+ - "*/*"
59
+ response:
60
+ status:
61
+ code: 200
62
+ message: OK
63
+ headers:
64
+ Content-Type:
65
+ - application/json; charset=UTF-8
66
+ Content-Length:
67
+ - '362'
68
+ Cache-Control:
69
+ - no-cache
70
+ Pragma:
71
+ - no-cache
72
+ Server:
73
+ - "'; DROP TABLE servertypes; --"
74
+ Date:
75
+ - Sun, 10 Nov 2013 19:35:59 GMT
76
+ Connection:
77
+ - keep-alive
78
+ body:
79
+ encoding: UTF-8
80
+ string: "{\"kind\": \"t2\", \"data\": {\"has_mail\": false, \"name\": \"<REDDIT_USERNAME>\",
81
+ \"is_friend\": false, \"created\": 1371758712.0, \"modhash\": \"isl606b3ws10e5f6e12f2df66cab5f29ad65ffcfd72ffe67de\",
82
+ \"created_utc\": 1371755112.0, \"link_karma\": 1, \"comment_karma\": 0, \"over_18\":
83
+ true, \"is_gold\": false, \"is_mod\": true, \"has_verified_email\": null,
84
+ \"id\": \"c3szt\", \"has_mod_mail\": true}}"
85
+ http_version:
86
+ recorded_at: Sun, 10 Nov 2013 19:35:58 GMT
87
+ recorded_with: VCR 2.6.0