mailchimp_api_v3 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/.coveralls.yml +4 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +1 -1
  5. data/Gemfile +1 -0
  6. data/Guardfile +1 -0
  7. data/README.md +1 -1
  8. data/circle.yml +7 -5
  9. data/lib/mailchimp_api_v3.rb +1 -0
  10. data/lib/mailchimp_api_v3/account.rb +1 -0
  11. data/lib/mailchimp_api_v3/client.rb +1 -0
  12. data/lib/mailchimp_api_v3/client/remote.rb +6 -2
  13. data/lib/mailchimp_api_v3/collection.rb +1 -0
  14. data/lib/mailchimp_api_v3/collection/paging.rb +1 -0
  15. data/lib/mailchimp_api_v3/exception.rb +1 -0
  16. data/lib/mailchimp_api_v3/instance.rb +1 -0
  17. data/lib/mailchimp_api_v3/interest.rb +2 -1
  18. data/lib/mailchimp_api_v3/interest_category.rb +4 -3
  19. data/lib/mailchimp_api_v3/list.rb +2 -1
  20. data/lib/mailchimp_api_v3/member.rb +2 -1
  21. data/lib/mailchimp_api_v3/version.rb +2 -1
  22. data/mailchimp_api_v3.gemspec +3 -1
  23. data/spec/fixtures/cassettes/account.yml +26 -22
  24. data/spec/fixtures/cassettes/client.yml +130 -96
  25. data/spec/fixtures/cassettes/exception.yml +60 -50
  26. data/spec/fixtures/cassettes/interest.yml +134 -87
  27. data/spec/fixtures/cassettes/interest_categories.yml +207 -184
  28. data/spec/fixtures/cassettes/interest_category.yml +137 -90
  29. data/spec/fixtures/cassettes/interests.yml +241 -165
  30. data/spec/fixtures/cassettes/list.yml +81 -227
  31. data/spec/fixtures/cassettes/lists.yml +27 -12
  32. data/spec/fixtures/cassettes/mailchimp.yml +26 -22
  33. data/spec/fixtures/cassettes/member.yml +106 -75
  34. data/spec/fixtures/cassettes/members.yml +255 -171
  35. data/spec/fixtures/cassettes/members_create_or_update.yml +269 -182
  36. data/spec/fixtures/cassettes/members_paging.yml +102 -115
  37. data/spec/mailchimp_api_v3/account_spec.rb +1 -3
  38. data/spec/mailchimp_api_v3/client_spec.rb +1 -3
  39. data/spec/mailchimp_api_v3/exception_spec.rb +2 -4
  40. data/spec/mailchimp_api_v3/interest_categories_spec.rb +1 -3
  41. data/spec/mailchimp_api_v3/interest_category_spec.rb +1 -3
  42. data/spec/mailchimp_api_v3/interest_spec.rb +1 -3
  43. data/spec/mailchimp_api_v3/interests_spec.rb +1 -3
  44. data/spec/mailchimp_api_v3/list_spec.rb +2 -4
  45. data/spec/mailchimp_api_v3/lists_spec.rb +2 -4
  46. data/spec/mailchimp_api_v3/member_spec.rb +1 -3
  47. data/spec/mailchimp_api_v3/members_spec.rb +5 -7
  48. data/spec/mailchimp_spec.rb +1 -3
  49. data/spec/spec_helper.rb +3 -8
  50. data/spec/support/api_key.rb +1 -0
  51. data/spec/support/vcr_setup.rb +3 -1
  52. metadata +19 -4
@@ -1,7 +1,5 @@
1
1
  # encoding: utf-8
2
- require 'spec_helper'
3
- require 'mailchimp_api_v3'
4
-
2
+ # frozen_string_literal: true
5
3
  describe Mailchimp::Lists, vcr: { cassette_name: 'lists' } do
6
4
  let(:lists) { Mailchimp.connect.lists }
7
5
 
@@ -10,6 +8,6 @@ describe Mailchimp::Lists, vcr: { cassette_name: 'lists' } do
10
8
  end
11
9
 
12
10
  it 'has a count' do
13
- expect(lists.count).to eq 1
11
+ expect(lists.count).to eq 4
14
12
  end
15
13
  end
@@ -1,7 +1,5 @@
1
1
  # encoding: utf-8
2
- require 'spec_helper'
3
- require 'mailchimp_api_v3'
4
-
2
+ # frozen_string_literal: true
5
3
  describe Mailchimp::List::Member, vcr: { cassette_name: 'member' } do
6
4
  let(:lists) { Mailchimp.connect.lists }
