griddler-mandrill 1.0.2 → 1.1.1
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/.travis.yml +3 -0
- data/CHANGELOG.md +3 -0
- data/griddler-mandrill.gemspec +2 -2
- data/lib/griddler/mandrill/adapter.rb +3 -2
- data/lib/griddler/mandrill/version.rb +1 -1
- data/spec/griddler/mandrill/adapter_spec.rb +45 -2
- metadata +7 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 986e391f3565a7f5189859a92a3c939b69c0c6e2
|
4
|
+
data.tar.gz: 8f4c5abcec2a7b26503f101bac709bb32ca918eb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 22c435ceb3b901cb4f5c867150dd8f7352292a67eb3c65c6de005cd99f34ffe9a94f9ea8c6f6c56176cc204e8bb4d43c23ac2a8412ff77c00be64bb656885879
|
7
|
+
data.tar.gz: 05073ddb3cbd1c4513174979e4ce5b318badc2a67362b1dd18c96044704059c927d4cdeecbd498afc793046e632a0379fa16ac251d638c987d7c61814450c024
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 1.0.3 (master)
|
2
|
+
* Replace `nil` for email text/html values with empty strings. #10 via [calleerlandsson](https://github.com/calleerlandsson)
|
3
|
+
|
1
4
|
## 1.0.2
|
2
5
|
* Replace slashes in filenames with underscores for temp file creation. #5 and
|
3
6
|
#6 via [ssidelnikov](https://github.com/ssidelnikov)
|
data/griddler-mandrill.gemspec
CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ['Stafford Brunk']
|
10
10
|
spec.email = ['stafford.brunk@gmail.com']
|
11
11
|
spec.summary = %q{Mandrill adapter for Griddler}
|
12
|
-
spec.description = %q{Adapter to allow the use of Mandrill's
|
12
|
+
spec.description = %q{Adapter to allow the use of Mandrill's Inbound Email Processing with Griddler}
|
13
13
|
spec.homepage = 'https://github.com/wingrunr21/griddler-mandrill'
|
14
14
|
spec.license = 'MIT'
|
15
15
|
|
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ['lib']
|
20
20
|
|
21
|
-
spec.add_dependency 'griddler'
|
21
|
+
spec.add_dependency 'griddler', '>= 1.2.1'
|
22
22
|
|
23
23
|
spec.add_development_dependency 'rspec'
|
24
24
|
spec.add_development_dependency 'rake'
|
@@ -16,10 +16,11 @@ module Griddler
|
|
16
16
|
to: recipients(:to, event),
|
17
17
|
cc: recipients(:cc, event),
|
18
18
|
bcc: recipients(:bcc, event),
|
19
|
+
headers: event[:headers],
|
19
20
|
from: full_email([ event[:from_email], event[:from_name] ]),
|
20
21
|
subject: event[:subject],
|
21
|
-
text: event
|
22
|
-
html: event
|
22
|
+
text: event[:text] || '',
|
23
|
+
html: event[:html] || '',
|
23
24
|
raw_body: event[:raw_msg],
|
24
25
|
attachments: attachment_files(event)
|
25
26
|
}
|
@@ -25,6 +25,15 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
28
|
+
describe Griddler::Email do
|
29
|
+
it 'accepts the mandrill headers hash without error' do
|
30
|
+
params = mixed_event_params
|
31
|
+
params_to_send = Griddler::Mandrill::Adapter.normalize_params(params)
|
32
|
+
headers = Griddler::EmailParser.extract_headers(params_to_send.first[:headers])
|
33
|
+
expect{headers}.not_to raise_error
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
28
37
|
it 'passes the received array of files' do
|
29
38
|
params = params_with_attachments
|
30
39
|
|
@@ -80,6 +89,21 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
80
89
|
end
|
81
90
|
end
|
82
91
|
|
92
|
+
describe 'when the email text part is nil' do
|
93
|
+
before do
|
94
|
+
@params = params_hash
|
95
|
+
@params.first[:msg][:text] = nil
|
96
|
+
end
|
97
|
+
|
98
|
+
it 'sets :text to an empty string' do
|
99
|
+
params = default_params(@params)
|
100
|
+
normalized_params = Griddler::Mandrill::Adapter.normalize_params(params)
|
101
|
+
normalized_params.each do |p|
|
102
|
+
expect(p[:text]).to eq ''
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
83
107
|
describe 'when the email has no html part' do
|
84
108
|
before do
|
85
109
|
@params = params_hash
|
@@ -95,6 +119,21 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
95
119
|
end
|
96
120
|
end
|
97
121
|
|
122
|
+
describe 'when the email html part is nil' do
|
123
|
+
before do
|
124
|
+
@params = params_hash
|
125
|
+
@params.first[:msg][:html] = nil
|
126
|
+
end
|
127
|
+
|
128
|
+
it 'sets :html to an empty string' do
|
129
|
+
params = default_params(@params)
|
130
|
+
normalized_params = Griddler::Mandrill::Adapter.normalize_params(params)
|
131
|
+
normalized_params.each do |p|
|
132
|
+
expect(p[:html]).to eq ''
|
133
|
+
end
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
98
137
|
describe 'when the email has no CC recipients' do
|
99
138
|
before do
|
100
139
|
@params = params_hash
|
@@ -148,7 +187,9 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
148
187
|
msg:
|
149
188
|
{
|
150
189
|
raw_msg: 'raw',
|
151
|
-
headers: {
|
190
|
+
headers: {"X-Mailer" => "Airmail (271)",
|
191
|
+
"Mime-Version" => "1.0",
|
192
|
+
"Content-Type" => "multipart/alternative; boundary=\"546876a7_66334873_aa8\""},
|
152
193
|
text: text_body,
|
153
194
|
html: text_html,
|
154
195
|
from_email: 'hernan@example.com',
|
@@ -178,6 +219,9 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
178
219
|
'Joey <joey@example.mandrillapp.com>'],
|
179
220
|
bcc: ['Roger <hidden@example.mandrillapp.com>'],
|
180
221
|
from: 'Hernan Example <hernan@example.com>',
|
222
|
+
headers: {"X-Mailer" => "Airmail (271)",
|
223
|
+
"Mime-Version" => "1.0",
|
224
|
+
"Content-Type" => "multipart/alternative; boundary=\"546876a7_66334873_aa8\""},
|
181
225
|
subject: 'hello',
|
182
226
|
text: %r{Dear bob},
|
183
227
|
html: %r{<p>Dear bob</p>},
|
@@ -278,7 +322,6 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
278
322
|
{
|
279
323
|
name: '=?UTF-8?B?0JrQvtC/0LjRjyB0ZW5kZXJfMTJfcm9zdGEueGxz?=',
|
280
324
|
content: content,
|
281
|
-
type: 'image/jpeg',
|
282
325
|
type: 'text/plain',
|
283
326
|
base64: false
|
284
327
|
}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: griddler-mandrill
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stafford Brunk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-07-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: griddler
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 1.2.1
|
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:
|
26
|
+
version: 1.2.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rspec
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,7 +66,8 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
description: Adapter to allow the use of Mandrill's
|
69
|
+
description: Adapter to allow the use of Mandrill's Inbound Email Processing with
|
70
|
+
Griddler
|
70
71
|
email:
|
71
72
|
- stafford.brunk@gmail.com
|
72
73
|
executables: []
|
@@ -108,7 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
108
109
|
version: '0'
|
109
110
|
requirements: []
|
110
111
|
rubyforge_project:
|
111
|
-
rubygems_version: 2.
|
112
|
+
rubygems_version: 2.4.8
|
112
113
|
signing_key:
|
113
114
|
specification_version: 4
|
114
115
|
summary: Mandrill adapter for Griddler
|