mailchimp_ses 1.0.3 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/.rspec CHANGED
@@ -1 +1,2 @@
1
1
  --color
2
+ --format progress
@@ -1,3 +1,8 @@
1
+ 1.0.4
2
+ -----
3
+ * Added BCC / CC options [dbalatero]
4
+ * Added autogen_html option [dbalatero]
5
+
1
6
  1.0.3
2
7
  -----
3
8
  * Added reply_to option [jeffmcfadden]
data/Gemfile CHANGED
@@ -6,7 +6,8 @@ gem 'json'
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- gem "rspec", "~> 2.3.0"
9
+ gem "rspec", "~> 2.6"
10
+ gem 'ruby-debug'
10
11
  gem "bundler", "~> 1.0.0"
11
12
  gem "jeweler", "~> 1.5.2"
12
13
  gem "rcov", ">= 0"
@@ -1,6 +1,7 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
+ columnize (0.3.3)
4
5
  diff-lcs (1.1.2)
5
6
  git (1.2.5)
6
7
  jeweler (1.5.2)
@@ -8,20 +9,28 @@ GEM
8
9
  git (>= 1.2.5)
9
10
  rake
10
11
  json (1.5.1)
12
+ linecache (0.46)
13
+ rbx-require-relative (> 0.0.4)
11
14
  mime-types (1.16)
12
15
  monster_mash (0.2.2)
13
16
  typhoeus (>= 0.2.3)
14
17
  typhoeus (>= 0.2.3)
15
18
  rake (0.8.7)
19
+ rbx-require-relative (0.0.5)
16
20
  rcov (0.9.9)
17
- rspec (2.3.0)
18
- rspec-core (~> 2.3.0)
19
- rspec-expectations (~> 2.3.0)
20
- rspec-mocks (~> 2.3.0)
21
- rspec-core (2.3.1)
22
- rspec-expectations (2.3.0)
21
+ rspec (2.6.0)
22
+ rspec-core (~> 2.6.0)
23
+ rspec-expectations (~> 2.6.0)
24
+ rspec-mocks (~> 2.6.0)
25
+ rspec-core (2.6.4)
26
+ rspec-expectations (2.6.0)
23
27
  diff-lcs (~> 1.1.2)
24
- rspec-mocks (2.3.0)
28
+ rspec-mocks (2.6.0)
29
+ ruby-debug (0.10.4)
30
+ columnize (>= 0.1)
31
+ ruby-debug-base (~> 0.10.4.0)
32
+ ruby-debug-base (0.10.4)
33
+ linecache (>= 0.3)
25
34
  typhoeus (0.2.3)
26
35
  mime-types
27
36
  mime-types
@@ -36,5 +45,6 @@ DEPENDENCIES
36
45
  json
37
46
  monster_mash (>= 0.2.2)
38
47
  rcov
39
- rspec (~> 2.3.0)
48
+ rspec (~> 2.6)
49
+ ruby-debug
40
50
  vcr
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.3
1
+ 1.0.4
@@ -25,32 +25,16 @@ class MailchimpSes < MonsterMash::Base
25
25
  check_api_key!
26
26
 
27
27
  uri "http://#{datacenter}.sts.mailchimp.com/1.0/SendEmail"
28
+ params(parse_options(options))
28
29
 
29
- # Message params.
30
- message = {
31
- :html => extract_param(options[:message], :html),
32
- :text => options[:message][:text],
33
- :subject => extract_param(options[:message], :subject),
34
- :from_name => extract_param(options[:message], :from_name),
35
- :from_email => extract_param(options[:message], :from_email),
36
- :to_email => convert_to_hash_array(extract_param(options[:message], :to_email))
37
- }
38
-
39
- # Pull optional to_name.
40
- if options[:message].has_key?(:to_name) && !options[:message][:to_name].empty?
41
- message[:to_name] = convert_to_hash_array(options[:message][:to_name])
42
- end
43
-
44
- # Pull optional reply_to.
45
- if options[:message].has_key?(:reply_to) && !options[:message][:reply_to].blank?
46
- message[:reply_to] = convert_to_hash_array(options[:message][:reply_to])
30
+ handler do |response|
31
+ json = JSON.parse(response.body)
47
32
  end
33
+ end
48
34
 
