email_spec 2.0.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 71884a93a565ccd5661239e779088aa6c052abf9
4
- data.tar.gz: 659560fc32d6199538fbeb76a2f394c1dc83929a
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ Y2UxODJlODRhOGJiMTFhYjk5Nzc3Yjg1NzM5MzhkNTBkZTgwODY2ZA==
5
+ data.tar.gz: !binary |-
6
+ OGY4M2NkNjc3NjQ1OWY5MTkyNjU4ZTUxOTBjNmJkNjYwYmQyZTgyOA==
5
7
  SHA512:
6
- metadata.gz: eaefa127ba14d110085e4c0b8d55d24454a16844bb31fa76e8b9384a22fb79cff4940f49811eb29b71d23c7f6b36cfb02a7391a0d380d3e407531b355bf338a7
7
- data.tar.gz: d29d7ae4854dcbc1033dc5127a040404a6739f3ee34b25ebcc1d3066196a241a15ec10b5585d70ecef38d90029eb379bd9b5c6fc80d9cf601107ea2b559431ac
8
+ metadata.gz: !binary |-
9
+ NzBkYzBkMzRhMWE1OTRkZmQ2MDFjMjkzMDkxYTI3YjY1NzU1MTY3YzA2Yzk3
10
+ N2U2N2Q0Mjg1ZGQzMjhhYzNlZDE2NDRmMDZkZWYzNTI3OWQwYzIxM2Q3OGRl
11
+ ZGJkMjgzNmQ2MTEzZDQxODIxNDYyNWE5MDdmM2YwYzIwOWEzM2Y=
12
+ data.tar.gz: !binary |-
13
+ NTY5MDdjNGNlZjhjNjA2N2UxZjY0ZmZjMTFkODNmNTlmZTQ2YzZlMmZjZGFl
14
+ MDU2MmNhYWJlNDEzZTcxYTA2NWU4Njk0ZWVmMDgzZjQ3ZjIxY2RjZDIzNzY0
15
+ NjQzYzhiN2EwNWMzNjVlNzY3MDVjZDQwMWEzYmY2NzJhNjIwZWI=
@@ -0,0 +1,346 @@
1
+ ## 2.1.0 2016-05-04
2
+
3
+ * Add Ruby 2.2.3 and 2.3.0 to Travis (@etagwerker)
4
+ * Fix decoding of email body before matching (@schmierkov)
5
+ * Invoke Reset Mailer before each scenario (@etagwerker)
6
+ * Add html method for email (@eliotsykes)
7
+ * Added actionmailer and droped cucumber-rails and cucumber-sinatra dependency (@mauro-oto)
8
+ * Fix regex to improve matching of link text in email (@Hirurg103)
9
+ * Improved README (@etagwerker)
10
+
11
+ ## 2.0.0 2016-01-15
12
+
13
+ * Upgraded to RSpec 3.1 (Daniel Doubrovkine)
14
+ * Remove integration of Delayed Job (@jeroenvandijk)
15
+ * Better coverage for `#reply_to` (@akshayrawat)
16
+ * Decode encoded links (@deadlyicon)
17
+ * Add Ruby 2.1.0 to Travis (@salimane)
18
+ * Upgraded Rspec and Cucumber (@dblock)
19
+ * Don't assume Rspec is always available (@myobie)
20
+ * Fix unread emails for cached deliverys (@thickpaddy)
21
+ * Better link matching with regexp (@ronaldsalas)
22
+ * Signal non backwards compatible release with version 2.0.0 (@etagwerker)
23
+ * Upgraded mail dependency (@etagwerker)
24
+ * Better documentation for new Rspec syntax (@etagwerker)
25
+ * Updated Travis configuration to solve broken builds (@schmierkov)
26
+ * Fixed Rspec warnings and removed rails_generators from repo (@mauro-oto)
27
+ * Added coverage for links surrounded by tags (@mauro-oto)
28
+
29
+ ## 1.6.0 2014-05-27
30
+
31
+ * New RSpec matcher API support (Morton Jonuschat)
32
+ * Turnip Doc updates (Joshua Muheim)
33
+ * Use Mail#destination for picking recipients (Lukasz Strzalkowski)
34
+ * Emails deliver to nobody when perform_deliveries is set to false (Sean Griffin)
35
+
36
+ ## 1.5.0 2013-07-22
37
+
38
+ * Upgraded use of Capybara to avoid deprecation warnings.
39
+ * Upgraded use of RSpec to deal with new expect API (Thomas Drake-Brockman)
40
+
41
+ ### New features
42
+ * visit_in_email now works for emails that are not the current_email (Ernesto Tagwerker)
43
+ * emails can be found based on :from field (John Cant)
44
+
45
+ ### Bug fixes
46
+ * Emails that are not found when clicking a link now raise an exception. (Adam Berlin & Alex Kramer)
47
+
48
+ ## 1.4.0 2012-10-30
49
+
50
+ * removed jeweler in favor of just using bundler for all gem management.
51
+
52
+ ### New features
53
+ * MiniTest support! See README for documentation. (Mike Moore)
54
+
55
+ ## 1.3.0 2011-04-07
56
+
57
+ Many thanks to Derek Hammer and George Ardeleanu who both spontaneously cleaned up various parts of the project
58
+ and helped get the release out the door. Yay opensoruce!
59
+
60
+ ### New features
61
+
62
+ * Launchy is now used to open up the email viewer. (Matt Burke)
63
+ * Email Viewer now works in Rails 3 (Woody Peterson)
64
+ * Email Viewer now works with UTF-8. (Woody Peterson)
65
+ * Documentation for email matchers. (Derek Hammer)
66
+
67
+ ## 1.2.1 2011-06-20
68
+
69
+ ### Bugfixes
70
+
71
+ * find_email now allows with_subject and with_text to be either a String or Regexp. Issue #67. (Curtis Miller)
72
+
73
+ ## 1.2.0 2011-06-16
74
+
75
+ ### New features
76
+
77
+ * [he|she] options for steps. (Dan Croak)
78
+ * cc_to RSpec matcher. (Arie on github)
79
+ * Check both html and text parts of multipart emails in Cucumber step. (Charles Barbier)
80
+ * delivery_method is not set by email_spec to allow for SMTP (e.g. MockSMTP) delivery (Donald Piret)
81
+
82
+ ### Bugfixes
83
+
84
+ * delivered_to matcher now compares both sender name and email address. (Jason Garber)
85
+ * find_email now matches with_subject and with_text containing text with regex sensitive characters. Issue #31. (Curtis Miller)
86
+ * current_email_address to work outside of the context of Cucumber. (Szymon Przybył)
87
+
88
+ ## 1.1.1 2010-12-29
89
+ * Require "action_mailer" to avoid deprecation warnings. (Ryan Bigg)
90
+ * Relaxes pessimistic version dependency on RSpec. (GH-41 Dan Pickett)
91
+
92
+ ## 1.1.0 2010-12-20
93
+
94
+ ### Bugfixes
95
+
96
+ * anchor tags are no longer ignored when clicking links in emails (Anders Törnqist and Nicklas Ramhöj)
97
+ * set_current_email handles cases where To to blank but may contain CC, or BCC recipients (Murray Steele)
98
+ * Doc fixes (Florent Guilleux)
99
+
100
+
101
+ ## 1.0 2010-07-31 Rails 3.0 Release
102
+ This release makes email-spec compatible with Rails 3 and RSpec 2.x.
103
+
104
+ IMPORTANT: As of 1.0 email-spec is no longer backwards compatible wit Rails 2.x. I will be maintaining a 0.6
105
+ branch on github/rubygems for Rails 2 compatibility if anyone wants new features backported.
106
+
107
+ This was truly a community effort and I appreciate all of time and effort donated by those involved. Specifically:
108
+ * Maxim Chernyak for the initial conversion work to Rails 3
109
+ * Tim Harper for ironing out various matcher bugs
110
+ * Patrick Muldoon for doing a fantastic job of cleaning up the features and specs. He also fixed the
111
+ DelayedJob support and worked through all the bundler issues the project was facing.
112
+
113
+ ### Bugfixes
114
+
115
+ * Further checks for older DelayedJob versions to fix compatibility issues. (Andrea Longhi and others)
116
+
117
+ ## 0.6.2 2010-03-21
118
+
119
+ ### New features
120
+
121
+ * New reply_to matcher. (David Balatero)
122
+
123
+ ## 0.6.1 2010-03-17
124
+
125
+ ### New features
126
+
127
+ * Ability to click image links via the image alt tag. (Tim Harper)
128
+
129
+ ## 0.6.0 2010-03-05
130
+
131
+ ### New features
132
+
133
+ * Ability to open a list of attachments on an email (with corresponding steps and EmailViewer support). (Kieran Pilkington)
134
+
135
+ ### Bugfixes
136
+
137
+ * Spelling mistake in steps. (Ben Mabey)
138
+ * Delayed Job background processor fixes
139
+ * Narrow delayed job collisions with other apps defining Delayed constant. (Kieran Pilkington)
140
+ * Fix compatibility with earlier versions of DelayedJob (Michael Baumgarten and Kieran Pilkington)
141
+
142
+ ### Changes
143
+
144
+ * Deprecated steps were removed. (Kieran Pilkington)
145
+
146
+ ## 0.5.0 2010-02-22
147
+
148
+ ### New features
149
+
150
+ * "should receive <x> emails with subject <the_subject>" step definition (Balint Erdi)
151
+ * "should receive an email with the following body:" step definition (Ben Mabey)
152
+ * Debugging steps that tie into EmailViewer: (Ben Mabey)
153
+ * "save and open current email"
154
+ * "save and open all text emails"
155
+ * "save and open all html emails"
156
+ * "save and open all raw emails"
157
+
158
+ ### Bugfixes
159
+
160
+ * Gracefully handle cases where emails do not have a 'to' value. (Kieran Pilkington)
161
+
162
+ ## 0.4.0 2010-01-07
163
+
164
+ ### New features
165
+
166
+ * Added support for action_mailer_cache_delivery plugin. (Dan Dofter)
167
+ You must use the fork at: http://github.com/liangzan/action_mailer_cache_delivery
168
+
169
+ ### Bugfixes
170
+
171
+ * `be_delivered_from` matcher now compares both sender name and email address. (Dan Dofter)
172
+
173
+ ## 0.3.8 2009-12-23
174
+
175
+ ### Bugfixes
176
+
177
+ * Guard against cc and bcc fields being nil for ActionMailer. (Piotr Sarnacki)
178
+
179
+ ## 0.3.7 2009-12-17
180
+
181
+ ### New features
182
+
183
+ * Matchers are now Ruby 1.9 compatible. (John Dewey)
184
+
185
+ ## 0.3.6 2009-12-16
186
+
187
+ ### New features
188
+
189
+ * Cucumber steps for `be_delivered_from`, `have_header` matchers. (Joseph Holsten)
190
+ * Explicit regular expression steps. i.e. `I should see /foo/ in the email body` (Joseph Holsten)
191
+
192
+ ## 0.3.5 2009-09-30 The Pony Release!
193
+
194
+ ### New features
195
+
196
+ * Support for Pony mailer library. (Rob Holland)
197
+
198
+ ## 0.3.4 2009-09-26
199
+
200
+ ### Bugfixes
201
+
202
+ * Typo and logic fixes for DeliverFrom matcher. (Yury Kotlyarov)
203
+
204
+ ## 0.3.3 2009-09-18
205
+
206
+ ### New features
207
+
208
+ * DeliverFrom matcher. i.e. `email.should deliver_from(blah)` or `email.should be_delivered_from(blah)` (Diego Carrion)
209
+
210
+ ## 0.3.2 2009-09-10
211
+
212
+ ### New features
213
+
214
+ * Support for delayed_job. (Kieran Pilkington)
215
+
216
+ ## 0.3.1 2009-08-19
217
+
218
+ This release is a general refactoring of the steps and helpers.
219
+ The example rails app was also updated to use the lateset rails and webrat. It also takes advantages
220
+ and the newer step definistions including the new third-person forms.
221
+
222
+ Some of the generated steps are being removed in favor of some of the newer ones. The older ones
223
+ will remain until 0.4.0 but will issue deprecation warnings.
224
+
225
+ Big shoutout to Kieran Pilkington who did the majority of work for this release.
226
+
227
+ ## 0.3.0 2009-08-13
228
+
229
+ ### New features
230
+
231
+ * New helper #last_email_address which returns the last address used by email-spec for that scenario. (Ben Mabey)
232
+ * Steps now support third person language. (Kieran P)
233
+ * "[email] should receive ... " now supports "an" instead of just an integer. (Kieran Pilkington)
234
+ With these changes, the following is now possible:
235
+
236
+ ```
237
+ Then "jack@example.com" should receive an email
238
+ When they open the email
239
+ Then they should see "Account has been created" in the subject
240
+ ```
241
+
242
+ * Additional default steps (Balint Erdi)
243
+ * `Then /^I should not receive any emails?$/`
244
+ * `When %r{^"([^"]*?)" opens? the email$} do |address|`
245
+
246
+ ## 0.2.1 2009-5-29
247
+
248
+ ### New Features
249
+
250
+ * BCC RSpec matcher. (Josh Nichols)
251
+
252
+ ### Bugfixes
253
+
254
+ * Include BCCed and CCed messsages in the mailbox. (Jakub Kosiński)
255
+
256
+ ## 0.2.0 2009-6-08
257
+ No changes. Bumping version for RubyForge release.
258
+
259
+
260
+ ## 0.1.4 2009-5-29
261
+
262
+ ### Bugfixes
263
+
264
+ * Require deliveries in the helpers so it doesn't blow up with RSpec. (Craig Webster)
265
+
266
+ ## 0.1.3 2009-4-15
267
+
268
+ ### Bugfixes
269
+
270
+ * Fixed regular expressions in genertaed steps. (Ben Mabey)
271
+ * World semantics changed in cucumber (0.2.3.2), email_spec now uses the new API. (Hector Morales)
272
+
273
+ ## 0.1.2 2009-4-05
274
+
275
+ ### Bugfixes
276
+
277
+ * Actually added the renamed generators to the gem so people could use it! D'oh! (Ben Mabey)
278
+ * You can either use `./script generate email_spec` or `rubigen rails email_spec`
279
+ * Removed Rake tasks from example application to prevent conflicts when used as a plugin. (Ben Mabey)
280
+
281
+ ## 0.1.1 2009-3-26
282
+
283
+ ### New features
284
+
285
+ * Switched dir structure over to support rubigen. (Dr. Nic)
286
+
287
+ ## 0.1.0 2009-3-25
288
+
289
+ ### New features
290
+
291
+ * Change Rakefile to run all specs and features, as well as prepare the db (Mischa Fierer)
292
+ * Allow for array to be passed into deliver_to matcher. (Diego Carrion)
293
+ * Added matcher for checking if a collision of emails includes an email with a particular subject (Luke Melia, Noah Davis)
294
+ * Introduced hook to convert objects to email addresses (Luke Melia and Lee Bankewitz)
295
+
296
+ This allows you, in your step matcher, to say something like:
297
+ maillbox_for(some_user)
298
+
299
+ Use it in your cucumber env.rb like so:
300
+
301
+ ```
302
+ EmailSpec::AddressConverter.instance.conversion do |input|
303
+ if input.is_a?(User)
304
+ input.email
305
+ else
306
+ input
307
+ end
308
+ end
309
+ ```
310
+
311
+ ### Bugfixes
312
+
313
+ * Revert parse_email_for_link helper method to allow for text links as well as explicit link finding. (Mischa Fierer)
314
+ * Isolated variances between using email-spec with an ARMailer project. (Luke Melia)
315
+
316
+ ## 0.0.9 2009-2-15
317
+
318
+ ### New features
319
+
320
+ * have_body_text, have_header matchers (Luke Melia)
321
+ * EmailViewer - opens all sent emails in a given scenario when the environment variables are set. (Luke Melia)
322
+ * Added compatibility with using ARMailer in test mode. (Luke Melia)
323
+
324
+ ### Bugfixes
325
+
326
+ * set_current_email now works with multiple addresses in To field. (Brian McManus, Ben Mabey)
327
+
328
+ ## 0.0.7 2009-1-20
329
+
330
+ ### New features
331
+
332
+ * have_subject matcher (Ben Mabey)
333
+
334
+ ## 0.0.6 2008-12-23
335
+
336
+ ### New features
337
+
338
+ * Improved RSpec documentation and refactorings. (Ben Mabey)
339
+
340
+ ### Bugfixes
341
+
342
+ * Removed sample app Rake Tasks to have it play nice with environments that use Cucumber as plugin- not gem. (Ben Mabey, Ivor- on github)
343
+
344
+ ## 0.0.5 2008-12-18
345
+
346
+ * Initial release - see this post for full history and contributors: http://www.benmabey.com/2008/12/18/github-rocks/
data/README.md CHANGED
@@ -3,10 +3,9 @@
3
3
 