7
5
  let(:list) { lists.first }
@@ -1,12 +1,10 @@
1
1
  # encoding: utf-8
2
- require 'spec_helper'
3
- require 'mailchimp_api_v3'
4
-
2
+ # frozen_string_literal: true
5
3
  describe Mailchimp::List::Members do
6
4
  context 'paging', vcr: { cassette_name: 'members_paging', allow_playback_repeats: true } do
7
5
  let(:page_size) { 10 }
8
- let(:member_count) { 37 }
9
- let(:list) { Mailchimp.connect.lists.first }
6
+ let(:member_count) { 19 }
7
+ let(:list) { Mailchimp.connect.lists 'API test list' }
10
8
  let(:members) { list.members 'page_size' => page_size }
11
9
 
12
10
  it 'is the expected class' do
@@ -20,7 +18,7 @@ describe Mailchimp::List::Members do
20
18
  it 'returns pages of members' do
21
19
  counts = []
22
20
  members.find_in_pages { |p| counts << p.count }
23
- expect(counts).to eq [page_size, page_size, page_size, 7]
21
+ expect(counts).to eq [page_size, 9]
24
22
  end
25
23
 
26
24
  it 'returns all members by paging' do
@@ -72,7 +70,7 @@ describe Mailchimp::List::Members do
72
70
  let(:list) { Mailchimp.connect.lists 'My first list' }
73
71
  let(:members) { list.members }
74
72
 
75
- it 'creates when no match is found, udates otherwise' do
73
+ it 'creates when no match is found, updates otherwise' do
76
74
  name = 'Cat Sayers'
77
75
  data = { name: name, email_address: 'cat@sayers.cc', status: 'subscribed' }
78
76
 
@@ -1,7 +1,5 @@
1
1
  # encoding: utf-8
2
- require 'spec_helper'
3
- require 'mailchimp_api_v3'
4
-
2
+ # frozen_string_literal: true
5
3
  describe Mailchimp do
6
4
  it 'does not attempt to connect without an API key in the right format' do
7
5
  expect { Mailchimp.connect '' }.to raise_error { |e|
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  unless ENV['NO_SIMPLECOV']
2
3
  require 'simplecov'
3
4
  require 'coveralls'
@@ -11,19 +12,13 @@ unless ENV['NO_SIMPLECOV']
11
12
  Coveralls.wear! if ENV['COVERALLS_REPO_TOKEN']
12
13
  end
13
14
 
15
+ require 'mailchimp_api_v3'
16
+
14
17
  # Requires supporting ruby files with custom matchers and macros, etc,
15
18
  # in spec/support/ and its subdirectories.
16
19
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
17
20
 
18
21
  RSpec.configure do |config|
19
- # Run specs in random order to surface order dependencies. If you find an
20
- # order dependency and want to debug it, you can fix the order by providing
21
- # the seed, which is printed after each run.
22
- # --seed 1234
23
22
  config.order = 'random'
24
-
25
- # Manually-added
26
- config.color = true
27
23
  config.tty = true
28
- config.formatter = :documentation
29
24
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'yaml'
2
3
 
3
4
  unless ENV['MAILCHIMP_API_KEY']
@@ -1,15 +1,17 @@
1
+ # frozen_string_literal: true
1
2
  require 'vcr'
2
3
 
3
4
  VCR.configure do |c|
4
5
  c.configure_rspec_metadata!
5
6
  c.cassette_library_dir = 'spec/fixtures/cassettes'
7
+ # c.debug_logger = File.open('tmp/vcr_debug.log', 'w')
6
8
  c.hook_into :webmock
7
9
 
8
10
  c.default_cassette_options = {
9
11
  # record: :new_episodes,
10
12
  erb: true,
11
13
  decode_compressed_response: true,
12
- match_requests_on: [:method, :uri, :headers, :body],
14
+ match_requests_on: %i(method uri headers body),
13
15
  allow_playback_repeats: false
14
16
  }
15
17
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailchimp_api_v3
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Xenapto
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-31 00:00:00.000000000 Z
11
+ date: 2016-08-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1'
19
+ version: '2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1'
26
+ version: '2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '3'
55
+ - !ruby/object:Gem::Dependency
56
+ name: fuubar
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: rspec_junit_formatter
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -205,6 +219,7 @@ executables: []
205
219
  extensions: []
206
220
  extra_rdoc_files: []
207
221
  files:
222
+ - ".coveralls.yml"
208
223
  - ".gitignore"
209
224
  - ".hound.yml"
210
225
  - ".rspec"