49
- # Check on to_email and to_name length.
50
- if message.has_key?(:to_email) && message.has_key?(:to_name) &&
51
- message[:to_email].size != message[:to_name].size
52
- raise ArgumentError, "to_email and to_name need the same number of values"
53
- end
35
+ DEFAULT_OPTIONS = { :autogen_html => true }
36
+ def self.parse_options(options)
37
+ options = DEFAULT_OPTIONS.merge(options)
54
38
 
55
39
  # Handle tags.
56
40
  tags = nil
@@ -58,18 +42,57 @@ class MailchimpSes < MonsterMash::Base
58
42
  tags = convert_to_hash_array(options[:tags])
59
43
  end
60
44
 
61
- params :message => message,
62
- :track_opens => extract_param(options, :track_opens).to_s,
63
- :track_clicks => extract_param(options, :track_clicks).to_s,
64
- :tags => tags
65
-
66
- handler do |response|
67
- json = JSON.parse(response.body)
45
+ {
46
+ :message => parse_message_options(options[:message]),
47
+ :track_opens => extract_param(options, :track_opens).to_s,
48
+ :track_clicks => extract_param(options, :track_clicks).to_s,
49
+ :autogen_html => extract_param(options, :autogen_html).to_s,
50
+ :tags => tags
51
+ }
52
+ end
53
+
54
+ OPTIONAL_MESSAGE_FIELDS = [:to_name, :reply_to, :cc_email, :cc_name, :bcc_email, :bcc_name]
55
+ def self.parse_message_options(message_options)
56
+ message = {
57
+ :html => extract_param(message_options, :html),
58
+ :text => message_options[:text],
59
+ :subject => extract_param(message_options, :subject),
60
+ :from_name => extract_param(message_options, :from_name),
61
+ :from_email => extract_param(message_options, :from_email),
62
+ :to_email => convert_to_hash_array(extract_param(message_options, :to_email))
63
+ }
64
+
65
+ OPTIONAL_MESSAGE_FIELDS.each do |field|
66
+ set_optional_field!(message, message_options, field)
68
67
  end
68
+
69
+ # Check lengths of arrays.
70
+ check_recipients!(message, :to_email, :to_name)
71
+ check_recipients!(message, :cc_email, :cc_name)
72
+ check_recipients!(message, :bcc_email, :bcc_name)
73
+
74
+ message
69
75
  end
70
76
 
71
77
  private
72
78
 
79
+ def self.set_optional_field!(message, options, key)
80
+ if options.has_key?(key) && !options[key].empty?
81
+ message[key] = convert_to_hash_array(options[key])
82
+ end
83
+ end
84
+
85
+ def self.check_recipients!(message, email_key, name_key)
86
+ if message.has_key?(email_key) || message.has_key?(name_key)
87
+ emails = message[email_key].size rescue 0
88
+ names = message[name_key].size rescue 0
89
+
90
+ if emails != names
91
+ raise ArgumentError, "#{email_key} and #{name_key} need the same number of values"
92
+ end
93
+ end
94
+ end
95
+
73
96
  def self.check_api_key!
74
97
  if self.api_key.nil?
75
98
  raise ArgumentError, "Set MailchimpSes.api_key in your config."
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{mailchimp_ses}
8
- s.version = "1.0.3"
8
+ s.version = "1.0.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["David Balatero"]
12
- s.date = %q{2011-03-22}
12
+ s.date = %q{2011-07-15}
13
13
  s.description = %q{Allows you to call MailChimp <-> Amazon SES integration methods.}
