red_haze 0.0.1

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 (60) hide show
  1. data/.gitignore +7 -0
  2. data/.rspec +2 -0
  3. data/Gemfile +4 -0
  4. data/Rakefile +1 -0
  5. data/config.template.yml +4 -0
  6. data/lib/red_haze/activity.rb +5 -0
  7. data/lib/red_haze/client.rb +58 -0
  8. data/lib/red_haze/collection.rb +16 -0
  9. data/lib/red_haze/comment.rb +6 -0
  10. data/lib/red_haze/group.rb +28 -0
  11. data/lib/red_haze/helpers/resource.rb +91 -0
  12. data/lib/red_haze/helpers.rb +8 -0
  13. data/lib/red_haze/me.rb +66 -0
  14. data/lib/red_haze/playlist.rb +6 -0
  15. data/lib/red_haze/request.rb +22 -0
  16. data/lib/red_haze/track.rb +23 -0
  17. data/lib/red_haze/user.rb +35 -0
  18. data/lib/red_haze/version.rb +3 -0
  19. data/lib/red_haze.rb +28 -0
  20. data/red_haze.gemspec +28 -0
  21. data/spec/fixtures/vcr_cassettes/collection_next.yml +348 -0
  22. data/spec/fixtures/vcr_cassettes/comment_sync.yml +56 -0
  23. data/spec/fixtures/vcr_cassettes/group_contributors.yml +55 -0
  24. data/spec/fixtures/vcr_cassettes/group_members.yml +55 -0
  25. data/spec/fixtures/vcr_cassettes/group_moderators.yml +55 -0
  26. data/spec/fixtures/vcr_cassettes/group_sync.yml +55 -0
  27. data/spec/fixtures/vcr_cassettes/group_users.yml +55 -0
  28. data/spec/fixtures/vcr_cassettes/me.yml +55 -0
  29. data/spec/fixtures/vcr_cassettes/me_activities.yml +429 -0
  30. data/spec/fixtures/vcr_cassettes/me_activities_limit.yml +127 -0
  31. data/spec/fixtures/vcr_cassettes/playlist.yml +60 -0
  32. data/spec/fixtures/vcr_cassettes/track_comments.yml +79 -0
  33. data/spec/fixtures/vcr_cassettes/track_favorite_get.yml +50 -0
  34. data/spec/fixtures/vcr_cassettes/track_favorite_put.yml +50 -0
  35. data/spec/fixtures/vcr_cassettes/track_favoriters.yml +172 -0
  36. data/spec/fixtures/vcr_cassettes/track_sync.yml +82 -0
  37. data/spec/fixtures/vcr_cassettes/track_unfavorite_put.yml +50 -0
  38. data/spec/fixtures/vcr_cassettes/user_comments.yml +89 -0
  39. data/spec/fixtures/vcr_cassettes/user_favorites.yml +479 -0
  40. data/spec/fixtures/vcr_cassettes/user_follow_put.yml +65 -0
  41. data/spec/fixtures/vcr_cassettes/user_followers.yml +431 -0
  42. data/spec/fixtures/vcr_cassettes/user_follows_.yml +104 -0
  43. data/spec/fixtures/vcr_cassettes/user_follows_get.yml +50 -0
  44. data/spec/fixtures/vcr_cassettes/user_groups.yml +66 -0
  45. data/spec/fixtures/vcr_cassettes/user_playlists.yml +482 -0
  46. data/spec/fixtures/vcr_cassettes/user_sync.yml +57 -0
  47. data/spec/fixtures/vcr_cassettes/user_unfollow_put.yml +54 -0
  48. data/spec/lib/red_haze/activity_spec.rb +18 -0
  49. data/spec/lib/red_haze/client_spec.rb +43 -0
  50. data/spec/lib/red_haze/collection_spec.rb +26 -0
  51. data/spec/lib/red_haze/comment_spec.rb +30 -0
  52. data/spec/lib/red_haze/group_spec.rb +57 -0
  53. data/spec/lib/red_haze/me_spec.rb +117 -0
  54. data/spec/lib/red_haze/playlist_spec.rb +41 -0
  55. data/spec/lib/red_haze/request_spec.rb +17 -0
  56. data/spec/lib/red_haze/track_spec.rb +96 -0
  57. data/spec/lib/red_haze/user_spec.rb +110 -0
  58. data/spec/lib/red_haze_spec.rb +13 -0
  59. data/spec/spec_helper.rb +45 -0
  60. metadata +212 -0
