email_spec 2.0.0 → 2.1.0

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 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.