email_spectacular 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.configure do |config|
4
+ config.filter_run_including focus: true
5
+ config.run_all_when_everything_filtered = true
6
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ class EmailMock
4
+ attr_reader :subject, :text, :body
5
+
6
+ def initialize(
7
+ to: 'receiver@email.com',
8
+ from: 'sender@email.com',
9
+ subject: 'Subject',
10
+ text: 'Test Email',
11
+ body: "<body><h1>Test Email</h1><a href='www.test.com' /><img src='www.test.com' /></body>"
12
+ )
13
+ @to = to
14
+ @from = from
15
+ @subject = subject
16
+ @text = text
17
+ @body = body
18
+ end
19
+
20
+ def parts
21
+ [EmailBodyMock.new(@body)]
22
+ end
23
+
24
+ def to
25
+ [@to]
26
+ end
27
+
28
+ def from
29
+ [@from]
30
+ end
31
+ end
32
+
33
+ class EmailBodyMock
34
+ def initialize(text)
35
+ @text = text
36
+ end
37
+
38
+ def body
39
+ self
40
+ end
41
+
42
+ def decoded
43
+ @text
44
+ end
45
+ end
metadata ADDED
@@ -0,0 +1,175 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: email_spectacular
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Aleck Greenham
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-04-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: actionmailer
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: capybara
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.5'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 2.5.0
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '2.5'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 2.5.0
47
+ - !ruby/object:Gem::Dependency
48
+ name: bundler
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.6'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.6'
61
+ - !ruby/object:Gem::Dependency
62
+ name: guard
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '2.1'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '2.1'
75
+ - !ruby/object:Gem::Dependency
76
+ name: guard-rspec
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '4.7'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '4.7'
89
+ - !ruby/object:Gem::Dependency
90
+ name: rake
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ - !ruby/object:Gem::Dependency
104
+ name: rspec
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: 3.5.0
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: 3.5.0
117
+ description: Expressive email assertions that let you succinctly describe when emails
118
+ should and should not be sent
119
+ email:
120
+ - greenhama13@gmail.com
121
+ executables: []
122
+ extensions: []
123
+ extra_rdoc_files: []
124
+ files:
125
+ - ".gitignore"
126
+ - ".rspec"
127
+ - ".rubocop.yml"
128
+ - ".travis.yml"
129
+ - ".yardopts"
130
+ - Gemfile
131
+ - Guardfile
132
+ - LICENSE.txt
133
+ - README.md
134
+ - Rakefile
135
+ - email_spectacular.gemspec
136
+ - lib/email_spectacular.rb
137
+ - lib/email_spectacular/dsl.rb
138
+ - lib/email_spectacular/email_filter.rb
139
+ - lib/email_spectacular/expectation.rb
140
+ - lib/email_spectacular/failure_descriptions.rb
141
+ - lib/email_spectacular/matchers.rb
142
+ - lib/email_spectacular/parser.rb
143
+ - lib/email_spectacular/rspec.rb
144
+ - lib/email_spectacular/version.rb
145
+ - spec/email_expectation_spec.rb
146
+ - spec/spec_helper.rb
147
+ - spec/support/email_mock.rb
148
+ homepage: https://github.com/greena13/email_spectacular
149
+ licenses:
150
+ - MIT
151
+ metadata: {}
152
+ post_install_message:
153
+ rdoc_options: []
154
+ require_paths:
155
+ - lib
156
+ required_ruby_version: !ruby/object:Gem::Requirement
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ version: '0'
161
+ required_rubygems_version: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - ">="
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ requirements: []
167
+ rubyforge_project:
168
+ rubygems_version: 2.5.2.1
169
+ signing_key:
170
+ specification_version: 4
171
+ summary: High-level email spec helpers for acceptance, feature and request tests
172
+ test_files:
173
+ - spec/email_expectation_spec.rb
174
+ - spec/spec_helper.rb
175
+ - spec/support/email_mock.rb