sqoot 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 (37) hide show
  1. data/.gitignore +18 -0
  2. data/.rspec +1 -0
  3. data/.rvmrc +1 -0
  4. data/Gemfile +4 -0
  5. data/Guardfile +11 -0
  6. data/LICENSE +22 -0
  7. data/README.md +71 -0
  8. data/Rakefile +7 -0
  9. data/lib/sqoot.rb +23 -0
  10. data/lib/sqoot/category.rb +11 -0
  11. data/lib/sqoot/click.rb +14 -0
  12. data/lib/sqoot/client.rb +58 -0
  13. data/lib/sqoot/commission.rb +15 -0
  14. data/lib/sqoot/offer.rb +16 -0
  15. data/lib/sqoot/provider.rb +11 -0
  16. data/lib/sqoot/request.rb +36 -0
  17. data/lib/sqoot/response/parse_gzip.rb +27 -0
  18. data/lib/sqoot/version.rb +3 -0
  19. data/spec/cassettes/Sqoot_Category/should_return_an_array_of_categories.yml +79 -0
  20. data/spec/cassettes/Sqoot_Category/should_return_mash_list_of_categories_without_passing_any_parameters.yml +80 -0
  21. data/spec/cassettes/Sqoot_Click/should_return_an_array_of_clicks.yml +61 -0
  22. data/spec/cassettes/Sqoot_Click/should_return_mash_list_of_clicks_without_passing_any_parameters.yml +61 -0
  23. data/spec/cassettes/Sqoot_Commission/should_return_an_array_of_commissions.yml +51 -0
  24. data/spec/cassettes/Sqoot_Commission/should_return_mash_list_of_commissions_without_passing_any_parameters.yml +51 -0
  25. data/spec/cassettes/Sqoot_Offer/should_return_a_list_of_offers_given_a_location_parameter.yml +75 -0
  26. data/spec/cassettes/Sqoot_Offer/should_return_an_array_of_offers.yml +141 -0
  27. data/spec/cassettes/Sqoot_Offer/should_return_mash_list_of_offers_without_passing_any_parameters.yml +142 -0
  28. data/spec/spec_helper.rb +42 -0
  29. data/spec/sqoot/category_spec.rb +15 -0
  30. data/spec/sqoot/click_spec.rb +15 -0
  31. data/spec/sqoot/client_spec.rb +12 -0
  32. data/spec/sqoot/commission_spec.rb +15 -0
  33. data/spec/sqoot/offer_spec.rb +21 -0
  34. data/spec/sqoot/provider_spec.rb +15 -0
  35. data/spec/sqoot_spec.rb +20 -0
  36. data/sqoot.gemspec +33 -0
  37. metadata +254 -0
