access 2.0.48 → 2.0.49
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.env.sample +8 -0
- data/.gitignore +1 -0
- data/Gemfile.lock +3 -1
- data/README.md +4 -0
- data/access.gemspec +1 -0
- data/bin/console +2 -1
- data/lib/access/api.rb +4 -4
- data/lib/access/favorite.rb +2 -2
- data/lib/access/version.rb +1 -1
- data/test/access/autocomplete_test.rb +5 -5
- data/test/access/campaign_test.rb +3 -3
- data/test/access/category_test.rb +5 -5
- data/test/access/channel_test.rb +6 -6
- data/test/access/device_test.rb +4 -4
- data/test/access/favorite_test.rb +61 -54
- data/test/access/filter_test.rb +3 -3
- data/test/access/location_test.rb +4 -4
- data/test/access/member_test.rb +3 -3
- data/test/access/oauth_application_test.rb +6 -7
- data/test/access/offer_test.rb +9 -9
- data/test/access/redeem_test.rb +3 -3
- data/test/access/redemption_test.rb +4 -5
- data/test/access/report_test.rb +14 -14
- data/test/access/spot_test.rb +4 -4
- data/test/access/store_test.rb +5 -5
- data/test/access/token_test.rb +3 -3
- data/test/access/user_test.rb +19 -15
- data/test/access/verify_test.rb +2 -2
- data/test/test_helper.rb +6 -3
- data/test/vcr/cassettes/{autocomplete_search_categories.yml → autocomplete/search_categories.yml} +8 -8
- data/test/vcr/cassettes/autocomplete/search_first.yml +94 -0
- data/test/vcr/cassettes/autocomplete/search_locations.yml +71 -0
- data/test/vcr/cassettes/{autocomplete_search_offers.yml → autocomplete/search_offers.yml} +10 -10
- data/test/vcr/cassettes/{autocomplete_search_stores.yml → autocomplete/search_stores.yml} +11 -11
- data/test/vcr/cassettes/campaign/search.yml +1021 -0
- data/test/vcr/cassettes/{category_find.yml → category/find.yml} +29 -29
- data/test/vcr/cassettes/category/search.yml +1588 -0
- data/test/vcr/cassettes/{location_search_fail_member_key.yml → category/search_fail_member_key.yml} +6 -6
- data/test/vcr/cassettes/{category_search.yml → category/search_first.yml} +739 -787
- data/test/vcr/cassettes/{subcategory_find.yml → category/subcategory_find.yml} +28 -28
- data/test/vcr/cassettes/{channel_search.yml → channel/search.yml} +3 -3
- data/test/vcr/cassettes/favorite/create_generic_with_offer.yml +126 -0
- data/test/vcr/cassettes/{favorite_create_offer.yml → favorite/create_location.yml} +7 -7
- data/test/vcr/cassettes/favorite/create_offer.yml +126 -0
- data/test/vcr/cassettes/favorite/create_store.yml +94 -0
- data/test/vcr/cassettes/favorite/delete_generic_with_offer.yml +171 -0
- data/test/vcr/cassettes/favorite/delete_location.yml +203 -0
- data/test/vcr/cassettes/favorite/delete_offer.yml +294 -0
- data/test/vcr/cassettes/favorite/delete_store.yml +258 -0
- data/test/vcr/cassettes/favorite/find_generic_with_offer.yml +323 -0
- data/test/vcr/cassettes/favorite/find_location.yml +158 -0
- data/test/vcr/cassettes/favorite/find_offer.yml +323 -0
- data/test/vcr/cassettes/favorite/find_store.yml +213 -0
- data/test/vcr/cassettes/{favorite_one_of_everything.yml → favorite/one_of_everything.yml} +181 -58
- data/test/vcr/cassettes/favorite/search.yml +346 -0
- data/test/vcr/cassettes/favorite/search_bad_member.yml +66 -0
- data/test/vcr/cassettes/favorite/search_locations.yml +113 -0
- data/test/vcr/cassettes/favorite/search_no_favorites.yml +66 -0
- data/test/vcr/cassettes/favorite/search_offers.yml +200 -0
- data/test/vcr/cassettes/favorite/search_stores.yml +178 -0
- data/test/vcr/cassettes/filter/find.yml +66 -0
- data/test/vcr/cassettes/{filter_search.yml → filter/search.yml} +12 -12
- data/test/vcr/cassettes/filter/search_first.yml +75 -0
- data/test/vcr/cassettes/location/find.yml +680 -0
- data/test/vcr/cassettes/location/search.yml +123 -0
- data/test/vcr/cassettes/{category_search_fail_member_key.yml → location/search_fail_member_key.yml} +6 -6
- data/test/vcr/cassettes/location/search_first.yml +123 -0
- data/test/vcr/cassettes/{member_show_failure.yml → member/show_failure.yml} +3 -3
- data/test/vcr/cassettes/{member_show_success.yml → member/show_success.yml} +5 -5
- data/test/vcr/cassettes/{favorite_delete_generic_with_offer.yml → member/update_success.yml} +7 -7
- data/test/vcr/cassettes/{member_authenticate_cvt_failure.yml → member_authenticate/cvt_failure.yml} +4 -4
- data/test/vcr/cassettes/{member_authenticate_cvt_success.yml → member_authenticate/cvt_success.yml} +6 -6
- data/test/vcr/cassettes/{member_authenticate_failure.yml → member_authenticate/failure.yml} +4 -4
- data/test/vcr/cassettes/{member_authenticate_member_key_failure.yml → member_authenticate/member_key_failure.yml} +3 -3
- data/test/vcr/cassettes/{member_authenticate_member_key_success.yml → member_authenticate/member_key_success.yml} +3 -3
- data/test/vcr/cassettes/{member_authenticate_success.yml → member_authenticate/success.yml} +5 -5
- data/test/vcr/cassettes/{member_device_search_failure.yml → member_device/search_failure.yml} +3 -3
- data/test/vcr/cassettes/member_device/search_success.yml +63 -0
- data/test/vcr/cassettes/{oauth_application_find.yml → oauth_application/find.yml} +19 -15
- data/test/vcr/cassettes/{oauth_application_search.yml → oauth_application/search.yml} +23 -19
- data/test/vcr/cassettes/oauth_application/search_oauth_first.yml +95 -0
- data/test/vcr/cassettes/oauth_application/token_find.yml +95 -0
- data/test/vcr/cassettes/oauth_application/token_search.yml +720 -0
- data/test/vcr/cassettes/oauth_application/token_search_tokens_first.yml +242 -0
- data/test/vcr/cassettes/offer/find.yml +158 -0
- data/test/vcr/cassettes/{offer_find_uses_remaining.yml → offer/find_uses_remaining.yml} +10 -10
- data/test/vcr/cassettes/offer/find_with_offer_uses_remaining.yml +158 -0
- data/test/vcr/cassettes/offer/search.yml +159 -0
- data/test/vcr/cassettes/{offer_search_fail_member_key.yml → offer/search_fail_member_key.yml} +6 -6
- data/test/vcr/cassettes/offer/search_first.yml +159 -0
- data/test/vcr/cassettes/offer/search_for_redeem.yml +159 -0
- data/test/vcr/cassettes/offer/with_aggregations.yml +1046 -0
- data/test/vcr/cassettes/redeem/offer_no_redeem_type.yml +36 -0
- data/test/vcr/cassettes/redeem/offer_with_redeem_type.yml +36 -0
- data/test/vcr/cassettes/redeem/redeem_offer_with_redeem_type_for_uses_remaining_test.yml +36 -0
- data/test/vcr/cassettes/redemption/find_by_member_key.yml +133 -0
- data/test/vcr/cassettes/redemption/search_by_member_key.yml +495 -0
- data/test/vcr/cassettes/redemption/search_by_member_key_first.yml +495 -0
- data/test/vcr/cassettes/{search_redemption_by_member_key_without_redemptions.yml → redemption/search_by_member_key_without_redemptions.yml} +6 -6
- data/test/vcr/cassettes/report/all_usage.yml +156 -0
- data/test/vcr/cassettes/{member_location_frequent.yml → report/member_location_frequent.yml} +6 -10
- data/test/vcr/cassettes/{member_location_recent.yml → report/member_location_recent.yml} +6 -6
- data/test/vcr/cassettes/{member_query_frequent.yml → report/member_query_frequent.yml} +6 -6
- data/test/vcr/cassettes/{member_query_recent.yml → report/member_query_recent.yml} +6 -6
- data/test/vcr/cassettes/report/usage.yml +156 -0
- data/test/vcr/cassettes/report/usage_other.yml +156 -0
- data/test/vcr/cassettes/{spot_find.yml → spot/find.yml} +3 -3
- data/test/vcr/cassettes/spot/search_by_campaign.yml +2727 -0
- data/test/vcr/cassettes/spot/search_by_channel.yml +956 -0
- data/test/vcr/cassettes/spot/search_by_channel_first.yml +956 -0
- data/test/vcr/cassettes/{store_find.yml → store/find.yml} +17 -17
- data/test/vcr/cassettes/store/national_stores.yml +3057 -0
- data/test/vcr/cassettes/{store_search.yml → store/search.yml} +21 -21
- data/test/vcr/cassettes/{store_search_fail_member_key.yml → store/search_fail_member_key.yml} +6 -6
- data/test/vcr/cassettes/store/search_first.yml +95 -0
- data/test/vcr/cassettes/token/find.yml +107 -0
- data/test/vcr/cassettes/token/get_first_token.yml +121 -0
- data/test/vcr/cassettes/token/search.yml +121 -0
- data/test/vcr/cassettes/{user_register_failure.yml → user_register/failure.yml} +4 -4
- data/test/vcr/cassettes/user_register/success.yml +101 -0
- data/test/vcr/cassettes/{user_update_success.yml → user_update/success.yml} +8 -6
- data/test/vcr/cassettes/{verify_filter.yml → verify/filter.yml} +41 -124
- data/test/vcr/cassettes/{verify_token.yml → verify/token.yml} +14 -11
- metadata +205 -174
- data/test/vcr/cassettes/all_usage.yml +0 -84
- data/test/vcr/cassettes/autocomplete_search.yml +0 -84
- data/test/vcr/cassettes/autocomplete_search_locations.yml +0 -66
- data/test/vcr/cassettes/campaign_find.yml +0 -232
- data/test/vcr/cassettes/campaign_search.yml +0 -1258
- data/test/vcr/cassettes/channel_find.yml +0 -57
- data/test/vcr/cassettes/favorite_create_generic_with_offer.yml +0 -93
- data/test/vcr/cassettes/favorite_create_location.yml +0 -91
- data/test/vcr/cassettes/favorite_create_store.yml +0 -92
- data/test/vcr/cassettes/favorite_delete_location.yml +0 -94
- data/test/vcr/cassettes/favorite_delete_offer.yml +0 -93
- data/test/vcr/cassettes/favorite_delete_store.yml +0 -94
- data/test/vcr/cassettes/favorite_find_generic_with_offer.yml +0 -93
- data/test/vcr/cassettes/favorite_find_location.yml +0 -179
- data/test/vcr/cassettes/favorite_find_offer.yml +0 -93
- data/test/vcr/cassettes/favorite_find_store.yml +0 -181
- data/test/vcr/cassettes/favorite_search.yml +0 -131
- data/test/vcr/cassettes/favorite_search_bad_member.yml +0 -49
- data/test/vcr/cassettes/favorite_search_locations.yml +0 -99
- data/test/vcr/cassettes/favorite_search_no_favorites.yml +0 -49
- data/test/vcr/cassettes/favorite_search_offers.yml +0 -169
- data/test/vcr/cassettes/favorite_search_stores.yml +0 -92
- data/test/vcr/cassettes/filter_find.yml +0 -174
- data/test/vcr/cassettes/find_redemption_by_member_key.yml +0 -131
- data/test/vcr/cassettes/location_find.yml +0 -505
- data/test/vcr/cassettes/location_search.yml +0 -123
- data/test/vcr/cassettes/member_device_search_success.yml +0 -48
- data/test/vcr/cassettes/member_update_success.yml +0 -183
- data/test/vcr/cassettes/national_stores.yml +0 -1914
- data/test/vcr/cassettes/oauth_application_token_find.yml +0 -92
- data/test/vcr/cassettes/oauth_application_token_search.yml +0 -95
- data/test/vcr/cassettes/offer_find.yml +0 -149
- data/test/vcr/cassettes/offer_find_with_offer_uses_remaining.yml +0 -149
- data/test/vcr/cassettes/offer_search.yml +0 -148
- data/test/vcr/cassettes/offer_with_aggregations.yml +0 -934
- data/test/vcr/cassettes/redeem_offer_no_redeem_type.yml +0 -38
- data/test/vcr/cassettes/redeem_offer_with_redeem_type.yml +0 -38
- data/test/vcr/cassettes/redeem_offer_with_redeem_type_for_uses_remaining_test.yml +0 -38
- data/test/vcr/cassettes/search_redemption_by_member_key.yml +0 -762
- data/test/vcr/cassettes/spot_search_by_campaign.yml +0 -2954
- data/test/vcr/cassettes/spot_search_by_channel.yml +0 -1192
- data/test/vcr/cassettes/token_find.yml +0 -99
- data/test/vcr/cassettes/token_get_first_token.yml +0 -113
- data/test/vcr/cassettes/token_search.yml +0 -113
- data/test/vcr/cassettes/usage.yml +0 -84
- data/test/vcr/cassettes/usage_other.yml +0 -84
- data/test/vcr/cassettes/user_register_success.yml +0 -50
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 28c658968f7aed7074f50c1f9712b07be7d94373
|
4
|
+
data.tar.gz: 0850ae0bcda8af6d01dc9f5e85fe1dede1e4c2fb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 21ae743167223044c25ab811350f3f386c038582ecebf8d9acf618d4edd7b7ca0c8f4d66b2804290c708a3bb93aa5bb30bc51085e38bda460ec2d24217f4ddbb
|
7
|
+
data.tar.gz: dc959528e17003912c40d423b55d97668657526a307624aefeec5dc374b95d91f1a2173d54cd605dd1348272602d4a8bce57590a1fabb29ee7f8d3335c579df7
|
data/.env.sample
ADDED
@@ -0,0 +1,8 @@
|
|
1
|
+
ACCESS_TOKEN="**your_access_token**"
|
2
|
+
TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS="**for tests if you know this token or just don't re-record these test**"
|
3
|
+
ACCESS_ENVIRONMENT="stage|demo|production default demo"
|
4
|
+
ACCESS_RETURN_JSON="true|false default false"
|
5
|
+
ACCESS_HASHIFY="true|false default false"
|
6
|
+
ACCESS_TIMEOUT="integer default 10"
|
7
|
+
ACCESS_DEBUG_OUTPUT="true|false default false"
|
8
|
+
RECORD="For Tests set to new_episodes, none or all default new_episodes"
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
access (2.0.
|
4
|
+
access (2.0.49)
|
5
5
|
hashie (~> 3.3.1)
|
6
6
|
httparty (~> 0.13.3)
|
7
7
|
|
@@ -22,6 +22,7 @@ GEM
|
|
22
22
|
docile (1.1.5)
|
23
23
|
domain_name (0.5.20160128)
|
24
24
|
unf (>= 0.0.5, < 1.0.0)
|
25
|
+
dotenv (2.1.0)
|
25
26
|
ffi (1.9.10)
|
26
27
|
formatador (0.2.5)
|
27
28
|
guard (2.13.0)
|
@@ -100,6 +101,7 @@ DEPENDENCIES
|
|
100
101
|
access!
|
101
102
|
bundler (~> 1.7)
|
102
103
|
coveralls
|
104
|
+
dotenv
|
103
105
|
guard
|
104
106
|
guard-minitest
|
105
107
|
minitest
|
data/README.md
CHANGED
@@ -279,6 +279,10 @@ Access::OauthApplication.delete **application_id**, options
|
|
279
279
|
|
280
280
|
`ACCESS_TOKEN=*your-access-token** guard`
|
281
281
|
|
282
|
+
or add your environment variables to a `.env` file and run the test simply with `rake` or `guard`
|
283
|
+
|
282
284
|
### Running the Gem in Console
|
283
285
|
|
284
286
|
`ACCESS_TOKEN=*your-access-token** ruby bin/console`
|
287
|
+
|
288
|
+
or add your environment variables to a `.env` file and run `ruby bin/console`
|
data/access.gemspec
CHANGED
@@ -29,6 +29,7 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.add_development_dependency "coveralls"
|
30
30
|
spec.add_development_dependency "simplecov"
|
31
31
|
spec.add_development_dependency "minitest-focus"
|
32
|
+
spec.add_development_dependency "dotenv"
|
32
33
|
|
33
34
|
spec.add_dependency "hashie", "~> 3.3.1"
|
34
35
|
spec.add_dependency "httparty", "~> 0.13.3"
|
data/bin/console
CHANGED
data/lib/access/api.rb
CHANGED
@@ -368,25 +368,25 @@ module Access
|
|
368
368
|
## Favorites
|
369
369
|
|
370
370
|
def favorites_search(options = {})
|
371
|
-
request.get("/members/#{options
|
371
|
+
request.get("/members/#{options.delete(:member_key)}/favorites/#{options.delete(:favorite_type)}", "report", options) do |response|
|
372
372
|
FavoriteResponse.new(response)
|
373
373
|
end
|
374
374
|
end
|
375
375
|
|
376
376
|
def favorites_find(resource_id, options = {})
|
377
|
-
request.get("/members/#{options
|
377
|
+
request.get("/members/#{options.delete(:member_key)}/favorites/#{options.delete(:favorite_type)}/#{resource_id}", "report", options) do |response|
|
378
378
|
FavoriteResponse.new(response)
|
379
379
|
end
|
380
380
|
end
|
381
381
|
|
382
382
|
def favorites_create(resource_id, options = {})
|
383
|
-
request.post("/members/#{options
|
383
|
+
request.post("/members/#{options.delete(:member_key)}/favorites/#{options.delete(:favorite_type)}/#{resource_id}", "mms", options) do |response|
|
384
384
|
FavoriteResponse.new(response)
|
385
385
|
end
|
386
386
|
end
|
387
387
|
|
388
388
|
def favorites_delete(resource_id, options = {})
|
389
|
-
request.delete("/members/#{options
|
389
|
+
request.delete("/members/#{options.delete(:member_key)}/favorites/#{options.delete(:favorite_type)}/#{resource_id}", "mms", options) do |response|
|
390
390
|
FavoriteResponse.new(response)
|
391
391
|
end
|
392
392
|
end
|
data/lib/access/favorite.rb
CHANGED
@@ -59,9 +59,9 @@ module Access
|
|
59
59
|
|
60
60
|
# create
|
61
61
|
|
62
|
-
def self.create(
|
62
|
+
def self.create(resource_key, options = {})
|
63
63
|
# must pass in a favorite_type
|
64
|
-
Access::Api.new.favorites_create
|
64
|
+
Access::Api.new.favorites_create resource_key, options
|
65
65
|
end
|
66
66
|
|
67
67
|
def self.create_offer(offer_key, options = {})
|
data/lib/access/version.rb
CHANGED
@@ -3,7 +3,7 @@ require './test/test_helper'
|
|
3
3
|
class AutocompleteTest < Minitest::Test
|
4
4
|
|
5
5
|
def test_autocompletes_search
|
6
|
-
VCR.use_cassette('autocomplete
|
6
|
+
VCR.use_cassette('autocomplete/search_first') do
|
7
7
|
autocompletes_response = Access::Autocomplete.search(member_key: 'API_RUBY_GEM_TEST', per_page: 1)
|
8
8
|
assert autocompletes_response.success
|
9
9
|
assert_kind_of Access::AutocompleteResponse, autocompletes_response
|
@@ -16,7 +16,7 @@ class AutocompleteTest < Minitest::Test
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def test_autocompletes_search_offers
|
19
|
-
VCR.use_cassette('autocomplete
|
19
|
+
VCR.use_cassette('autocomplete/search_offers') do
|
20
20
|
autocompletes_response = Access::Autocomplete.search_offers(member_key: 'API_RUBY_GEM_TEST', per_page: 1)
|
21
21
|
assert autocompletes_response.success
|
22
22
|
assert_kind_of Array, autocompletes_response.suggestions.offers
|
@@ -25,7 +25,7 @@ class AutocompleteTest < Minitest::Test
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def test_autocompletes_search_stores
|
28
|
-
VCR.use_cassette('autocomplete
|
28
|
+
VCR.use_cassette('autocomplete/search_stores') do
|
29
29
|
autocompletes_response = Access::Autocomplete.search_stores(member_key: 'API_RUBY_GEM_TEST', per_page: 1)
|
30
30
|
assert autocompletes_response.success
|
31
31
|
assert_kind_of Array, autocompletes_response.suggestions.stores
|
@@ -34,7 +34,7 @@ class AutocompleteTest < Minitest::Test
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def test_autocompletes_search_locations
|
37
|
-
VCR.use_cassette('autocomplete
|
37
|
+
VCR.use_cassette('autocomplete/search_locations') do
|
38
38
|
autocompletes_response = Access::Autocomplete.search_locations(member_key: 'API_RUBY_GEM_TEST', per_page: 1)
|
39
39
|
assert autocompletes_response.success
|
40
40
|
assert_kind_of Array, autocompletes_response.suggestions.locations
|
@@ -43,7 +43,7 @@ class AutocompleteTest < Minitest::Test
|
|
43
43
|
end
|
44
44
|
|
45
45
|
def test_autocompletes_search_categories
|
46
|
-
VCR.use_cassette('autocomplete
|
46
|
+
VCR.use_cassette('autocomplete/search_categories') do
|
47
47
|
autocompletes_response = Access::Autocomplete.search_categories(member_key: 'API_RUBY_GEM_TEST', per_page: 1)
|
48
48
|
assert autocompletes_response.success
|
49
49
|
assert_kind_of Array, autocompletes_response.suggestions.categories
|
@@ -3,13 +3,13 @@ require './test/test_helper'
|
|
3
3
|
class CampaignTest < Minitest::Test
|
4
4
|
|
5
5
|
def get_first_campaign
|
6
|
-
VCR.use_cassette('campaign
|
6
|
+
VCR.use_cassette('campaign/search_first') do
|
7
7
|
@first_campaign = Access::Campaign.search(member_key: 'API_RUBY_GEM_TEST', channel_key: '20889899', api_environment: 'production').campaigns.first
|
8
8
|
end
|
9
9
|
end
|
10
10
|
|
11
11
|
def test_campaigns_search
|
12
|
-
VCR.use_cassette('campaign
|
12
|
+
VCR.use_cassette('campaign/search') do
|
13
13
|
campaigns_response = Access::Campaign.search(member_key: 'API_RUBY_GEM_TEST', channel_key: '20889899', api_environment: 'production')
|
14
14
|
assert campaigns_response.success
|
15
15
|
first_campaign = campaigns_response.campaigns.first
|
@@ -29,7 +29,7 @@ class CampaignTest < Minitest::Test
|
|
29
29
|
def test_campaigns_find
|
30
30
|
skip
|
31
31
|
get_first_campaign
|
32
|
-
VCR.use_cassette('campaign
|
32
|
+
VCR.use_cassette('campaign/find') do
|
33
33
|
campaigns_response = Access::Campaign.find(@first_campaign.key, member_key: 'API_RUBY_GEM_TEST', channel_key: '20889899', api_environment: 'production')
|
34
34
|
assert campaigns_response.success
|
35
35
|
assert_kind_of Access::CampaignResponse, campaigns_response
|
@@ -3,14 +3,14 @@ require './test/test_helper'
|
|
3
3
|
class CategoryTest < Minitest::Test
|
4
4
|
|
5
5
|
def get_first_category
|
6
|
-
VCR.use_cassette('category
|
6
|
+
VCR.use_cassette('category/search_first') do
|
7
7
|
@first_category = Access::Category.search(member_key: 'API_RUBY_GEM_TEST').categories.first
|
8
8
|
@first_subcategory = Access::Category.search(member_key: 'API_RUBY_GEM_TEST').categories.first.subcategories.first
|
9
9
|
end
|
10
10
|
end
|
11
11
|
|
12
12
|
def test_categories_search
|
13
|
-
VCR.use_cassette('category
|
13
|
+
VCR.use_cassette('category/search') do
|
14
14
|
categories_response = Access::Category.search(member_key: 'API_RUBY_GEM_TEST')
|
15
15
|
assert categories_response.success
|
16
16
|
first_category = categories_response.categories.first
|
@@ -24,7 +24,7 @@ class CategoryTest < Minitest::Test
|
|
24
24
|
|
25
25
|
def test_categories_find
|
26
26
|
get_first_category
|
27
|
-
VCR.use_cassette('category
|
27
|
+
VCR.use_cassette('category/find') do
|
28
28
|
categories_response = Access::Category.find(@first_category.category_key, member_key: 'API_RUBY_GEM_TEST')
|
29
29
|
assert categories_response.success
|
30
30
|
first_category = categories_response.categories.first
|
@@ -37,7 +37,7 @@ class CategoryTest < Minitest::Test
|
|
37
37
|
|
38
38
|
def test_subcategories_find
|
39
39
|
get_first_category
|
40
|
-
VCR.use_cassette('
|
40
|
+
VCR.use_cassette('category/subcategory_find') do
|
41
41
|
categories_response = Access::Category.find(@first_subcategory.category_key, member_key: 'API_RUBY_GEM_TEST')
|
42
42
|
assert categories_response.success
|
43
43
|
first_category = categories_response.categories.first
|
@@ -49,7 +49,7 @@ class CategoryTest < Minitest::Test
|
|
49
49
|
end
|
50
50
|
|
51
51
|
def test_categories_fail_member_key
|
52
|
-
VCR.use_cassette('category
|
52
|
+
VCR.use_cassette('category/search_fail_member_key') do
|
53
53
|
subcategories_response = Access::Category.search(query: 'pizza')
|
54
54
|
refute subcategories_response.success
|
55
55
|
assert_kind_of Access::CategoryResponse, subcategories_response
|
data/test/access/channel_test.rb
CHANGED
@@ -3,14 +3,14 @@ require './test/test_helper'
|
|
3
3
|
class ChannelTest < Minitest::Test
|
4
4
|
|
5
5
|
def get_first_channel
|
6
|
-
VCR.use_cassette('channel
|
7
|
-
@first_channel = Access::Channel.search(member_key: 'API_RUBY_GEM_TEST', api_environment: '
|
6
|
+
VCR.use_cassette('channel/search_first') do
|
7
|
+
@first_channel = Access::Channel.search(member_key: 'API_RUBY_GEM_TEST', api_environment: 'production').channels.first
|
8
8
|
end
|
9
9
|
end
|
10
10
|
|
11
11
|
def test_channels_search
|
12
|
-
VCR.use_cassette('channel
|
13
|
-
channels_response = Access::Channel.search(member_key: 'API_RUBY_GEM_TEST', api_environment: '
|
12
|
+
VCR.use_cassette('channel/search') do
|
13
|
+
channels_response = Access::Channel.search(member_key: 'API_RUBY_GEM_TEST', api_environment: 'production')
|
14
14
|
assert channels_response.success
|
15
15
|
first_channel = channels_response.channels.first
|
16
16
|
assert_kind_of Access::ChannelResponse, channels_response
|
@@ -23,8 +23,8 @@ class ChannelTest < Minitest::Test
|
|
23
23
|
def test_channels_find
|
24
24
|
skip
|
25
25
|
get_first_channel
|
26
|
-
VCR.use_cassette('channel
|
27
|
-
channels_response = Access::Channel.find(@first_channel.key, member_key: 'API_RUBY_GEM_TEST', api_environment: '
|
26
|
+
VCR.use_cassette('channel/find') do
|
27
|
+
channels_response = Access::Channel.find(@first_channel.key, member_key: 'API_RUBY_GEM_TEST', api_environment: 'production')
|
28
28
|
assert channels_response.success
|
29
29
|
assert_kind_of Access::ChannelResponse, channels_response
|
30
30
|
base_attributes = [:key, :channel_name, :channel_type, :channel_identifier, :channel_description, :links]
|
data/test/access/device_test.rb
CHANGED
@@ -3,7 +3,7 @@ require './test/test_helper'
|
|
3
3
|
class DeviceTest < Minitest::Test
|
4
4
|
|
5
5
|
def test_device_search_success
|
6
|
-
VCR.use_cassette('
|
6
|
+
VCR.use_cassette('member_device/search_success') do
|
7
7
|
request = Access::Device.search '226872', program_id: '2412', api_environment: 'stage'
|
8
8
|
assert request.success
|
9
9
|
assert_kind_of Access::DeviceResponse, request
|
@@ -12,7 +12,7 @@ class DeviceTest < Minitest::Test
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def test_device_search_failure
|
15
|
-
VCR.use_cassette('
|
15
|
+
VCR.use_cassette('member_device/search_failure') do
|
16
16
|
request = Access::Device.search '12345', program_id: '00112233', api_environment: 'stage'
|
17
17
|
assert_equal 404, request.status
|
18
18
|
assert_kind_of Access::DeviceResponse, request
|
@@ -22,7 +22,7 @@ class DeviceTest < Minitest::Test
|
|
22
22
|
|
23
23
|
def test_device_find_success
|
24
24
|
skip
|
25
|
-
VCR.use_cassette('
|
25
|
+
VCR.use_cassette('member_device/find_success') do
|
26
26
|
request = Access::Device.search '226872', udid: 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX', program_id: '2412', api_environment: 'stage'
|
27
27
|
assert request.success
|
28
28
|
assert_kind_of Access::DeviceResponse, request
|
@@ -32,7 +32,7 @@ class DeviceTest < Minitest::Test
|
|
32
32
|
|
33
33
|
def test_device_find_failure
|
34
34
|
skip
|
35
|
-
VCR.use_cassette('
|
35
|
+
VCR.use_cassette('member_device/find_failure') do
|
36
36
|
request = Access::Device.search '226872', udid: 'YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY', program_id: '2412', api_environment: 'stage'
|
37
37
|
assert_equal 404, request.status
|
38
38
|
assert_kind_of Access::DeviceResponse, request
|
@@ -2,24 +2,26 @@ require './test/test_helper'
|
|
2
2
|
|
3
3
|
class FavoriteTest < Minitest::Test
|
4
4
|
|
5
|
-
def
|
6
|
-
VCR.use_cassette('favorite
|
7
|
-
@offer = Access::Offer.search(member_key: 'API_TEST', access_token: '
|
5
|
+
def setup_favorites
|
6
|
+
VCR.use_cassette('favorite/one_of_everything') do
|
7
|
+
@offer = Access::Offer.search(member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS'], query: '_exists_:program_keys', all_offers: 'true').offers.first
|
8
8
|
# make sure there is a member that exists first
|
9
|
-
Access::Redeem.redeem_offer(@offer.offer_key, @offer.redemption_methods.first, member_key: "API_TEST", access_timeout: 10)
|
9
|
+
Access::Redeem.redeem_offer(@offer.offer_key, @offer.redemption_methods.first, member_key: "API_TEST", access_timeout: 10, access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS'], first_name: 'q', last_name: 'a')
|
10
10
|
# make sure there is an offer favorited first
|
11
|
-
Access::Favorite.create_offer @offer.offer_key, member_key: 'API_TEST'
|
12
|
-
Access::Favorite.create_location @offer.location.location_key, member_key: 'API_TEST'
|
13
|
-
Access::Favorite.create_store @offer.store.store_key, member_key: 'API_TEST'
|
11
|
+
Access::Favorite.create_offer @offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
12
|
+
Access::Favorite.create_location @offer.location.location_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
13
|
+
Access::Favorite.create_store @offer.store.store_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
14
14
|
end
|
15
15
|
@offer
|
16
16
|
end
|
17
17
|
|
18
|
-
|
18
|
+
def setup
|
19
|
+
@@offer ||= setup_favorites
|
20
|
+
end
|
19
21
|
|
20
22
|
def test_favorite_search
|
21
|
-
VCR.use_cassette('favorite
|
22
|
-
request = Access::Favorite.search member_key: 'API_TEST'
|
23
|
+
VCR.use_cassette('favorite/search') do
|
24
|
+
request = Access::Favorite.search member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
23
25
|
assert request.success
|
24
26
|
assert_kind_of Access::FavoriteResponse, request
|
25
27
|
assert_kind_of Array, request.favorites
|
@@ -34,8 +36,8 @@ class FavoriteTest < Minitest::Test
|
|
34
36
|
end
|
35
37
|
|
36
38
|
def test_favorite_search_with_bad_member
|
37
|
-
VCR.use_cassette('favorite
|
38
|
-
request = Access::Favorite.search member_key: 'API_TEST_FAVORITE_BAD_MEMBER'
|
39
|
+
VCR.use_cassette('favorite/search_bad_member') do
|
40
|
+
request = Access::Favorite.search member_key: 'API_TEST_FAVORITE_BAD_MEMBER', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
39
41
|
refute request.success
|
40
42
|
assert_kind_of Access::FavoriteResponse, request
|
41
43
|
assert_empty request.favorites
|
@@ -44,8 +46,8 @@ class FavoriteTest < Minitest::Test
|
|
44
46
|
|
45
47
|
def test_favorite_search_with_no_favorites
|
46
48
|
# TODO refactor after fav api update
|
47
|
-
VCR.use_cassette('favorite
|
48
|
-
request = Access::Favorite.search member_key: 'API_TEST_FAVORITE_NO_FAVORITES'
|
49
|
+
VCR.use_cassette('favorite/search_no_favorites') do
|
50
|
+
request = Access::Favorite.search member_key: 'API_TEST_FAVORITE_NO_FAVORITES', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
49
51
|
refute request.success
|
50
52
|
assert_kind_of Access::FavoriteResponse, request
|
51
53
|
assert_empty request.favorites
|
@@ -53,123 +55,128 @@ class FavoriteTest < Minitest::Test
|
|
53
55
|
end
|
54
56
|
|
55
57
|
def test_favorite_search_offers
|
56
|
-
VCR.use_cassette('favorite
|
57
|
-
request = Access::Favorite.search_offers member_key: '
|
58
|
+
VCR.use_cassette('favorite/search_offers') do
|
59
|
+
request = Access::Favorite.search_offers member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
58
60
|
assert_good_favorite_offer_response(request)
|
59
61
|
end
|
60
62
|
end
|
61
63
|
|
62
64
|
def test_favorite_search_locations
|
63
|
-
VCR.use_cassette('favorite
|
64
|
-
request = Access::Favorite.search_locations member_key: '
|
65
|
+
VCR.use_cassette('favorite/search_locations') do
|
66
|
+
request = Access::Favorite.search_locations member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
65
67
|
assert_good_favorite_location_response(request)
|
66
68
|
end
|
67
69
|
end
|
68
70
|
|
69
71
|
def test_favorite_search_stores
|
70
|
-
VCR.use_cassette('favorite
|
71
|
-
request = Access::Favorite.search_stores member_key: '
|
72
|
+
VCR.use_cassette('favorite/search_stores') do
|
73
|
+
request = Access::Favorite.search_stores member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
72
74
|
assert_good_favorite_store_response(request)
|
73
75
|
end
|
74
76
|
end
|
75
77
|
|
76
78
|
def test_favorite_find
|
77
|
-
VCR.use_cassette('favorite
|
78
|
-
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST'
|
79
|
-
request = Access::Favorite.find @@offer.offer_key, favorite_type: 'offers', member_key: 'API_TEST'
|
79
|
+
VCR.use_cassette('favorite/find_generic_with_offer') do
|
80
|
+
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
81
|
+
request = Access::Favorite.find @@offer.offer_key, favorite_type: 'offers', member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
80
82
|
assert_good_favorite_offer_response(request)
|
81
83
|
end
|
82
84
|
end
|
83
85
|
|
84
86
|
def test_favorite_find_offer
|
85
|
-
VCR.use_cassette('favorite
|
86
|
-
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST'
|
87
|
-
request = Access::Favorite.find_offer @@offer.offer_key, member_key: 'API_TEST'
|
87
|
+
VCR.use_cassette('favorite/find_offer') do
|
88
|
+
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
89
|
+
request = Access::Favorite.find_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
88
90
|
assert_good_favorite_offer_response(request)
|
89
91
|
end
|
90
92
|
end
|
91
93
|
|
92
94
|
def test_favorite_find_location
|
93
|
-
VCR.use_cassette('favorite
|
94
|
-
Access::Favorite.create_location @@offer.location.location_key, member_key: 'API_TEST'
|
95
|
-
request = Access::Favorite.find_location @@offer.location.location_key, member_key: 'API_TEST'
|
95
|
+
VCR.use_cassette('favorite/find_location') do
|
96
|
+
Access::Favorite.create_location @@offer.location.location_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
97
|
+
request = Access::Favorite.find_location @@offer.location.location_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
96
98
|
assert_good_favorite_location_response(request)
|
97
99
|
end
|
98
100
|
end
|
99
101
|
|
100
102
|
def test_favorite_find_store
|
101
|
-
VCR.use_cassette('favorite
|
102
|
-
|
103
|
-
|
103
|
+
VCR.use_cassette('favorite/find_store') do
|
104
|
+
|
105
|
+
Access::Favorite.create_store @@offer.store.store_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
106
|
+
request = Access::Favorite.find_store @@offer.store.store_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
104
107
|
assert_good_favorite_store_response(request)
|
105
108
|
end
|
106
109
|
end
|
107
110
|
|
108
111
|
def test_favorite_create
|
109
|
-
VCR.use_cassette('favorite
|
110
|
-
request = Access::Favorite.create @@offer.offer_key, favorite_type: 'offers', member_key: 'API_TEST'
|
112
|
+
VCR.use_cassette('favorite/create_generic_with_offer') do
|
113
|
+
request = Access::Favorite.create @@offer.offer_key, favorite_type: 'offers', member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
111
114
|
assert_good_favorite_offer_response(request)
|
112
115
|
end
|
113
116
|
end
|
114
117
|
|
115
118
|
def test_favorite_create_offer
|
116
|
-
VCR.use_cassette('favorite
|
117
|
-
request = Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST'
|
119
|
+
VCR.use_cassette('favorite/create_offer') do
|
120
|
+
request = Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
118
121
|
assert_good_favorite_offer_response(request)
|
119
122
|
end
|
120
123
|
end
|
121
124
|
|
122
125
|
|
123
126
|
def test_favorite_create_location
|
124
|
-
VCR.use_cassette('favorite
|
125
|
-
request = Access::Favorite.create_location @@offer.location.location_key, member_key: 'API_TEST'
|
127
|
+
VCR.use_cassette('favorite/create_location') do
|
128
|
+
request = Access::Favorite.create_location @@offer.location.location_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
126
129
|
assert_good_favorite_location_response(request)
|
127
130
|
end
|
128
131
|
end
|
129
132
|
|
130
133
|
def test_favorite_create_store
|
131
|
-
VCR.use_cassette('favorite
|
132
|
-
request = Access::Favorite.create_store @@offer.store.store_key, member_key: 'API_TEST'
|
134
|
+
VCR.use_cassette('favorite/create_store') do
|
135
|
+
request = Access::Favorite.create_store @@offer.store.store_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
133
136
|
assert_good_favorite_store_response(request)
|
134
137
|
end
|
135
138
|
end
|
136
139
|
|
137
140
|
def test_favorite_delete
|
138
|
-
VCR.use_cassette('favorite
|
139
|
-
request = Access::Favorite.delete @@offer.offer_key, favorite_type: 'offers', member_key: 'API_TEST'
|
141
|
+
VCR.use_cassette('favorite/delete_generic_with_offer') do
|
142
|
+
request = Access::Favorite.delete @@offer.offer_key, favorite_type: 'offers', member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
140
143
|
assert request.success
|
141
144
|
assert_kind_of Access::FavoriteResponse, request
|
145
|
+
# remake it after
|
146
|
+
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
142
147
|
end
|
143
148
|
end
|
144
149
|
|
145
150
|
def test_favorite_delete_offer
|
146
|
-
VCR.use_cassette('favorite
|
147
|
-
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST' # create it first, in case it was deleted
|
148
|
-
request = Access::Favorite.delete_offer @@offer.offer_key, member_key: 'API_TEST'
|
151
|
+
VCR.use_cassette('favorite/delete_offer') do
|
152
|
+
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS'] # create it first, in case it was deleted
|
153
|
+
request = Access::Favorite.delete_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
149
154
|
assert request.success
|
150
155
|
assert_kind_of Access::FavoriteResponse, request
|
156
|
+
Access::Favorite.create_offer @@offer.offer_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
151
157
|
end
|
152
158
|
end
|
153
159
|
|
154
160
|
def test_favorite_delete_location
|
155
|
-
VCR.use_cassette('favorite
|
156
|
-
Access::Favorite.delete_location @@offer.location.location_key, member_key: 'API_TEST' # create it first, in case it was deleted
|
157
|
-
request = Access::Favorite.find_location @@offer.location.location_key, member_key: 'API_TEST'
|
158
|
-
|
161
|
+
VCR.use_cassette('favorite/delete_location') do
|
162
|
+
Access::Favorite.delete_location @@offer.location.location_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS'] # create it first, in case it was deleted
|
163
|
+
request = Access::Favorite.find_location @@offer.location.location_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
164
|
+
assert request.success
|
159
165
|
assert_kind_of Access::FavoriteResponse, request
|
166
|
+
Access::Favorite.create_location @@offer.location.location_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
160
167
|
end
|
161
168
|
end
|
162
169
|
|
163
170
|
def test_favorite_delete_store
|
164
|
-
VCR.use_cassette('favorite
|
165
|
-
Access::Favorite.delete_store @@offer.store.store_key, member_key: 'API_TEST' # create it first, in case it was deleted
|
166
|
-
request = Access::Favorite.find_store @@offer.store.store_key, member_key: 'API_TEST'
|
167
|
-
|
171
|
+
VCR.use_cassette('favorite/delete_store') do
|
172
|
+
Access::Favorite.delete_store @@offer.store.store_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS'] # create it first, in case it was deleted
|
173
|
+
request = Access::Favorite.find_store @@offer.store.store_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
174
|
+
assert request.success
|
168
175
|
assert_kind_of Access::FavoriteResponse, request
|
176
|
+
Access::Favorite.create_store @@offer.store.store_key, member_key: 'API_TEST', access_token: ENV['TOKEN_WITHOUT_FILTERS_WITH_PROGRAM_OFFERS']
|
169
177
|
end
|
170
178
|
end
|
171
179
|
|
172
|
-
|
173
180
|
def assert_good_favorite_offer_response(request)
|
174
181
|
assert request.success
|
175
182
|
assert_kind_of Access::FavoriteResponse, request
|