affilinet 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +18 -0
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/Gemfile +3 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +29 -0
  8. data/Rakefile +11 -0
  9. data/affilinet.gemspec +31 -0
  10. data/lib/affilinet.rb +11 -0
  11. data/lib/affilinet/client.rb +86 -0
  12. data/lib/affilinet/middleware/mash.rb +21 -0
  13. data/lib/affilinet/middleware/mashify.rb +9 -0
  14. data/lib/affilinet/middleware/parse_json.rb +15 -0
  15. data/lib/affilinet/version.rb +3 -0
  16. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/_categories/performs_the_GET_request_to_the_correct_endpoint.yml +46 -0
  17. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/_categories/returns_a_Affilinet_Middleware_Mash.yml +50 -0
  18. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/_products/returns_a_Affilinet_Middleware_Mash.yml +156 -0
  19. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/_properties/returns_a_Affilinet_Middleware_Mash.yml +46 -0
  20. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/_search/returns_a_Affilinet_Middleware_Mash.yml +627 -0
  21. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/_shops/returns_a_Affilinet_Middleware_Mash.yml +51 -0
  22. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/categories/performs_the_GET_request_to_the_correct_endpoint.yml +50 -0
  23. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/raises_Error_on_wrong_API_requests.yml +37 -0
  24. data/spec/cassettes/Affilinet_Client/initialized_with_credentials/raises_Faraday_Error_ParsingError_on_wrong_API_requests.yml +37 -0
  25. data/spec/lib/client_spec.rb +98 -0
  26. data/spec/spec_helper.rb +25 -0
  27. metadata +206 -0