4
4
  ## Email Spec
5
5
 
6
- A collection of matchers for RSpec, MiniTest and Cucumber steps to make testing emails go smoothly.
6
+ A collection of matchers for `RSpec`, `MiniTest` and `Cucumber` steps to make testing emails go smoothly.
7
7
 
8
- This library works with ActionMailer and Pony. When using it with ActionMailer it works with
9
- ActiveRecord Mailer, and action_mailer_cache_delivery.
8
+ This library works with `ActionMailer` and `Pony`. When using it with ActionMailer it works with ActiveRecord Mailer, and [action_mailer_cache_delivery](https://rubygems.org/gems/action_mailer_cache_delivery).
10
9
 
11
10
  If you are testing emails in conjunction with an automated browser solution, like Selenium,
12
11
  you will want to use [action_mailer_cache_delivery](http://rubygems.org/gems/action_mailer_cache_delivery) in your test environment. (This is
@@ -33,8 +32,7 @@ require 'email_spec' # add this line if you use spork
33
32
  require 'email_spec/cucumber'
34
33
  ```
35
34
 
36
- This will load all the helpers that the steps rely on.
37
- It will also add a Before hook for Cucumber so that emails are cleared at the start of each scenario.
35
+ This will load all the helpers that the steps rely on. It will also add a `Before` hook for `Cucumber` so that emails are cleared at the start of each scenario.
38
36
 
39
37
  Then:
40
38
 
@@ -42,11 +40,9 @@ Then:
42
40
  rails generate email_spec:steps
43
41
  ```
44
42
 
45
- This will give you a bunch of steps to get started with in step_definitions/email_steps.rb
43
+ This will give you a bunch of steps to get started with in `step_definitions/email_steps.rb`
46
44
 
47
- By default, the generated file will look for email to example@example.com. You can either change this
48
- by editing the current_email_address method in email_steps.rb, or by simply specifying the target
49
- email in your features:
45
+ By default, the generated file will look for email to example@example.com. You can either change this by editing the `current_email_address` method in `email_steps.rb`, or by simply specifying the target email in your features:
50
46
 
51
47
  ```gherkin
52
48
  Scenario: A new person signs up
@@ -62,27 +58,10 @@ First you need to require email_spec in your spec_helper.rb:
62
58
 
63
59
  ```ruby
64
60
  require "email_spec"
61
+ require "email_spec/rspec"
65
62
  ```
66
63
 
67
- You will then need to include EmailSpec::Helpers and EmailSpec::Matchers in your example groups.
68
- If you want to have access to the helpers and matchers in all of your examples you can do the following in your spec_helper.rb:
69
-
70
- ```ruby
71
- RSpec.configure do |config|
72
- config.include(EmailSpec::Helpers)
73
- config.include(EmailSpec::Matchers)
74
- end
75
- ```
76
-
77
- Otherwise, you will need to include them in the example groups you wish to use them:
78
-
79
- ```ruby
80
- describe "Signup Email" do
81
- include EmailSpec::Helpers
82
- include EmailSpec::Matchers
83
- ...
84
- end
85
- ```
64
+ This will load all the helpers that the scenarios can count on. It will also add a `before(:each)` hook so that emails are cleared at the start of each scenario.
86
65
 
87
66
  ### MiniTest
88
67
 
@@ -223,7 +202,7 @@ expect(email).to reply_to("support@myapp.com")
223
202
  ```
224
203
 
225
204
 
226
- ##### deliver_to(*email_addresses)
205
+ ##### deliver_to(\*email_addresses)
227
206
  alias: `be_delivered_to`
228
207
 
229
208
  This checks that the To header's email addresses (the bob@example.com of
@@ -247,7 +226,7 @@ expect(email).to deliver_from("sally@yahoo.com")
247
226
  ```
248
227
 
249
228
 
250
- ##### bcc_to(*email_addresses)
229
+ ##### bcc_to(\*email_addresses)
251
230
 
252
231
  This checks that the BCC header's email addresses (the bob@example.com of
253
232
  "Bob Saget <bob@example.com>") are set to the addresses.
@@ -258,7 +237,7 @@ expect(email).to bcc_to("sue@yahoo.com", "bill@yahoo.com")
258
237
  ```
259
238
 
260
239
 
261
- ##### cc_to(*email_addresses)
240
+ ##### cc_to(\*email_addresses)
262
241
 
263
242
  This checks that the CC header's email addresses (the bob@example.com of
264
243
  "Bob Saget <bob@example.com>") are set to the addresses.
@@ -338,9 +317,8 @@ email = UserMailer.create_signup "jojo@yahoo.com", "Jojo Binks"
338
317
  assert_must deliver_to("jojo@yahoo.com"), email
339
318
  ```
340
319
 
341
-
342
320
  ## Original Authors
343
321
 
344
322
  Ben Mabey, Aaron Gibralter, Mischa Fierer
345
323
 
346
- Please see History.txt for upcoming changesets and other contributors.
324
+ Please see [Changelog.md](Changelog.md) for upcoming changes and other contributors.