griddler-mandrill 1.0.0 → 1.0.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/CHANGELOG.md +6 -0
- data/lib/griddler/mandrill/adapter.rb +3 -1
- data/lib/griddler/mandrill/version.rb +1 -1
- data/spec/griddler/mandrill/adapter_spec.rb +36 -2
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7cd7048b321e79882c0e7f57e2d0cc5b64a0c18b
|
4
|
+
data.tar.gz: d543a55548ddcadcb6117d60d899fa02c74b5290
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 613a1f438bccfc844e0f71a4a9e084aa1c705ff896b20682c77719b337017f10cc17fc55715506f0c0a04eb143aeeb44899a7736f0aa5907ea0f8c2662d8a737
|
7
|
+
data.tar.gz: 467dacb9b6103436c45c578940e27c6cd6b774df9f1a3505445bdfeb17131a79de38750cea67f2790664cc5bd6c57f03be825e2db5c52a44ebf260e7f3a95d17
|
data/CHANGELOG.md
ADDED
@@ -62,7 +62,9 @@ module Griddler
|
|
62
62
|
def create_tempfile(attachment)
|
63
63
|
filename = attachment[:name]
|
64
64
|
tempfile = Tempfile.new(filename, Dir::tmpdir, encoding: 'ascii-8bit')
|
65
|
-
|
65
|
+
content = attachment[:content]
|
66
|
+
content = Base64.decode64(content) if attachment[:base64]
|
67
|
+
tempfile.write(content)
|
66
68
|
tempfile.rewind
|
67
69
|
tempfile
|
68
70
|
end
|
@@ -44,6 +44,17 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
44
44
|
expect(normalized_params[0][:attachments]).to be_empty
|
45
45
|
end
|
46
46
|
|
47
|
+
it 'works with non-base64 encoded files' do
|
48
|
+
params = params_with_csv_attachment
|
49
|
+
|
50
|
+
normalized_params = Griddler::Mandrill::Adapter.normalize_params(params)
|
51
|
+
|
52
|
+
file, = *normalized_params[0][:attachments]
|
53
|
+
|
54
|
+
expect(file.original_filename).to eq('file.csv')
|
55
|
+
expect(file.size).to eq(upload_3_params[:length])
|
56
|
+
end
|
57
|
+
|
47
58
|
describe 'when the email has no text part' do
|
48
59
|
before do
|
49
60
|
@params = params_hash
|
@@ -135,6 +146,14 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
135
146
|
mandrill_events params.to_json
|
136
147
|
end
|
137
148
|
|
149
|
+
def params_with_csv_attachment
|
150
|
+
params = params_hash
|
151
|
+
params[0][:msg][:attachments] = {
|
152
|
+
'file.csv' => upload_3_params
|
153
|
+
}
|
154
|
+
mandrill_events params.to_json
|
155
|
+
end
|
156
|
+
|
138
157
|
def text_body
|
139
158
|
<<-EOS.strip_heredoc.strip
|
140
159
|
Dear bob
|
@@ -163,7 +182,8 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
163
182
|
name: 'photo1.jpg',
|
164
183
|
content: Base64.encode64(file.read),
|
165
184
|
type: 'image/jpeg',
|
166
|
-
length: size
|
185
|
+
length: size,
|
186
|
+
base64: true
|
167
187
|
}
|
168
188
|
end
|
169
189
|
end
|
@@ -176,7 +196,21 @@ describe Griddler::Mandrill::Adapter, '.normalize_params' do
|
|
176
196
|
name: 'photo2.jpg',
|
177
197
|
content: Base64.encode64(file.read),
|
178
198
|
type: 'image/jpeg',
|
179
|
-
length: size
|
199
|
+
length: size,
|
200
|
+
base64: true
|
201
|
+
}
|
202
|
+
end
|
203
|
+
end
|
204
|
+
|
205
|
+
def upload_3_params
|
206
|
+
@upload_2_params ||= begin
|
207
|
+
content = 'Some | csv | file | here'
|
208
|
+
{
|
209
|
+
name: 'file.csv',
|
210
|
+
content: content,
|
211
|
+
type: 'text/plain',
|
212
|
+
length: content.length,
|
213
|
+
base64: false
|
180
214
|
}
|
181
215
|
end
|
182
216
|
end
|
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.0.
|
4
|
+
version: 1.0.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: 2014-
|
11
|
+
date: 2014-07-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: griddler
|
@@ -76,6 +76,7 @@ files:
|
|
76
76
|
- ".gitignore"
|
77
77
|
- ".rspec"
|
78
78
|
- ".travis.yml"
|
79
|
+
- CHANGELOG.md
|
79
80
|
- CONTRIBUTING.md
|
80
81
|
- Gemfile
|
81
82
|
- LICENSE.txt
|