axtro-aws-ses 0.4.4

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.
@@ -0,0 +1,94 @@
1
+ require File.expand_path('../helper', __FILE__)
2
+
3
+ class SendEmailTest < Test::Unit::TestCase
4
+ context 'when sending email' do
5
+ setup do
6
+ @base = generate_base
7
+ @basic_email = { :from => 'jon@example.com',
8
+ :to => 'dave@example.com',
9
+ :subject => 'Subject1',
10
+ :text_body => 'Body1' }
11
+ end
12
+
13
+ context 'adding to a hash' do
14
+ should 'add array elements to the hash' do
15
+ hash = {}
16
+ ary = ['x', 'y']
17
+ @base.send(:add_array_to_hash!, hash, 'SomeKey', ary)
18
+ expected = {'SomeKey.member.1' => 'x', 'SomeKey.member.2' => 'y'}
19
+ assert_equal expected, hash
20
+ end
21
+
22
+ should 'add singular elements to the hash' do
23
+ hash = {}
24
+ ary = 'z'
25
+ @base.send(:add_array_to_hash!, hash, 'SomeKey', ary)
26
+ expected = {'SomeKey.member.1' => 'z'}
27
+ assert_equal expected, hash
28
+ end
29
+ end
30
+
31
+ should 'send an e-mail' do
32
+ mock_connection(@base, :body => %{
33
+ <SendEmailResponse xmlns="http://ses.amazonaws.com/doc/2010-12-01/">
34
+ <SendEmailResult>
35
+ <MessageId>abc-123</MessageId>
36
+ </SendEmailResult>
37
+ <ResponseMetadata>
38
+ <RequestId>xyz-123</RequestId>
39
+ </ResponseMetadata>
40
+ </SendEmailResponse>
41
+ })
42
+
43
+ result = @base.send_email @basic_email
44
+ assert result.success?
45
+ assert_equal 'abc-123', result.message_id
46
+ assert_equal 'xyz-123', result.request_id
47
+ end
48
+
49
+ should 'send a raw e-mail with a string' do
50
+ mock_connection(@base, :body => %{
51
+ <SendRawEmailResponse xmlns="http://ses.amazonaws.com/doc/2010-12-01/">
52
+ <SendRawEmailResult>
53
+ <MessageId>abc-123</MessageId>
54
+ </SendRawEmailResult>
55
+ <ResponseMetadata>
56
+ <RequestId>xyz-123</RequestId>
57
+ </ResponseMetadata>
58
+ </SendRawEmailResponse>
59
+ })
60
+
61
+ result = @base.send_raw_email(@basic_email.to_s)
62
+ assert result.success?
63
+ assert_equal 'abc-123', result.message_id
64
+ assert_equal 'xyz-123', result.request_id
65
+ end
66
+
67
+ should 'raises an error if sending raw e-mail with a hash but Mail gem is not available' do
68
+ begin
69
+ @base.send_raw_email(@basic_email)
70
+ rescue => e
71
+ assert_equal("To use #send_raw_email with a hash, please install the Mail gem", e.message)
72
+ end
73
+ end
74
+
75
+ should 'send a raw e-mail with a hash object' do
76
+ require 'mail'
77
+ mock_connection(@base, :body => %{
78
+ <SendRawEmailResponse xmlns="http://ses.amazonaws.com/doc/2010-12-01/">
79
+ <SendRawEmailResult>
80
+ <MessageId>abc-123</MessageId>
81
+ </SendRawEmailResult>
82
+ <ResponseMetadata>
83
+ <RequestId>xyz-123</RequestId>
84
+ </ResponseMetadata>
85
+ </SendRawEmailResponse>
86
+ })
87
+
88
+ result = @base.send_raw_email(@basic_email)
89
+ assert result.success?
90
+ assert_equal 'abc-123', result.message_id
91
+ assert_equal 'xyz-123', result.request_id
92
+ end
93
+ end
94
+ end
metadata ADDED
@@ -0,0 +1,215 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: axtro-aws-ses
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 4
8
+ - 4
9
+ version: 0.4.4
10
+ platform: ruby
11
+ authors:
12
+ - Drew Blas
13
+ - Marcel Molina Jr.
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-10-31 00:00:00 +01:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: xml-simple
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ segments:
29
+ - 0
30
+ version: "0"
31
+ type: :runtime
32
+ prerelease: false
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: builder
36
+ requirement: &id002 !ruby/object:Gem::Requirement
37
+ none: false
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ segments:
42
+ - 0
43
+ version: "0"
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *id002
47
+ - !ruby/object:Gem::Dependency
48
+ name: mime-types
49
+ requirement: &id003 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ segments:
55
+ - 0
56
+ version: "0"
57
+ type: :runtime
58
+ prerelease: false
59
+ version_requirements: *id003
60
+ - !ruby/object:Gem::Dependency
61
+ name: shoulda-context
62
+ requirement: &id004 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ segments:
68
+ - 0
69
+ version: "0"
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: *id004
73
+ - !ruby/object:Gem::Dependency
74
+ name: bundler
75
+ requirement: &id005 !ruby/object:Gem::Requirement
76
+ none: false
77
+ requirements:
78
+ - - ~>
79
+ - !ruby/object:Gem::Version
80
+ segments:
81
+ - 1
82
+ - 0
83
+ - 0
84
+ version: 1.0.0
85
+ type: :development
86
+ prerelease: false
87
+ version_requirements: *id005
88
+ - !ruby/object:Gem::Dependency
89
+ name: jeweler
90
+ requirement: &id006 !ruby/object:Gem::Requirement
91
+ none: false
92
+ requirements:
93
+ - - ~>
94
+ - !ruby/object:Gem::Version
95
+ segments:
96
+ - 1
97
+ - 5
98
+ - 2
99
+ version: 1.5.2
100
+ type: :development
101
+ prerelease: false
102
+ version_requirements: *id006
103
+ - !ruby/object:Gem::Dependency
104
+ name: rcov
105
+ requirement: &id007 !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ segments:
111
+ - 0
112
+ version: "0"
113
+ type: :development
114
+ prerelease: false
115
+ version_requirements: *id007
116
+ - !ruby/object:Gem::Dependency
117
+ name: flexmock
118
+ requirement: &id008 !ruby/object:Gem::Requirement
119
+ none: false
120
+ requirements:
121
+ - - ~>
122
+ - !ruby/object:Gem::Version
123
+ segments:
124
+ - 0
125
+ - 8
126
+ - 11
127
+ version: 0.8.11
128
+ type: :development
129
+ prerelease: false
130
+ version_requirements: *id008
131
+ description: Client library for Amazon's Simple Email Service's REST API
132
+ email: drew.blas@gmail.com
133
+ executables: []
134
+
135
+ extensions: []
136
+
137
+ extra_rdoc_files:
138
+ - LICENSE
139
+ - README.erb
140
+ - README.rdoc
141
+ - TODO
142
+ files:
143
+ - .document
144
+ - CHANGELOG
145
+ - Gemfile
146
+ - Gemfile.lock
147
+ - LICENSE
148
+ - README.erb
149
+ - README.rdoc
150
+ - Rakefile
151
+ - TODO
152
+ - VERSION
153
+ - aws-ses.gemspec
154
+ - axtro-aws-ses.gemspec
155
+ - lib/aws/actionmailer/ses_extension.rb
156
+ - lib/aws/ses.rb
157
+ - lib/aws/ses/addresses.rb
158
+ - lib/aws/ses/base.rb
159
+ - lib/aws/ses/expirable_memoize.rb
160
+ - lib/aws/ses/info.rb
161
+ - lib/aws/ses/response.rb
162
+ - lib/aws/ses/send_email.rb
163
+ - lib/aws/ses/version.rb
164
+ - test/address_test.rb
165
+ - test/base_test.rb
166
+ - test/expirable_memoize_test.rb
167
+ - test/fixtures.rb
168
+ - test/helper.rb
169
+ - test/info_test.rb
170
+ - test/mocks/fake_response.rb
171
+ - test/response_test.rb
172
+ - test/send_email_test.rb
173
+ has_rdoc: true
174
+ homepage: http://github.com/axtro/aws-ses
175
+ licenses:
176
+ - MIT
177
+ post_install_message:
178
+ rdoc_options: []
179
+
180
+ require_paths:
181
+ - lib
182
+ required_ruby_version: !ruby/object:Gem::Requirement
183
+ none: false
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ hash: 1189101767711930745
188
+ segments:
189
+ - 0
190
+ version: "0"
191
+ required_rubygems_version: !ruby/object:Gem::Requirement
192
+ none: false
193
+ requirements:
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ segments:
197
+ - 0
198
+ version: "0"
199
+ requirements: []
200
+
201
+ rubyforge_project:
202
+ rubygems_version: 1.3.7
203
+ signing_key:
204
+ specification_version: 3
205
+ summary: Client library for Amazon's Simple Email Service's REST API
206
+ test_files:
207
+ - test/address_test.rb
208
+ - test/base_test.rb
209
+ - test/expirable_memoize_test.rb
210
+ - test/fixtures.rb
211
+ - test/helper.rb
212
+ - test/info_test.rb
213
+ - test/mocks/fake_response.rb
214
+ - test/response_test.rb
215
+ - test/send_email_test.rb