hertz 0.1.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/spec/examples.txt CHANGED
@@ -1,13 +1,11 @@
1
- example_id | status | run_time |
2
- ------------------------------------------------------ | ------ | --------------- |
3
- ./spec/lib/hertz/courier/email_spec.rb[1:1:1] | passed | 0.00982 seconds |
4
- ./spec/lib/hertz/notifiable_spec.rb[1:1:1] | passed | 0.01297 seconds |
5
- ./spec/lib/hertz/notifiable_spec.rb[1:2:1] | passed | 0.45917 seconds |
6
- ./spec/lib/hertz/notification_deliverer_spec.rb[1:1:1] | passed | 0.02232 seconds |
7
- ./spec/mailers/notification_mailer_spec.rb[1:1:1] | passed | 0.1902 seconds |
8
- ./spec/models/hertz/notification_spec.rb[1:1:1] | passed | 0.00287 seconds |
9
- ./spec/models/hertz/notification_spec.rb[1:2:1] | passed | 0.00289 seconds |
10
- ./spec/models/hertz/notification_spec.rb[1:3:1] | passed | 0.01559 seconds |
11
- ./spec/models/hertz/notification_spec.rb[1:4:1] | passed | 0.00931 seconds |
12
- ./spec/models/hertz/notification_spec.rb[1:5:1] | passed | 0.02096 seconds |
13
- ./spec/models/hertz/notification_spec.rb[1:6] | passed | 0.00727 seconds |
1
+ example_id | status | run_time |
2
+ -------------------------------------------------- | ------ | --------------- |
3
+ ./spec/hertz/notifiable_spec.rb[1:1:1] | passed | 0.01387 seconds |
4
+ ./spec/hertz/notifiable_spec.rb[1:2:1] | passed | 0.0633 seconds |
5
+ ./spec/hertz/notification_deliverer_spec.rb[1:1:1] | passed | 0.01347 seconds |
6
+ ./spec/models/hertz/notification_spec.rb[1:1:1] | passed | 0.00661 seconds |
7
+ ./spec/models/hertz/notification_spec.rb[1:2:1] | passed | 0.00762 seconds |
8
+ ./spec/models/hertz/notification_spec.rb[1:3:1] | passed | 0.0372 seconds |
9
+ ./spec/models/hertz/notification_spec.rb[1:4:1] | passed | 0.01552 seconds |
10
+ ./spec/models/hertz/notification_spec.rb[1:5:1] | passed | 0.01958 seconds |
11
+ ./spec/models/hertz/notification_spec.rb[1:6] | passed | 0.01646 seconds |
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  FactoryGirl.define do
3
3
  factory :user do
4
- email { Faker::Internet.email }
5
4
  end
6
5
  end
File without changes
@@ -5,7 +5,7 @@ module Hertz
5
5
 
6
6
  before(:each) do
7
7
  module Courier
8
- class Test < Base
8
+ module Test
9
9
  def self.deliver_notification(_notification)
10
10
  end
11
11
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hertz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alessandro Desantis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-20 00:00:00.000000000 Z
11
+ date: 2016-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -150,7 +150,6 @@ files:
150
150
  - app/assets/stylesheets/hertz/application.css
151
151
  - app/controllers/hertz/application_controller.rb
152
152
  - app/helpers/hertz/application_helper.rb
153
- - app/mailers/hertz/notification_mailer.rb
154
153
  - app/models/hertz/notification.rb
155
154
  - app/views/layouts/hertz/application.html.erb
156
155
  - config/routes.rb
@@ -158,20 +157,16 @@ files:
158
157
  - lib/generators/hertz/install_generator.rb
159
158
  - lib/generators/hertz/templates/initializer.rb
160
159
  - lib/hertz.rb
161
- - lib/hertz/courier/base.rb
162
- - lib/hertz/courier/email.rb
163
160
  - lib/hertz/engine.rb
164
161
  - lib/hertz/notifiable.rb
165
162
  - lib/hertz/notification_deliverer.rb
166
163
  - lib/hertz/version.rb
167
- - lib/tasks/hertz_tasks.rake
168
164
  - spec/dummy/README.rdoc
169
165
  - spec/dummy/Rakefile
170
166
  - spec/dummy/app/assets/javascripts/application.js
171
167
  - spec/dummy/app/assets/stylesheets/application.css
172
168
  - spec/dummy/app/controllers/application_controller.rb
173
169
  - spec/dummy/app/helpers/application_helper.rb
174
- - spec/dummy/app/mailers/application_mailer.rb
175
170
  - spec/dummy/app/models/test_notification.rb
176
171
  - spec/dummy/app/models/user.rb
177
172
  - spec/dummy/app/views/hertz/notification_mailer/test_notification.html.erb