@@ -0,0 +1,45 @@
1
+ require 'red_haze'
2
+ require 'rspec'
3
+ require 'vcr'
4
+
5
+ VCR.configure do |c|
6
+ c.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
7
+ c.hook_into :webmock
8
+ sensitive_configs = YAML.load_file('config.yml')
9
+ sensitive_configs.each do |k,v|
10
+ c.filter_sensitive_data("<#{k.upcase}>") { v }
11
+ end
12
+ end
13
+
14
+ RSpec.configure do |config|
15
+ config.treat_symbols_as_metadata_keys_with_true_values = true
16
+ config.run_all_when_everything_filtered = true
17
+ config.filter_run :focus
18
+ end
19
+
20
+ def setup_config(type)
21
+ config = YAML.load_file(File.join(File.dirname(__FILE__),'../config.yml'))
22
+ config.delete(:access_token) unless type == :oauth
23
+ # reset any previos default params
24
+ RedHaze::Request.default_options[:default_params] = nil
25
+ RedHaze.configure(config)
26
+ end
27
+
28
+ class Object
29
+ def boolean?
30
+ !!self == self
31
+ end
32
+ end
33
+
34
+ RSpec::Matchers.define :return_an_array_of do |expected|
35
+ match do |actual|
36
+ actual.class == Array &&
37
+ actual.size == actual.select{|a| a.class == expected}.size
38
+ end
39
+ end
40
+
41
+ RSpec::Matchers.define :return_an_array_of_red_haze_objects do
42
+ match do |actual|
43
+ actual.size == actual.select{|a| a.class.name =~ /RedHaze/}.size
44
+ end
45
+ end
metadata ADDED
@@ -0,0 +1,212 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: red_haze
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Jack Anderson
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-07-15 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: webmock
16
+ requirement: &70367074991240 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *70367074991240
25
+ - !ruby/object:Gem::Dependency
26
+ name: vcr
27
+ requirement: &70367075006180 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *70367075006180
36
+ - !ruby/object:Gem::Dependency
37
+ name: rspec
38
+ requirement: &70367075004620 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70367075004620
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: &70367075003060 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70367075003060
58
+ - !ruby/object:Gem::Dependency
59
+ name: httparty
60
+ requirement: &70367075001420 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: *70367075001420
69
+ - !ruby/object:Gem::Dependency
70
+ name: multi_json
71
+ requirement: &70367074999880 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: *70367074999880
80
+ description:
81
+ email:
82
+ - hi@janderson.me
83
+ executables: []
84
+ extensions: []
85
+ extra_rdoc_files: []
86
+ files:
87
+ - .gitignore
88
+ - .rspec
89
+ - Gemfile
90
+ - Rakefile
91
+ - config.template.yml
92
+ - lib/red_haze.rb
93
+ - lib/red_haze/activity.rb
94
+ - lib/red_haze/client.rb
95
+ - lib/red_haze/collection.rb
96
+ - lib/red_haze/comment.rb
97
+ - lib/red_haze/group.rb
98
+ - lib/red_haze/helpers.rb
99
+ - lib/red_haze/helpers/resource.rb
100
+ - lib/red_haze/me.rb
101
+ - lib/red_haze/playlist.rb
102
+ - lib/red_haze/request.rb
103
+ - lib/red_haze/track.rb
104
+ - lib/red_haze/user.rb
105
+ - lib/red_haze/version.rb
106
+ - red_haze.gemspec
107
+ - spec/fixtures/vcr_cassettes/collection_next.yml
108
+ - spec/fixtures/vcr_cassettes/comment_sync.yml
109
+ - spec/fixtures/vcr_cassettes/group_contributors.yml
110
+ - spec/fixtures/vcr_cassettes/group_members.yml
111
+ - spec/fixtures/vcr_cassettes/group_moderators.yml
112
+ - spec/fixtures/vcr_cassettes/group_sync.yml
113
+ - spec/fixtures/vcr_cassettes/group_users.yml
114
+ - spec/fixtures/vcr_cassettes/me.yml
115
+ - spec/fixtures/vcr_cassettes/me_activities.yml
116
+ - spec/fixtures/vcr_cassettes/me_activities_limit.yml
117
+ - spec/fixtures/vcr_cassettes/playlist.yml
118
+ - spec/fixtures/vcr_cassettes/track_comments.yml
119
+ - spec/fixtures/vcr_cassettes/track_favorite_get.yml
120
+ - spec/fixtures/vcr_cassettes/track_favorite_put.yml
121
+ - spec/fixtures/vcr_cassettes/track_favoriters.yml
122
+ - spec/fixtures/vcr_cassettes/track_sync.yml
123
+ - spec/fixtures/vcr_cassettes/track_unfavorite_put.yml
124
+ - spec/fixtures/vcr_cassettes/user_comments.yml
125
+ - spec/fixtures/vcr_cassettes/user_favorites.yml
126
+ - spec/fixtures/vcr_cassettes/user_follow_put.yml
127
+ - spec/fixtures/vcr_cassettes/user_followers.yml
128
+ - spec/fixtures/vcr_cassettes/user_follows_.yml
129
+ - spec/fixtures/vcr_cassettes/user_follows_get.yml
130
+ - spec/fixtures/vcr_cassettes/user_groups.yml
131
+ - spec/fixtures/vcr_cassettes/user_playlists.yml
132
+ - spec/fixtures/vcr_cassettes/user_sync.yml
133
+ - spec/fixtures/vcr_cassettes/user_unfollow_put.yml
134
+ - spec/lib/red_haze/activity_spec.rb
135
+ - spec/lib/red_haze/client_spec.rb
136
+ - spec/lib/red_haze/collection_spec.rb
137
+ - spec/lib/red_haze/comment_spec.rb
138
+ - spec/lib/red_haze/group_spec.rb
139
+ - spec/lib/red_haze/me_spec.rb
140
+ - spec/lib/red_haze/playlist_spec.rb
141
+ - spec/lib/red_haze/request_spec.rb
142
+ - spec/lib/red_haze/track_spec.rb
143
+ - spec/lib/red_haze/user_spec.rb
144
+ - spec/lib/red_haze_spec.rb
145
+ - spec/spec_helper.rb
146
+ homepage: https://github.com/JackCA/red_haze
147
+ licenses: []
148
+ post_install_message:
149
+ rdoc_options: []
150
+ require_paths:
151
+ - lib
152
+ required_ruby_version: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: 1.9.2
158
+ required_rubygems_version: !ruby/object:Gem::Requirement
159
+ none: false
160
+ requirements:
161
+ - - ! '>='
162
+ - !ruby/object:Gem::Version
163
+ version: '0'
164
+ segments:
165
+ - 0
166
+ hash: 2380458838564123150
167
+ requirements: []
168
+ rubyforge_project: red_haze
169
+ rubygems_version: 1.8.10
170
+ signing_key:
171
+ specification_version: 3
172
+ summary: a robust Ruby wrapper for the Soundcloud API
173
+ test_files:
174
+ - spec/fixtures/vcr_cassettes/collection_next.yml
175
+ - spec/fixtures/vcr_cassettes/comment_sync.yml
176
+ - spec/fixtures/vcr_cassettes/group_contributors.yml
177
+ - spec/fixtures/vcr_cassettes/group_members.yml
178
+ - spec/fixtures/vcr_cassettes/group_moderators.yml
179
+ - spec/fixtures/vcr_cassettes/group_sync.yml
180
+ - spec/fixtures/vcr_cassettes/group_users.yml
181
+ - spec/fixtures/vcr_cassettes/me.yml
182
+ - spec/fixtures/vcr_cassettes/me_activities.yml
183
+ - spec/fixtures/vcr_cassettes/me_activities_limit.yml
184
+ - spec/fixtures/vcr_cassettes/playlist.yml
185
+ - spec/fixtures/vcr_cassettes/track_comments.yml
186
+ - spec/fixtures/vcr_cassettes/track_favorite_get.yml
187
+ - spec/fixtures/vcr_cassettes/track_favorite_put.yml
188
+ - spec/fixtures/vcr_cassettes/track_favoriters.yml
189
+ - spec/fixtures/vcr_cassettes/track_sync.yml
190
+ - spec/fixtures/vcr_cassettes/track_unfavorite_put.yml
191
+ - spec/fixtures/vcr_cassettes/user_comments.yml
192
+ - spec/fixtures/vcr_cassettes/user_favorites.yml
193
+ - spec/fixtures/vcr_cassettes/user_follow_put.yml
194
+ - spec/fixtures/vcr_cassettes/user_followers.yml
195
+ - spec/fixtures/vcr_cassettes/user_follows_.yml
196
+ - spec/fixtures/vcr_cassettes/user_follows_get.yml
197
+ - spec/fixtures/vcr_cassettes/user_groups.yml
198
+ - spec/fixtures/vcr_cassettes/user_playlists.yml
199
+ - spec/fixtures/vcr_cassettes/user_sync.yml
200
+ - spec/fixtures/vcr_cassettes/user_unfollow_put.yml
201
+ - spec/lib/red_haze/activity_spec.rb
202
+ - spec/lib/red_haze/client_spec.rb
203
+ - spec/lib/red_haze/collection_spec.rb
204
+ - spec/lib/red_haze/comment_spec.rb
205
+ - spec/lib/red_haze/group_spec.rb
206
+ - spec/lib/red_haze/me_spec.rb
207
+ - spec/lib/red_haze/playlist_spec.rb
208
+ - spec/lib/red_haze/request_spec.rb
209
+ - spec/lib/red_haze/track_spec.rb
210
+ - spec/lib/red_haze/user_spec.rb
211
+ - spec/lib/red_haze_spec.rb
212
+ - spec/spec_helper.rb