14
14
  s.email = %q{dbalatero@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -36,7 +36,7 @@ Gem::Specification.new do |s|
36
36
  s.homepage = %q{http://github.com/dbalatero/mailchimp_ses}
37
37
  s.licenses = ["MIT"]
38
38
  s.require_paths = ["lib"]
39
- s.rubygems_version = %q{1.3.7}
39
+ s.rubygems_version = %q{1.5.2}
40
40
  s.summary = %q{Gives API methods for MailChimp SES.}
41
41
  s.test_files = [
42
42
  "spec/mailchimp_ses_spec.rb",
@@ -44,13 +44,13 @@ Gem::Specification.new do |s|
44
44
  ]
45
45
 
46
46
  if s.respond_to? :specification_version then
47
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
48
47
  s.specification_version = 3
49
48
 
50
49
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
51
50
  s.add_runtime_dependency(%q<monster_mash>, [">= 0.2.2"])
52
51
  s.add_runtime_dependency(%q<json>, [">= 0"])
53
- s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
52
+ s.add_development_dependency(%q<rspec>, ["~> 2.6"])
53
+ s.add_development_dependency(%q<ruby-debug>, [">= 0"])
54
54
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
55
55
  s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
56
56
  s.add_development_dependency(%q<rcov>, [">= 0"])
@@ -63,7 +63,8 @@ Gem::Specification.new do |s|
63
63
  else
64
64
  s.add_dependency(%q<monster_mash>, [">= 0.2.2"])
65
65
  s.add_dependency(%q<json>, [">= 0"])
66
- s.add_dependency(%q<rspec>, ["~> 2.3.0"])
66
+ s.add_dependency(%q<rspec>, ["~> 2.6"])
67
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
67
68
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
68
69
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
69
70
  s.add_dependency(%q<rcov>, [">= 0"])
@@ -77,7 +78,8 @@ Gem::Specification.new do |s|
77
78
  else
78
79
  s.add_dependency(%q<monster_mash>, [">= 0.2.2"])
79
80
  s.add_dependency(%q<json>, [">= 0"])
80
- s.add_dependency(%q<rspec>, ["~> 2.3.0"])
81
+ s.add_dependency(%q<rspec>, ["~> 2.6"])
82
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
81
83
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
82
84
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
83
85
  s.add_dependency(%q<rcov>, [">= 0"])
@@ -1,60 +1,175 @@
1
1
  require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
2
 
3
3
  describe "MailchimpSes" do
4
- before(:each) do
5
- # disabled in production.
6
- MailchimpSes.api_key = "test-us1"
4
+ let(:message) do
5
+ {
6
+ :subject => 'Welcome to our website!',
7
+ :html => '<html>Welcome to our site.</html>',
8
+ :text => 'Welcome to our website.',
9
+ :from_name => 'David Balatero',
10
+ :from_email => 'david@mediapiston.com',
11
+ :to_email => ['dbalatero@gmail.com'],
12
+ :to_name => ['David Balatero']
13
+ }
14
+ end
7
15
 
8
- @valid_params = {
9
- :message => {
10
- :subject => 'Welcome to our website!',
11
- :html => '<html>Welcome to our site.</html>',
12
- :text => 'Welcome to our website.',
13
- :from_name => 'David Balatero',
14
- :from_email => 'david@mediapiston.com',
15
- :to_email => ['dbalatero@gmail.com',],
16
- :to_name => ['David Balatero']
17
- },
16
+ let(:options) do
17
+ {
18
+ :message => message,
18
19
  :tags => ['fun', 'message', 'unique'],
19
20
  :track_opens => true,
20
21
  :track_clicks => true
21
22
  }
22
23
  end
23
24
 
25
+ before(:each) do
26
+ # disabled in production.
27
+ MailchimpSes.api_key = "test-us1"
28
+ end
29
+
30
+ describe "#parse_options" do
31
+ subject { MailchimpSes.parse_options(options) }
32
+
33
+ it "should set autogen_html to true by default" do
34
+ subject[:autogen_html].should == 'true'
35
+ end
36
+
37
+ it "should allow overriding autogen_html to false" do
38
+ options[:autogen_html] = false
39
+ subject[:autogen_html].should == 'false'
40
+ end
41
+ end
42
+
43
+ describe "#parse_message_options" do
44
+ shared_examples_for 'basic message parser' do
45
+ it 'should set subject' do
46
+ subject[:subject].should == 'Welcome to our website!'
47
+ end
48
+
49
+ it 'should set html' do
50
+ subject[:html].should == '<html>Welcome to our site.</html>'
51
+ end
52
+
53
+ it 'should set text' do
54
+ subject[:text].should == 'Welcome to our website.'
55
+ end
56
+
57
+ it 'should set from_name' do
58
+ subject[:from_name].should == 'David Balatero'
59
+ end
60
+
61
+ it 'should set from_email' do
62
+ subject[:from_email].should == 'david@mediapiston.com'
63
+ end
64
+
65
+ it 'should set to_email' do
66
+ subject[:to_email][0].should == 'dbalatero@gmail.com'
67
+ end
68
+
69
+ it 'should set to_name' do
70
+ subject[:to_name][0].should == 'David Balatero'
71
+ end
72
+ end
73
+
74
+ subject { MailchimpSes.parse_message_options(message) }
75
+
76
+ describe "with cc options" do
77
+ before do
78
+ message.merge!(:cc_email => ['myfriend@gmail.com'],
79
+ :cc_name => ['My Friend'])
80
+ end
81
+
82
+ it "should set cc_email" do
83
+ subject[:cc_email][0].should == 'myfriend@gmail.com'
84
+ end
85
+
86
+ it 'should set cc_name' do
87
+ subject[:cc_name][0].should == 'My Friend'
88
+ end
89
+
90
+ it 'should raise an error if the names do not match emails' do
91
+ message[:cc_name] = ['One', 'Two']
92
+ lambda {
93
+ subject[:cc_name]
94
+ }.should raise_error(ArgumentError)
95
+ end
96
+
97
+ it_should_behave_like 'basic message parser'
98
+ end
99
+
100
+ describe "with bcc options" do
101
+ before do
102
+ message.merge!(:bcc_email => ['bccguy@gmail.com'],
103
+ :bcc_name => ['BCC Guy'])
104
+ end
105
+
106
+ it "should set bcc_email" do
107
+ subject[:bcc_email][0].should == 'bccguy@gmail.com'
108
+ end
109
+
110
+ it 'should set cc_name' do
111
+ subject[:bcc_name][0].should == 'BCC Guy'
112
+ end
113
+
114
+ it 'should raise an error if the names do not match emails' do
115
+ message[:bcc_name] = ['One', 'Two']
116
+ lambda {
117
+ subject[:bcc_name]
118
+ }.should raise_error(ArgumentError)
119
+ end
120
+
121
+ it_should_behave_like 'basic message parser'
122
+
123
+ end
124
+ end
125
+
24
126
  describe "#send_email" do
25
127
  describe "error checking" do
26
128
  it "should raise error w/ no api key" do
27
129
  MailchimpSes.api_key = nil
28
130
  lambda {
29
- MailchimpSes.send_email(@valid_params)
131
+ MailchimpSes.send_email(options)
30
132
  }.should raise_error(ArgumentError)
31
133
  end
32
134
 
33
135
  [:track_opens, :track_clicks].each do |field|
34
136
  it "should require #{field}" do
35
- @valid_params.delete(field)
137
+ options.delete(field)
36
138
  lambda {
37
- MailchimpSes.send_email(@valid_params)
139
+ MailchimpSes.send_email(options)
38
140
  }.should raise_error(ArgumentError)
39
141
  end
40
142
  end
41
143
 
42
144
  [:html, :subject, :from_name, :from_email, :to_email].each do |field|
43
145
  it "should require message #{field}" do
44
- @valid_params[:message].delete(field)
146
+ options[:message].delete(field)
45
147
  lambda {
46
- MailchimpSes.send_email(@valid_params)
148
+ MailchimpSes.send_email(options)
47
149
  }.should raise_error(ArgumentError)
48
150
  end
49
151
  end
50
152
 
51
- it "should not allow to_email and to_name to be diff length" do
52
- @valid_params[:message][:to_email] = ['fds@fds.com', 'a@b.com']
53
- @valid_params[:message][:to_name] = ['My Friend Fds']
153
+ [[:to_email, :to_name]].each do |pair|
154
+ email_key = pair[0]
155
+ name_key = pair[1]
156
+ it "should not allow #{email_key} and #{name_key} to be different lengths" do
157
+ options[:message][email_key] = ['fds@fds.com', 'a@b.com']
158
+ options[:message][name_key] = ['My Friend Fds']
54
159
 
55
- lambda {
56
- MailchimpSes.send_email(@valid_params)
57
- }.should raise_error(ArgumentError)
160
+ lambda {
161
+ MailchimpSes.send_email(options)
162
+ }.should raise_error(ArgumentError)
163
+ end
164
+
165
+ it "should not allow #{email_key} with an empty #{name_key}" do
166
+ options[:message][email_key] = ['fdsa@fdsa.com']
167
+ options[:message][name_key] = []
168
+
169
+ lambda {
170
+ MailchimpSes.send_email(options)
171
+ }.should raise_error(ArgumentError)
172
+ end
58
173
  end
59
174
  end
60
175
 
@@ -62,7 +177,7 @@ describe "MailchimpSes" do
62
177
  use_vcr_cassette 'send_email', :record => :new_episodes
63
178
 
64
179
  it "should return a success or failure" do
65
- result = MailchimpSes.send_email(@valid_params)
180
+ result = MailchimpSes.send_email(options)
66
181
  result['status'].should == 'sent'
67
182
  result['message_id'].should_not be_nil
68
183
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailchimp_ses
3
3
  version: !ruby/object:Gem::Version
4
- hash: 17
5
- prerelease: false
4
+ hash: 31
5
+ prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 3
10
- version: 1.0.3
9
+ - 4
10
+ version: 1.0.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - David Balatero
@@ -15,13 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-03-22 00:00:00 -07:00
18
+ date: 2011-07-15 00:00:00 -07:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: &id001 !ruby/object:Gem::Requirement
22
+ requirement: &id001 !ruby/object:Gem::Requirement
25
23
  none: false
26
24
  requirements:
27
25
  - - ">="
@@ -32,12 +30,12 @@ dependencies:
32
30
  - 2
33
31
  - 2
34
32
  version: 0.2.2
33
+ prerelease: false
35
34
  name: monster_mash
36
- requirement: *id001
37
- - !ruby/object:Gem::Dependency
38
35
  type: :runtime
39
- prerelease: false
40
- version_requirements: &id002 !ruby/object:Gem::Requirement
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ requirement: &id002 !ruby/object:Gem::Requirement
41
39
  none: false
42
40
  requirements:
43
41
  - - ">="
@@ -46,28 +44,41 @@ dependencies:
46
44
  segments:
47
45
  - 0
48
46
  version: "0"
47
+ prerelease: false
49
48
  name: json
50
- requirement: *id002
49
+ type: :runtime
50
+ version_requirements: *id002
51
51
  - !ruby/object:Gem::Dependency
52
- type: :development
53
- prerelease: false
54
- version_requirements: &id003 !ruby/object:Gem::Requirement
52
+ requirement: &id003 !ruby/object:Gem::Requirement
55
53
  none: false
56
54
  requirements:
57
55
  - - ~>
58
56
  - !ruby/object:Gem::Version
59
- hash: 3
57
+ hash: 15
60
58
  segments:
61
59
  - 2
62
- - 3
63
- - 0
64
- version: 2.3.0
60
+ - 6
61
+ version: "2.6"
62
+ prerelease: false
65
63
  name: rspec
66
- requirement: *id003
67
- - !ruby/object:Gem::Dependency
68
64
  type: :development
65
+ version_requirements: *id003
66
+ - !ruby/object:Gem::Dependency
67
+ requirement: &id004 !ruby/object:Gem::Requirement
68
+ none: false
69
+ requirements:
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ hash: 3
73
+ segments:
74
+ - 0
75
+ version: "0"
69
76
  prerelease: false
70
- version_requirements: &id004 !ruby/object:Gem::Requirement
77
+ name: ruby-debug
78
+ type: :development
79
+ version_requirements: *id004
80
+ - !ruby/object:Gem::Dependency
81
+ requirement: &id005 !ruby/object:Gem::Requirement
71
82
  none: false
72
83
  requirements:
73
84
  - - ~>
@@ -78,12 +89,12 @@ dependencies:
78
89
  - 0
79
90
  - 0
80
91
  version: 1.0.0
92
+ prerelease: false
81
93
  name: bundler
82
- requirement: *id004
83
- - !ruby/object:Gem::Dependency
84
94
  type: :development
85
- prerelease: false
86
- version_requirements: &id005 !ruby/object:Gem::Requirement
95
+ version_requirements: *id005
96
+ - !ruby/object:Gem::Dependency
97
+ requirement: &id006 !ruby/object:Gem::Requirement
87
98
  none: false
88
99
  requirements:
89
100
  - - ~>
@@ -94,12 +105,12 @@ dependencies:
94
105
  - 5
95
106
  - 2
96
107
  version: 1.5.2
108
+ prerelease: false
97
109
  name: jeweler
98
- requirement: *id005
99
- - !ruby/object:Gem::Dependency
100
110
  type: :development
101
- prerelease: false
102
- version_requirements: &id006 !ruby/object:Gem::Requirement
111
+ version_requirements: *id006
112
+ - !ruby/object:Gem::Dependency
113
+ requirement: &id007 !ruby/object:Gem::Requirement
103
114
  none: false
104
115
  requirements:
105
116
  - - ">="
@@ -108,12 +119,12 @@ dependencies:
108
119
  segments:
109
120
  - 0
110
121
  version: "0"
122
+ prerelease: false
111
123
  name: rcov
112
- requirement: *id006
113
- - !ruby/object:Gem::Dependency
114
124
  type: :development
115
- prerelease: false
116
- version_requirements: &id007 !ruby/object:Gem::Requirement
125
+ version_requirements: *id007
126
+ - !ruby/object:Gem::Dependency
127
+ requirement: &id008 !ruby/object:Gem::Requirement
117
128
  none: false
118
129
  requirements:
119
130
  - - ">="
@@ -122,12 +133,12 @@ dependencies:
122
133
  segments:
123
134
  - 0
124
135
  version: "0"
136
+ prerelease: false
125
137
  name: vcr
126
- requirement: *id007
127
- - !ruby/object:Gem::Dependency
128
138
  type: :development
129
- prerelease: false
130
- version_requirements: &id008 !ruby/object:Gem::Requirement
139
+ version_requirements: *id008
140
+ - !ruby/object:Gem::Dependency
141
+ requirement: &id009 !ruby/object:Gem::Requirement
131
142
  none: false
132
143
  requirements:
133
144
  - - ~>
@@ -138,12 +149,12 @@ dependencies:
138
149
  - 3
139
150
  - 0
140
151
  version: 2.3.0
152
+ prerelease: false
141
153
  name: rspec
142
- requirement: *id008
143
- - !ruby/object:Gem::Dependency
144
154
  type: :development
145
- prerelease: false
146
- version_requirements: &id009 !ruby/object:Gem::Requirement
155
+ version_requirements: *id009
156
+ - !ruby/object:Gem::Dependency
157
+ requirement: &id010 !ruby/object:Gem::Requirement
147
158
  none: false
148
159
  requirements:
149
160
  - - ~>
@@ -154,12 +165,12 @@ dependencies:
154
165
  - 5
155
166
  - 2
156
167
  version: 1.5.2
168
+ prerelease: false
157
169
  name: jeweler
158
- requirement: *id009
159
- - !ruby/object:Gem::Dependency
160
170
  type: :development
161
- prerelease: false
162
- version_requirements: &id010 !ruby/object:Gem::Requirement
171
+ version_requirements: *id010
172
+ - !ruby/object:Gem::Dependency
173
+ requirement: &id011 !ruby/object:Gem::Requirement
163
174
  none: false
164
175
  requirements:
165
176
  - - ">="
@@ -168,12 +179,12 @@ dependencies:
168
179
  segments:
169
180
  - 0
170
181
  version: "0"
182
+ prerelease: false
171
183
  name: vcr
172
- requirement: *id010
184
+ type: :development
185
+ version_requirements: *id011
173
186
  - !ruby/object:Gem::Dependency
174
- type: :runtime
175
- prerelease: false
176
- version_requirements: &id011 !ruby/object:Gem::Requirement
187
+ requirement: &id012 !ruby/object:Gem::Requirement
177
188
  none: false
178
189
  requirements:
179
190
  - - ">="
@@ -184,12 +195,12 @@ dependencies:
184
195
  - 2
185
196
  - 2
186
197
  version: 0.2.2
198
+ prerelease: false
187
199
  name: monster_mash
188
- requirement: *id011
189
- - !ruby/object:Gem::Dependency
190
200
  type: :runtime
191
- prerelease: false
192
- version_requirements: &id012 !ruby/object:Gem::Requirement
201
+ version_requirements: *id012
202
+ - !ruby/object:Gem::Dependency
203
+ requirement: &id013 !ruby/object:Gem::Requirement
193
204
  none: false
194
205
  requirements:
195
206
  - - ">="
@@ -198,8 +209,10 @@ dependencies:
198
209
  segments:
199
210
  - 0
200
211
  version: "0"
212
+ prerelease: false
201
213
  name: json
202
- requirement: *id012
214
+ type: :runtime
215
+ version_requirements: *id013
203
216
  description: Allows you to call MailChimp <-> Amazon SES integration methods.
204
217
  email: dbalatero@gmail.com
205
218
  executables: []
@@ -256,7 +269,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
256
269
  requirements: []
257
270
 
258
271
  rubyforge_project:
259
- rubygems_version: 1.3.7
272
+ rubygems_version: 1.5.2
260
273
  signing_key:
261
274
  specification_version: 3
262
275
  summary: Gives API methods for MailChimp SES.