@@ -0,0 +1,51 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://product-api.affili.net/V3/productservice.svc/JSON/GetShopList?CurrentPage&LogoScale&PageSize&Password=1TuKEGkOJJ24dN07ByOy&Query&UpdatedAfter&publisherId=580442
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
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
+ Date:
22
+ - Sat, 15 Feb 2014 18:02:11 GMT
23
+ Server:
24
+ - Microsoft-IIS/6.0
25
+ X-Powered-By:
26
+ - ASP.NET
27
+ X-Aspnet-Version:
28
+ - 4.0.30319
29
+ Content-Length:
30
+ - '485'
31
+ Cache-Control:
32
+ - private
33
+ Content-Type:
34
+ - application/json
35
+ body:
36
+ encoding: ASCII-8BIT
37
+ string: !binary |-
38
+ 77u/ew0KICAiR2V0U2hvcExpc3RTdW1tYXJ5Ijogew0KICAgICJSZWNvcmRz
39
+ IjogMSwNCiAgICAiVG90YWxSZWNvcmRzIjogMSwNCiAgICAiVG90YWxQYWdl
40
+ cyI6IDEsDQogICAgIkN1cnJlbnRQYWdlIjogMQ0KICB9LA0KICAiU2hvcHMi
41
+ OiBbDQogICAgew0KICAgICAgIlNob3BJZCI6IDE3NDgsDQogICAgICAiUHJv
42
+ Z3JhbUlkIjogODk5MSwNCiAgICAgICJTaG9wVGl0bGUiOiAiYWZmaWxpbmV0
43
+ IFNob3dDYXNlIiwNCiAgICAgICJMYXN0VXBkYXRlIjogIlwvRGF0ZSgxMzky
44
+ NDA0ODIwMDAwKzAxMDApXC8iLA0KICAgICAgIlNob3BMaW5rIjogImFmZmls
45
+ aS5uZXQiLA0KICAgICAgIlByb2R1Y3RDb3VudCI6IDMxMywNCiAgICAgICJM
46
+ b2dvIjogew0KICAgICAgICAiTG9nb1NjYWxlIjogIk5vTG9nbyIsDQogICAg
47
+ ICAgICJVUkwiOiAiIiwNCiAgICAgICAgIldpZHRoIjogMCwNCiAgICAgICAg
48
+ IkhlaWdodCI6IDANCiAgICAgIH0NCiAgICB9DQogIF0NCn0=
49
+ http_version:
50
+ recorded_at: Sat, 15 Feb 2014 18:02:11 GMT
51
+ recorded_with: VCR 2.8.0
@@ -0,0 +1,50 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://product-api.affili.net/V3/productservice.svc/JSON/GetCategoryList?Password=1TuKEGkOJJ24dN07ByOy&ShopId=0&publisherId=580442
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
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
+ Date:
22
+ - Sat, 15 Feb 2014 17:40:35 GMT
23
+ Server:
24
+ - Microsoft-IIS/6.0
25
+ X-Powered-By:
26
+ - ASP.NET
27
+ X-Aspnet-Version:
28
+ - 4.0.30319
29
+ Content-Length:
30
+ - '428'
31
+ Cache-Control:
32
+ - private
33
+ Content-Type:
34
+ - application/json
35
+ body:
36
+ encoding: ASCII-8BIT
37
+ string: !binary |-
38
+ 77u/ew0KICAiR2V0Q2F0ZWdvcnlMaXN0U3VtbWFyeSI6IHsNCiAgICAiUmVj
39
+ b3JkcyI6IDEsDQogICAgIlRvdGFsUmVjb3JkcyI6IDEsDQogICAgIlRvdGFs
40
+ UGFnZXMiOiAxLA0KICAgICJDdXJyZW50UGFnZSI6IDEsDQogICAgIlByb2dy
41
+ YW1JZCI6IDAsDQogICAgIlByb2dyYW1UaXRsZSI6ICJhZmZpbGluZXQiLA0K
42
+ ICAgICJTaG9wVGl0bGUiOiAiYWZmaWxpbmV0IiwNCiAgICAiU2hvcElkIjog
43
+ MA0KICB9LA0KICAiQ2F0ZWdvcmllcyI6IFsNCiAgICB7DQogICAgICAiSWQi
44
+ OiAxNCwNCiAgICAgICJJZFBhdGgiOiAiMTQiLA0KICAgICAgIlRpdGxlIjog
45
+ IkNsb3RoZXMgJiBBY2Nlc3NvcmllcyAiLA0KICAgICAgIlRpdGxlUGF0aCI6
46
+ ICJDbG90aGVzICYgQWNjZXNzb3JpZXMgIiwNCiAgICAgICJQcm9kdWN0Q291
47
+ bnQiOiAzMTMNCiAgICB9DQogIF0NCn0=
48
+ http_version:
49
+ recorded_at: Sat, 15 Feb 2014 17:40:35 GMT
50
+ recorded_with: VCR 2.8.0
@@ -0,0 +1,37 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://product-api.affili.net/V3/productservice.svc/JSON/SearchProducts?CategoryIds=&CurrentPage&ExcludeSubCategories&FQ&FacetFields=&FacetValueLimit&ImageScales=&LogoScales=&MaximumPrice&MinimumPrice&PageSize&Password=1TuKEGkOJJ24dN07ByOy&Query&ShopIdMode=Include&ShopIds=&SortBy&SortOrder=descending&UseAffilinetCategories&WithImageOnly&publisherId=580442
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
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: 400
19
+ message: Bad Request
20
+ headers:
21
+ Content-Length:
22
+ - '112'
23
+ Content-Type:
24
+ - application/json; charset=utf-8
25
+ Server:
26
+ - Microsoft-IIS/7.5
27
+ X-Powered-By:
28
+ - ASP.NET
29
+ Date:
30
+ - Sat, 15 Feb 2014 18:21:17 GMT
31
+ body:
32
+ encoding: UTF-8
33
+ string: '{"ErrorMessages":[{"Key":"2021950074","Value":"FilterQueries, CategoryIds
34
+ or Query should be set in request."}]}'
35
+ http_version:
36
+ recorded_at: Sat, 15 Feb 2014 18:21:18 GMT
37
+ recorded_with: VCR 2.8.0
@@ -0,0 +1,37 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://product-api.affili.net/V3/productservice.svc/JSON/SearchProducts?CategoryIds=&CurrentPage&ExcludeSubCategories&FQ&FacetFields=&FacetValueLimit&ImageScales=&LogoScales=&MaximumPrice&MinimumPrice&PageSize&Password=1TuKEGkOJJ24dN07ByOy&Query&ShopIdMode=Include&ShopIds=&SortBy&SortOrder=descending&UseAffilinetCategories&WithImageOnly&publisherId=580442
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
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: 400
19
+ message: Bad Request
20
+ headers:
21
+ Content-Length:
22
+ - '112'
23
+ Content-Type:
24
+ - application/json; charset=utf-8
25
+ Server:
26
+ - Microsoft-IIS/7.5
27
+ X-Powered-By:
28
+ - ASP.NET
29
+ Date:
30
+ - Sat, 15 Feb 2014 18:21:46 GMT
31
+ body:
32
+ encoding: UTF-8
33
+ string: '{"ErrorMessages":[{"Key":"2021950074","Value":"FilterQueries, CategoryIds
34
+ or Query should be set in request."}]}'
35
+ http_version:
36
+ recorded_at: Sat, 15 Feb 2014 18:21:46 GMT
37
+ recorded_with: VCR 2.8.0
@@ -0,0 +1,98 @@
1
+ require 'spec_helper'
2
+
3
+ describe Affilinet::Client, :vcr do
4
+ it 'raises ArgumentError if initialized with no options' do
5
+ expect do
6
+ Affilinet::Client.new
7
+ end.to raise_error ArgumentError
8
+ end
9
+
10
+ context 'initialized with credentials' do
11
+ subject { Affilinet::Client.new publisher_id: 580442, password: '1TuKEGkOJJ24dN07ByOy' }
12
+
13
+ it 'raises Faraday::Error::ParsingError on wrong API requests' do
14
+ expect do
15
+ subject.search
16
+ end.to raise_error Faraday::Error::ParsingError
17
+ end
18
+
19
+ describe '#connection' do
20
+ it 'is an instance of Faraday::Connection' do
21
+ expect(subject.connection).to be_an_instance_of Faraday::Connection
22
+ end
23
+ end
24
+
25
+ describe '#options' do
26
+ it 'includes publisher_id' do
27
+ expect(subject.options).to include(:publisher_id)
28
+ end
29
+
30
+ it 'includes password' do
31
+ expect(subject.options).to include(:password)
32
+ end
33
+ end
34
+
35
+ describe '#categories' do
36
+ it 'performs the GET request to the correct endpoint' do
37
+ expect(subject).to receive(:get).with('GetCategoryList', {'ShopId'=>0})
38
+ subject.categories
39
+ end
40
+
41
+ it 'returns a Affilinet::Middleware::Mash' do
42
+ expect(subject.categories).to be_an_instance_of Affilinet::Middleware::Mash
43
+ end
44
+ end
45
+
46
+ describe '#properties' do
47
+ it 'performs the GET request to the correct endpoint' do
48
+ expect(subject).to receive(:get).with('GetPropertyList', {'ShopId'=>1})
49
+ subject.properties 1
50
+ end
51
+
52
+ it 'returns a Affilinet::Middleware::Mash' do
53
+ expect(subject.properties 1748).to be_an_instance_of Affilinet::Middleware::Mash
54
+ end
55
+ end
56
+
57
+ describe '#shops' do
58
+ it 'performs the GET request to the correct endpoint' do
59
+ expect(subject).to receive(:get).with('GetShopList', {"LogoScale"=>nil,
60
+ "CurrentPage"=>nil, "PageSize"=>nil, "Query"=>nil, "UpdatedAfter"=>nil})
61
+ subject.shops
62
+ end
63
+
64
+ it 'returns a Affilinet::Middleware::Mash' do
65
+ expect(subject.shops).to be_an_instance_of Affilinet::Middleware::Mash
66
+ end
67
+ end
68
+
69
+ describe '#products' do
70
+ it 'performs the GET request to the correct endpoint' do
71
+ expect(subject).to receive(:get).with('GetProducts', {"ProductIds"=>"",
72
+ "ImageScales"=>"", "LogoScales"=>""})
73
+ subject.products
74
+ end
75
+
76
+ it 'returns a Affilinet::Middleware::Mash' do
77
+ expect(subject.products [580858761,580858759]).to be_an_instance_of Affilinet::Middleware::Mash
78
+ end
79
+ end
80
+
81
+ describe '#search' do
82
+ it 'performs the GET request to the correct endpoint' do
83
+ expect(subject).to receive(:get).with('SearchProducts', {"ShopIds"=>"",
84
+ "ShopIdMode"=>"Include", "Query"=>nil, "CategoryIds"=>"",
85
+ "UseAffilinetCategories"=>nil, "ExcludeSubCategories"=>nil,
86
+ "WithImageOnly"=>nil, "ImageScales"=>"", "LogoScales"=>"",
87
+ "CurrentPage"=>nil, "PageSize"=>nil, "MinimumPrice"=>nil,
88
+ "MaximumPrice"=>nil, "SortBy"=>nil, "SortOrder"=>"descending",
89
+ "FacetFields"=>"", "FacetValueLimit"=>nil, "FQ"=>nil})
90
+ subject.search
91
+ end
92
+
93
+ it 'returns a Affilinet::Middleware::Mash' do
94
+ expect(subject.search query: 'jeans').to be_an_instance_of Affilinet::Middleware::Mash
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,25 @@
1
+ require 'simplecov'
2
+
3
+ SimpleCov.start do
4
+ add_filter '/spec'
5
+ end if ENV["COVERAGE"]
6
+
7
+ require File.expand_path("../../lib/affilinet", __FILE__)
8
+ require 'rspec/autorun'
9
+ require 'affilinet'
10
+ require 'vcr'
11
+
12
+ VCR.configure do |c|
13
+ c.cassette_library_dir = 'spec/cassettes'
14
+ c.hook_into :webmock
15
+ c.configure_rspec_metadata!
16
+ end
17
+
18
+ RSpec.configure do |config|
19
+ config.expect_with :rspec do |c|
20
+ c.syntax = :expect
21
+ end
22
+
23
+ config.order = "random"
24
+ config.treat_symbols_as_metadata_keys_with_true_values = true
25
+ end
metadata ADDED
@@ -0,0 +1,206 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: affilinet
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Eduardo Sampaio
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-02-15 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: faraday
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: 0.8.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 0.8.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: faraday_middleware
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 0.8.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: 0.8.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: hashie
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: bundler
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '1.5'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: '1.5'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: vcr
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: webmock
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: simplecov
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ description: Gem to access the rest (actually only get but...) API of affilinet
140
+ email:
141
+ - eduardo@sampa.io
142
+ executables: []
143
+ extensions: []
144
+ extra_rdoc_files: []
145
+ files:
146
+ - .gitignore
147
+ - .ruby-gemset
148
+ - .ruby-version
149
+ - Gemfile
150
+ - LICENSE.txt
151
+ - README.md
152
+ - Rakefile
153
+ - affilinet.gemspec
154
+ - lib/affilinet.rb
155
+ - lib/affilinet/client.rb
156
+ - lib/affilinet/middleware/mash.rb
157
+ - lib/affilinet/middleware/mashify.rb
158
+ - lib/affilinet/middleware/parse_json.rb
159
+ - lib/affilinet/version.rb
160
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_categories/performs_the_GET_request_to_the_correct_endpoint.yml
161
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_categories/returns_a_Affilinet_Middleware_Mash.yml
162
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_products/returns_a_Affilinet_Middleware_Mash.yml
163
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_properties/returns_a_Affilinet_Middleware_Mash.yml
164
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_search/returns_a_Affilinet_Middleware_Mash.yml
165
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_shops/returns_a_Affilinet_Middleware_Mash.yml
166
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/categories/performs_the_GET_request_to_the_correct_endpoint.yml
167
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/raises_Error_on_wrong_API_requests.yml
168
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/raises_Faraday_Error_ParsingError_on_wrong_API_requests.yml
169
+ - spec/lib/client_spec.rb
170
+ - spec/spec_helper.rb
171
+ homepage: http://github.com/esampaio/affilinet
172
+ licenses:
173
+ - MIT
174
+ metadata: {}
175
+ post_install_message:
176
+ rdoc_options: []
177
+ require_paths:
178
+ - lib
179
+ required_ruby_version: !ruby/object:Gem::Requirement
180
+ requirements:
181
+ - - '>='
182
+ - !ruby/object:Gem::Version
183
+ version: '0'
184
+ required_rubygems_version: !ruby/object:Gem::Requirement
185
+ requirements:
186
+ - - '>='
187
+ - !ruby/object:Gem::Version
188
+ version: '0'
189
+ requirements: []
190
+ rubyforge_project:
191
+ rubygems_version: 2.0.3
192
+ signing_key:
193
+ specification_version: 4
194
+ summary: Gem to access the rest (actually only get but...) API of affilinet
195
+ test_files:
196
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_categories/performs_the_GET_request_to_the_correct_endpoint.yml
197
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_categories/returns_a_Affilinet_Middleware_Mash.yml
198
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_products/returns_a_Affilinet_Middleware_Mash.yml
199
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_properties/returns_a_Affilinet_Middleware_Mash.yml
200
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_search/returns_a_Affilinet_Middleware_Mash.yml
201
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/_shops/returns_a_Affilinet_Middleware_Mash.yml
202
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/categories/performs_the_GET_request_to_the_correct_endpoint.yml
203
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/raises_Error_on_wrong_API_requests.yml
204
+ - spec/cassettes/Affilinet_Client/initialized_with_credentials/raises_Faraday_Error_ParsingError_on_wrong_API_requests.yml
205
+ - spec/lib/client_spec.rb
206
+ - spec/spec_helper.rb