access 2.0.48 → 2.0.49
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.
- 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
|