@@ -0,0 +1,142 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: AFFILIATE_TOKEN
6
+ body: ''
7
+ headers:
8
+ authorization: AUTHENTICATION_TOKEN
9
+ accept:
10
+ - ! '*/*'
11
+ accept-encoding:
12
+ - gzip
13
+ user-agent:
14
+ - Ruby gem
15
+ connection:
16
+ - close
17
+ response:
18
+ status:
19
+ code: 200
20
+ message: OK
21
+ headers:
22
+ server:
23
+ - nginx
24
+ date:
25
+ - Fri, 24 Feb 2012 15:06:03 GMT
26
+ content-type:
27
+ - text/javascript; charset=utf-8
28
+ transfer-encoding:
29
+ - chunked
30
+ connection:
31
+ - close
32
+ etag:
33
+ - ! '"393630d47f82768e987f54c1bb404aa6"'
34
+ cache-control:
35
+ - max-age=0, private, must-revalidate
36
+ x-ua-compatible:
37
+ - IE=Edge,chrome=1
38
+ set-cookie:
39
+ - _sqoot_session=BAh7CEkiD3Nlc3Npb25faWQGOgZFRiIlYjg5M2EyZjY3OTg5N2JhZWViZjdmNzQ0NWQyOTQ3ZWFJIg1sb2NhdGlvbgY7AEZvOg1Mb2NhdGlvbg06EEBhdHRyaWJ1dGVzexRJIhFwaG9uZV9udW1iZXIGOwBUMEkiCHVybAY7AFQwSSIVc3RyZWV0X2FkZHJlc3NfMQY7AFQwSSIVc3RyZWV0X2FkZHJlc3NfMgY7AFQwSSIJY2l0eQY7AFRJIgtNYW5pbGEGOwBUSSIIemlwBjsAVDBJIgpzdGF0ZQY7AFRJIgdEOQY7AFRJIgxjb3VudHJ5BjsAVEkiB1BIBjsAVEkiEW5laWdoYm9yaG9vZAY7AFQwSSINbGF0aXR1ZGUGOwBUZhoxNC42MDQyMDAwMDAwMDAwMDEAfIVJIg5sb25naXR1ZGUGOwBUZg8xMjAuOTgyACsCSSIPY3JlYXRlZF9hdAY7AFQwSSIPdXBkYXRlZF9hdAY7AFQwSSINb2ZmZXJfaWQGOwBUMEkiD2ZhY3R1YWxfaWQGOwBUMDoWQGF0dHJpYnV0ZXNfY2FjaGV7ADoPQHBlcnNpc3RlZEY6DkByZWFkb25seUY6D0BkZXN0cm95ZWRGOhxAbWFya2VkX2Zvcl9kZXN0cnVjdGlvbkY6GEBwcmV2aW91c2x5X2NoYW5nZWR7ADoYQGNoYW5nZWRfYXR0cmlidXRlc3sKSSINbGF0aXR1ZGUGOwBGMEkiDmxvbmdpdHVkZQY7AEYwSSIJY2l0eQY7AEYwSSIKc3RhdGUGOwBGMEkiDGNvdW50cnkGOwBGMEkiHmdlb2NvZGVkX2lwX2Zvcl9sb2NhdGlvbj8GOwBGVA%3D%3D--925603ab828eb1a521b55719a24d3bf12895c481;
40
+ domain=.sqoot.com; path=/; HttpOnly
41
+ x-runtime:
42
+ - '0.886131'
43
+ x-varnish:
44
+ - '1804554804'
45
+ age:
46
+ - '0'
47
+ via:
48
+ - 1.1 varnish
49
+ content-encoding:
50
+ - gzip
51
+ body: !binary |-
52
+ H4sIAAAAAAAAA5RW224bNxB971dMjRSxAVmR5EtiJwjgOgkatL6g8VsNCBR3
53
+ VmLMJTckV7KQn+8ZUjenSdEKtlbkDudy5szZ/foT0V7ySdm9czoZHPVk3aop
54
+ YzksCw7j1Ua56+uaQ8TyL6yIvubv9T621xvYMhXWL09PX5686m13k0lW3O0N
55
+ h3RrWDNdclCN0XTp/cNCBaZPnIgWJs3oHVsz57Dc23EQZz6k8cbN6dEvhOCk
56
+ 0sbR7ybpGTt6HyO7ZJSNu+crjjqYNhnv5Pyb9u3H9DySirFruKIrJf+PtMBR
57
+ arCoOqbkKc1wCeIM4ciamsk4Uq3Xyi7hTdOMre3ThU6dsnbZwwkTSStHE0Z2
58
+ ODvpEgLAlyKr9IP4+QJbk5ak17XzJuc+fazJO7v8l7pohgQz9FyyTr5SS1RT
59
+ sbJU+0Cfu5jo2fD4rId0te0q46a4W2Dt5aquzXSG7CoOqHdJjnELjudMleGq
60
+ T3dSB6u4PIzJI8X9wKo6p5hQg5pYPqCIhsFGyV5rOQeWirDlAOAS51oDIIJH
61
+ uigzGB9wz5oHeNO+aVUQR9QGX3U6RQrKTZmcD41ASXXwDYp4dSbgPTsaDA76
62
+ 9MF3EsTiUnc2h5PS5gIggIFXLhxCXOOcn6uEmgWFxEHPJECOiV8VLpJoAQi/
63
+ aXSsG2p9yttpFhg1haX4b5WLtD96pZtesRKL0UA3SOm90ggXhCespNUlPupw
64
+ gM6g43rVSe2RDbylGWg7gTFI1SW649p6l+GboYFphg7VKh3WksCqwtfURZaK
65
+ TU2Bv3QmFE6FzsllKbDErs01hinufVBWe4c2LjxFYw0WjEYnaYD1C6FALDBE
66
+ wayVmYziCrRFqAqTgQaHeSaOibB+jZqmFgMDtMFDm2u1pupt6ouJVQMWGYeT
67
+ KxQRPiCSshl2mEd6YG5jSdlynTyIh1iq5tJxTKqcbpA02N6nd949TzT1MpY9
68
+ fIE9GcCH1Vwgp+rne3fvbpw1KBLIcJMHfTtWNDcyfa4qzZxm0s1BfsyRo7nv
69
+ 4Cnch3tHH69ub/68u7i+O89ToqoK6ccn5rK/EyS7WxhrBboF/HCpbTPc63ut
70
+ jwLZ4RPHlxfX1zd3cruwUyLoJ/5NpjUGLHHO8PaGfvWPawdomsRwwlqtuUWE
71
+ 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
139
+ HwAAAP//AwAg0w+tVC0AAA==
140
+ http_version: '1.1'
141
+ recorded_at: Fri, 24 Feb 2012 15:06:03 GMT
142
+ recorded_with: VCR 2.0.0.rc1
@@ -0,0 +1,42 @@
1
+ require "sqoot"
2
+ require "vcr"
3
+ require "simplecov"
4
+ require "simplecov-rcov"
5
+
6
+ class SimpleCov::Formatter::MergedFormatter
7
+ def format(result)
8
+ SimpleCov::Formatter::HTMLFormatter.new.format(result)
9
+ SimpleCov::Formatter::RcovFormatter.new.format(result)
10
+ end
11
+ end
12
+
13
+ SimpleCov.formatter = SimpleCov::Formatter::MergedFormatter
14
+ SimpleCov.start do
15
+ add_filter '/vendor'
16
+ end
17
+
18
+ VCR.configure do |c|
19
+ c.allow_http_connections_when_no_cassette = true
20
+ c.cassette_library_dir = 'spec/cassettes'
21
+ c.hook_into :fakeweb
22
+ c.configure_rspec_metadata!
23
+ c.default_cassette_options = { :record => :new_episodes }
24
+ c.filter_sensitive_data('AFFILIATE_TOKEN') do |interaction|
25
+ interaction.request.uri = '?affiliate_token='
26
+ end
27
+ c.filter_sensitive_data('AUTHENTICATION_TOKEN') do |interaction|
28
+ interaction.request.headers['authorization'] = 'blah'
29
+ end
30
+ end
31
+
32
+ RSpec.configure do |c|
33
+ c.extend VCR::RSpec::Macros
34
+ c.treat_symbols_as_metadata_keys_with_true_values = true
35
+
36
+ c.before(:each) do
37
+ Sqoot.configure do |config|
38
+ config.affiliate_token = "YOUR AFFILIATE TOKEN"
39
+ config.authentication_token = "YOUR AUTHENTICATION TOKEN"
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,15 @@
1
+ # encoding: utf-8
2
+ require "spec_helper"
3
+
4
+ describe Sqoot::Category do
5
+ let(:client) { Sqoot::Client.new }
6
+
7
+ it "should return mash list of categories without passing any parameters", :vcr do
8
+ client.categories.equal? Hashie::Mash
9
+ end
10
+
11
+ it "should return an array of categories", :vcr do
12
+ client.categories.categories.equal? Array
13
+ end
14
+
15
+ end
@@ -0,0 +1,15 @@
1
+ # encoding: utf-8
2
+ require "spec_helper"
3
+
4
+ describe Sqoot::Click do
5
+ let(:client) { Sqoot::Client.new }
6
+
7
+ it "should return mash list of clicks without passing any parameters", :vcr do
8
+ client.clicks.equal? Hashie::Mash
9
+ end
10
+
11
+ it "should return an array of clicks", :vcr do
12
+ client.clicks.categories.equal? Array
13
+ end
14
+
15
+ end
@@ -0,0 +1,12 @@
1
+ # encoding: utf-8
2
+ require "spec_helper"
3
+
4
+ describe Sqoot::Client do
5
+
6
+ it "should return Faraday::Connection" do
7
+ params = {}
8
+ client_with_faraday_connection = Sqoot::Client.new
9
+ client_with_faraday_connection.connection.equal? Faraday::Connection
10
+ end
11
+
12
+ end
@@ -0,0 +1,15 @@
1
+ # encoding: utf-8
2
+ require "spec_helper"
3
+
4
+ describe Sqoot::Commission do
5
+ let(:client) { Sqoot::Client.new }
6
+
7
+ it "should return mash list of commissions without passing any parameters", :vcr do
8
+ client.commissions.equal? Hashie::Mash
9
+ end
10
+
11
+ it "should return an array of commissions", :vcr do
12
+ client.commissions.categories.equal? Array
13
+ end
14
+
15
+ end
@@ -0,0 +1,21 @@
1
+ # encoding: utf-8
2
+ require "spec_helper"
3
+
4
+ describe Sqoot::Offer do
5
+ let(:client) { Sqoot::Client.new }
6
+
7
+ it "should return mash list of offers without passing any parameters", :vcr do
8
+ client.offers.equal? Hashie::Mash
9
+ end
10
+
11
+ it "should return an array of offers", :vcr do
12
+ client.offers.offers.equal? Array
13
+ end
14
+
15
+ it "should return a list of offers given a location parameter", :vcr do
16
+ offers_on_location = client.offers(:location => '12345')
17
+ offers_on_location.equal? Hashie::Mash
18
+ offers_on_location.offers.equal? Array
19
+ end
20
+
21
+ end
@@ -0,0 +1,15 @@
1
+ # encoding: utf-8
2
+ require "spec_helper"
3
+
4
+ describe Sqoot::Provider do
5
+ let(:client) { Sqoot::Client.new }
6
+
7
+ it "should return a mash list of providers" do
8
+ client.providers.equal? Hashie::Mash
9
+ end
10
+
11
+ it "should return an array of providers" do
12
+ client.providers.providers.equal? Array
13
+ end
14
+
15
+ end
@@ -0,0 +1,20 @@
1
+ # encoding: utf-8
2
+ require "spec_helper"
3
+
4
+ describe Sqoot do
5
+
6
+ let(:client) { Sqoot::Client.new }
7
+
8
+ it "should configure with affiliate_token or authentication_token" do
9
+ client.affiliate_token == 'affiliate_token'
10
+ end
11
+
12
+ it "should configure with authentication_token" do
13
+ client.authentication_token == 'authentication_token'
14
+ end
15
+
16
+ it "should use HTTP API endpoint" do
17
+ client.api_url.should == "http://api.sqoot.com"
18
+ end
19
+
20
+ end
@@ -0,0 +1,33 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/sqoot/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["Julius F", "Wynn Netherland"]
6
+ gem.email = ["baldrailers@gmail.com", "wynn.netherland@gmail.com"]
7
+ gem.description = %q{Wrapper for Sqoot API. Using FaradayMiddleware}
8
+ gem.summary = %q{Wrapper for Sqoot API}
9
+ gem.homepage = "https://github.com/causemetric/sqoot"
10
+
11
+ gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
12
+ gem.files = `git ls-files`.split("\n")
13
+ gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
14
+ gem.name = "sqoot"
15
+ gem.require_paths = ["lib"]
16
+ gem.version = Sqoot::VERSION
17
+
18
+ gem.add_runtime_dependency "faraday", "~> 0.7.5"
19
+ gem.add_runtime_dependency "faraday_middleware", "~> 0.8.4"
20
+ gem.add_runtime_dependency "hashie", "~> 1.2.0"
21
+ gem.add_runtime_dependency "multi_json", "~> 1.0.4"
22
+
23
+ gem.add_development_dependency "rspec", "~> 2.8.0"
24
+ gem.add_development_dependency "guard-rspec", "~> 0.6.0"
25
+ gem.add_development_dependency "fakeweb", "~> 1.3.0"
26
+ gem.add_development_dependency "jnunemaker-matchy", "~> 0.4.0"
27
+ gem.add_development_dependency "json_pure", "~> 1.6.5"
28
+ gem.add_development_dependency "rake", "~> 0.9.2.2"
29
+ gem.add_development_dependency "shoulda", "~> 2.11.3"
30
+ gem.add_development_dependency "vcr", "~> 2.0.0.rc1"
31
+ gem.add_development_dependency "simplecov", "~> 0.5.4"
32
+ gem.add_development_dependency "simplecov-rcov", "~> 0.2.3"
33
+ end
metadata ADDED
@@ -0,0 +1,254 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sqoot
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Julius F
9
+ - Wynn Netherland
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2012-03-21 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: faraday
17
+ requirement: &70256631967720 !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ~>
21
+ - !ruby/object:Gem::Version
22
+ version: 0.7.5
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: *70256631967720
26
+ - !ruby/object:Gem::Dependency
27
+ name: faraday_middleware
28
+ requirement: &70256631967000 !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 0.8.4
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: *70256631967000
37
+ - !ruby/object:Gem::Dependency
38
+ name: hashie
39
+ requirement: &70256631966280 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ~>
43
+ - !ruby/object:Gem::Version
44
+ version: 1.2.0
45
+ type: :runtime
46
+ prerelease: false
47
+ version_requirements: *70256631966280
48
+ - !ruby/object:Gem::Dependency
49
+ name: multi_json
50
+ requirement: &70256631965620 !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ~>
54
+ - !ruby/object:Gem::Version
55
+ version: 1.0.4
56
+ type: :runtime
57
+ prerelease: false
58
+ version_requirements: *70256631965620
59
+ - !ruby/object:Gem::Dependency
60
+ name: rspec
61
+ requirement: &70256631964940 !ruby/object:Gem::Requirement
62
+ none: false
63
+ requirements:
64
+ - - ~>
65
+ - !ruby/object:Gem::Version
66
+ version: 2.8.0
67
+ type: :development
68
+ prerelease: false
69
+ version_requirements: *70256631964940
70
+ - !ruby/object:Gem::Dependency
71
+ name: guard-rspec
72
+ requirement: &70256631964220 !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 0.6.0
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: *70256631964220
81
+ - !ruby/object:Gem::Dependency
82
+ name: fakeweb
83
+ requirement: &70256631963500 !ruby/object:Gem::Requirement
84
+ none: false
85
+ requirements:
86
+ - - ~>
87
+ - !ruby/object:Gem::Version
88
+ version: 1.3.0
89
+ type: :development
90
+ prerelease: false
91
+ version_requirements: *70256631963500
92
+ - !ruby/object:Gem::Dependency
93
+ name: jnunemaker-matchy
94
+ requirement: &70256631963040 !ruby/object:Gem::Requirement
95
+ none: false
96
+ requirements:
97
+ - - ~>
98
+ - !ruby/object:Gem::Version
99
+ version: 0.4.0
100
+ type: :development
101
+ prerelease: false
102
+ version_requirements: *70256631963040
103
+ - !ruby/object:Gem::Dependency
104
+ name: json_pure
105
+ requirement: &70256631962580 !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 1.6.5
111
+ type: :development
112
+ prerelease: false
113
+ version_requirements: *70256631962580
114
+ - !ruby/object:Gem::Dependency
115
+ name: rake
116
+ requirement: &70256631962120 !ruby/object:Gem::Requirement
117
+ none: false
118
+ requirements:
119
+ - - ~>
120
+ - !ruby/object:Gem::Version
121
+ version: 0.9.2.2
122
+ type: :development
123
+ prerelease: false
124
+ version_requirements: *70256631962120
125
+ - !ruby/object:Gem::Dependency
126
+ name: shoulda
127
+ requirement: &70256631991580 !ruby/object:Gem::Requirement
128
+ none: false
129
+ requirements:
130
+ - - ~>
131
+ - !ruby/object:Gem::Version
132
+ version: 2.11.3
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: *70256631991580
136
+ - !ruby/object:Gem::Dependency
137
+ name: vcr
138
+ requirement: &70256631991020 !ruby/object:Gem::Requirement
139
+ none: false
140
+ requirements:
141
+ - - ~>
142
+ - !ruby/object:Gem::Version
143
+ version: 2.0.0.rc1
144
+ type: :development
145
+ prerelease: false
146
+ version_requirements: *70256631991020
147
+ - !ruby/object:Gem::Dependency
148
+ name: simplecov
149
+ requirement: &70256631990480 !ruby/object:Gem::Requirement
150
+ none: false
151
+ requirements:
152
+ - - ~>
153
+ - !ruby/object:Gem::Version
154
+ version: 0.5.4
155
+ type: :development
156
+ prerelease: false
157
+ version_requirements: *70256631990480
158
+ - !ruby/object:Gem::Dependency
159
+ name: simplecov-rcov
160
+ requirement: &70256631989780 !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - ~>
164
+ - !ruby/object:Gem::Version
165
+ version: 0.2.3
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: *70256631989780
169
+ description: Wrapper for Sqoot API. Using FaradayMiddleware
170
+ email:
171
+ - baldrailers@gmail.com
172
+ - wynn.netherland@gmail.com
173
+ executables: []
174
+ extensions: []
175
+ extra_rdoc_files: []
176
+ files:
177
+ - .gitignore
178
+ - .rspec
179
+ - .rvmrc
180
+ - Gemfile
181
+ - Guardfile
182
+ - LICENSE
183
+ - README.md
184
+ - Rakefile
185
+ - lib/sqoot.rb
186
+ - lib/sqoot/category.rb
187
+ - lib/sqoot/click.rb
188
+ - lib/sqoot/client.rb
189
+ - lib/sqoot/commission.rb
190
+ - lib/sqoot/offer.rb
191
+ - lib/sqoot/provider.rb
192
+ - lib/sqoot/request.rb
193
+ - lib/sqoot/response/parse_gzip.rb
194
+ - lib/sqoot/version.rb
195
+ - spec/cassettes/Sqoot_Category/should_return_an_array_of_categories.yml
196
+ - spec/cassettes/Sqoot_Category/should_return_mash_list_of_categories_without_passing_any_parameters.yml
197
+ - spec/cassettes/Sqoot_Click/should_return_an_array_of_clicks.yml
198
+ - spec/cassettes/Sqoot_Click/should_return_mash_list_of_clicks_without_passing_any_parameters.yml
199
+ - spec/cassettes/Sqoot_Commission/should_return_an_array_of_commissions.yml
200
+ - spec/cassettes/Sqoot_Commission/should_return_mash_list_of_commissions_without_passing_any_parameters.yml
201
+ - spec/cassettes/Sqoot_Offer/should_return_a_list_of_offers_given_a_location_parameter.yml
202
+ - spec/cassettes/Sqoot_Offer/should_return_an_array_of_offers.yml
203
+ - spec/cassettes/Sqoot_Offer/should_return_mash_list_of_offers_without_passing_any_parameters.yml
204
+ - spec/spec_helper.rb
205
+ - spec/sqoot/category_spec.rb
206
+ - spec/sqoot/click_spec.rb
207
+ - spec/sqoot/client_spec.rb
208
+ - spec/sqoot/commission_spec.rb
209
+ - spec/sqoot/offer_spec.rb
210
+ - spec/sqoot/provider_spec.rb
211
+ - spec/sqoot_spec.rb
212
+ - sqoot.gemspec
213
+ homepage: https://github.com/causemetric/sqoot
214
+ licenses: []
215
+ post_install_message:
216
+ rdoc_options: []
217
+ require_paths:
218
+ - lib
219
+ required_ruby_version: !ruby/object:Gem::Requirement
220
+ none: false
221
+ requirements:
222
+ - - ! '>='
223
+ - !ruby/object:Gem::Version
224
+ version: '0'
225
+ required_rubygems_version: !ruby/object:Gem::Requirement
226
+ none: false
227
+ requirements:
228
+ - - ! '>='
229
+ - !ruby/object:Gem::Version
230
+ version: '0'
231
+ requirements: []
232
+ rubyforge_project:
233
+ rubygems_version: 1.8.10
234
+ signing_key:
235
+ specification_version: 3
236
+ summary: Wrapper for Sqoot API
237
+ test_files:
238
+ - spec/cassettes/Sqoot_Category/should_return_an_array_of_categories.yml
239
+ - spec/cassettes/Sqoot_Category/should_return_mash_list_of_categories_without_passing_any_parameters.yml
240
+ - spec/cassettes/Sqoot_Click/should_return_an_array_of_clicks.yml
241
+ - spec/cassettes/Sqoot_Click/should_return_mash_list_of_clicks_without_passing_any_parameters.yml
242
+ - spec/cassettes/Sqoot_Commission/should_return_an_array_of_commissions.yml
243
+ - spec/cassettes/Sqoot_Commission/should_return_mash_list_of_commissions_without_passing_any_parameters.yml
244
+ - spec/cassettes/Sqoot_Offer/should_return_a_list_of_offers_given_a_location_parameter.yml
245
+ - spec/cassettes/Sqoot_Offer/should_return_an_array_of_offers.yml
246
+ - spec/cassettes/Sqoot_Offer/should_return_mash_list_of_offers_without_passing_any_parameters.yml
247
+ - spec/spec_helper.rb
248
+ - spec/sqoot/category_spec.rb
249
+ - spec/sqoot/click_spec.rb
250
+ - spec/sqoot/client_spec.rb
251
+ - spec/sqoot/commission_spec.rb
252
+ - spec/sqoot/offer_spec.rb
253
+ - spec/sqoot/provider_spec.rb
254
+ - spec/sqoot_spec.rb