@@ -204,6 +199,7 @@ files:
204
199
  - spec/dummy/db/migrate/20160415175358_create_hertz_notifications.hertz.rb
205
200
  - spec/dummy/db/migrate/20160415175837_create_users.rb
206
201
  - spec/dummy/db/migrate/20160418122437_add_email_to_users.rb
202
+ - spec/dummy/db/migrate/20160508094342_remove_email_from_users.rb
207
203
  - spec/dummy/db/schema.rb
208
204
  - spec/dummy/log/development.log
209
205
  - spec/dummy/log/test.log
@@ -214,10 +210,8 @@ files:
214
210
  - spec/examples.txt
215
211
  - spec/factories/hertz/notifications.rb
216
212
  - spec/factories/users.rb
217
- - spec/lib/hertz/courier/email_spec.rb
218
- - spec/lib/hertz/notifiable_spec.rb
219
- - spec/lib/hertz/notification_deliverer_spec.rb
220
- - spec/mailers/notification_mailer_spec.rb
213
+ - spec/hertz/notifiable_spec.rb
214
+ - spec/hertz/notification_deliverer_spec.rb
221
215
  - spec/models/hertz/notification_spec.rb
222
216
  - spec/rails_helper.rb
223
217
  - spec/spec_helper.rb
@@ -248,61 +242,59 @@ signing_key:
248
242
  specification_version: 4
249
243
  summary: A Rails engine for in-app notifications.
250
244
  test_files:
251
- - spec/models/hertz/notification_spec.rb
252
- - spec/examples.txt
245
+ - spec/spec_helper.rb
246
+ - spec/hertz/notifiable_spec.rb
247
+ - spec/hertz/notification_deliverer_spec.rb
253
248
  - spec/factories/hertz/notifications.rb
254
249
  - spec/factories/users.rb
255
- - spec/spec_helper.rb
256
- - spec/mailers/notification_mailer_spec.rb
257
- - spec/lib/hertz/notification_deliverer_spec.rb
258
- - spec/lib/hertz/courier/email_spec.rb
259
- - spec/lib/hertz/notifiable_spec.rb
260
- - spec/support/database_cleaner.rb
261
250
  - spec/support/factory_girl.rb
251
+ - spec/support/database_cleaner.rb
252
+ - spec/models/hertz/notification_spec.rb
253
+ - spec/examples.txt
262
254
  - spec/rails_helper.rb
263
- - spec/dummy/public/404.html
264
- - spec/dummy/public/422.html
265
- - spec/dummy/public/500.html
266
- - spec/dummy/public/favicon.ico
267
- - spec/dummy/config.ru
268
- - spec/dummy/db/migrate/20160418122437_add_email_to_users.rb
269
- - spec/dummy/db/migrate/20160415175358_create_hertz_notifications.hertz.rb
270
255
  - spec/dummy/db/migrate/20160415175837_create_users.rb
256
+ - spec/dummy/db/migrate/20160508094342_remove_email_from_users.rb
257
+ - spec/dummy/db/migrate/20160415175358_create_hertz_notifications.hertz.rb
258
+ - spec/dummy/db/migrate/20160418122437_add_email_to_users.rb
271
259
  - spec/dummy/db/schema.rb
272
- - spec/dummy/app/models/test_notification.rb
260
+ - spec/dummy/bin/rake
261
+ - spec/dummy/bin/rails
262
+ - spec/dummy/bin/setup
263
+ - spec/dummy/bin/bundle
264
+ - spec/dummy/app/views/hertz/notification_mailer/test_notification.html.erb
265
+ - spec/dummy/app/views/layouts/application.html.erb
273
266
  - spec/dummy/app/models/user.rb
267
+ - spec/dummy/app/models/test_notification.rb
268
+ - spec/dummy/app/helpers/application_helper.rb
274
269
  - spec/dummy/app/controllers/application_controller.rb
275
- - spec/dummy/app/mailers/application_mailer.rb
276
270
  - spec/dummy/app/assets/stylesheets/application.css
277
271
  - spec/dummy/app/assets/javascripts/application.js
278
- - spec/dummy/app/views/hertz/notification_mailer/test_notification.html.erb
279
- - spec/dummy/app/views/layouts/application.html.erb
280
- - spec/dummy/app/helpers/application_helper.rb
281
- - spec/dummy/config/routes.rb
282
- - spec/dummy/config/environments/production.rb
283
- - spec/dummy/config/environments/development.rb
284
- - spec/dummy/config/environments/test.rb
285
- - spec/dummy/config/secrets.yml
272
+ - spec/dummy/public/422.html
273
+ - spec/dummy/public/favicon.ico
274
+ - spec/dummy/public/500.html
275
+ - spec/dummy/public/404.html
276
+ - spec/dummy/README.rdoc
277
+ - spec/dummy/config.ru
286
278
  - spec/dummy/config/boot.rb
287
- - spec/dummy/config/database.example.yml
288
- - spec/dummy/config/application.rb
289
- - spec/dummy/config/environment.rb
290
- - spec/dummy/config/initializers/assets.rb
279
+ - spec/dummy/config/initializers/inflections.rb
291
280
  - spec/dummy/config/initializers/backtrace_silencers.rb
281
+ - spec/dummy/config/initializers/cookies_serializer.rb
292
282
  - spec/dummy/config/initializers/session_store.rb
293
- - spec/dummy/config/initializers/mime_types.rb
283
+ - spec/dummy/config/initializers/assets.rb
294
284
  - spec/dummy/config/initializers/wrap_parameters.rb
295
- - spec/dummy/config/initializers/cookies_serializer.rb
296
- - spec/dummy/config/initializers/inflections.rb
297
- - spec/dummy/config/initializers/filter_parameter_logging.rb
285
+ - spec/dummy/config/initializers/mime_types.rb
298
286
  - spec/dummy/config/initializers/hertz.rb
299
- - spec/dummy/config/database.yml
287
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
288
+ - spec/dummy/config/application.rb
289
+ - spec/dummy/config/secrets.yml
290
+ - spec/dummy/config/environments/development.rb
291
+ - spec/dummy/config/environments/production.rb
292
+ - spec/dummy/config/environments/test.rb
300
293
  - spec/dummy/config/locales/en.yml
294
+ - spec/dummy/config/database.yml
295
+ - spec/dummy/config/environment.rb
296
+ - spec/dummy/config/database.example.yml
297
+ - spec/dummy/config/routes.rb
298
+ - spec/dummy/Rakefile
301
299
  - spec/dummy/log/test.log
302
300
  - spec/dummy/log/development.log
303
- - spec/dummy/Rakefile
304
- - spec/dummy/README.rdoc
305
- - spec/dummy/bin/rake
306
- - spec/dummy/bin/bundle
307
- - spec/dummy/bin/rails
308
- - spec/dummy/bin/setup
@@ -1,24 +0,0 @@
1
- # frozen_string_literal: true
2
- module Hertz
3
- class NotificationMailer < Hertz.base_mailer
4
- def notification_email(notification)
5
- @notification = notification
6
-
7
- mail(
8
- to: notification.receiver.hertz_email,
9
- subject: notification.email_subject,
10
- template_name: view_for(notification)
11
- )
12
- end
13
-
14
- private
15
-
16
- def view_for(notification)
17
- if notification.respond_to?(:email_template)
18
- notification.email_template
19
- else
20
- notification.class.to_s.underscore
21
- end
22
- end
23
- end
24
- end
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
- module Hertz
3
- module Courier
4
- class Base
5
- def self.deliver_notification(_notification)
6
- fail NotImplementedError
7
- end
8
- end
9
- end
10
- end
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
- module Hertz
3
- module Courier
4
- module Email
5
- def self.deliver_notification(notification)
6
- Hertz::NotificationMailer.notification_email(notification).deliver_later
7
- end
8
- end
9
- end
10
- end
@@ -1,4 +0,0 @@
1
- # desc "Explaining what the task does"
2
- # task :hertz do
3
- # # Task goes here
4
- # end
@@ -1,2 +0,0 @@
1
- class ApplicationMailer < ActionMailer::Base
2
- end
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
- module Hertz
3
- module Courier
4
- RSpec.describe Email do
5
- subject { described_class }
6
-
7
- describe '.deliver_notification' do
8
- let(:notification) { instance_double('Hertz::Notification') }
9
- let(:email) { instance_spy('ActionMailer::MessageDelivery') }
10
-
11
- before(:each) do
12
- allow(Hertz::NotificationMailer).to receive(:notification_email)
13
- .with(notification)
14
- .and_return(email)
15
- end
16
-
17
- it 'sends an email' do
18
- subject.deliver_notification(notification)
19
-
20
- expect(email).to have_received(:deliver_later)
21
- .once
22
- end
23
- end
24
- end
25
- end
26
- end
@@ -1,13 +0,0 @@
1
- # frozen_string_literal: true
2
- module Hertz
3
- RSpec.describe NotificationMailer do
4
- describe '.notification_email' do
5
- let(:notification) { build_stubbed(:test_notification) }
6
- subject { described_class.notification_email(notification) }
7
-
8
- it 'sends the email to the receiver' do
9
- expect(subject.to).to eq([notification.receiver.email])
10
- end
11
- end
12
- end
13
- end