rpush 2.3.1-java → 2.3.2-java

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.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -0
  3. data/README.md +36 -28
  4. data/lib/rpush/configuration.rb +1 -0
  5. data/lib/rpush/daemon/feeder.rb +16 -12
  6. data/lib/rpush/daemon/interruptible_sleep.rb +26 -5
  7. data/lib/rpush/daemon/store/active_record.rb +4 -0
  8. data/lib/rpush/daemon/store/interface.rb +1 -1
  9. data/lib/rpush/daemon/store/redis.rb +10 -0
  10. data/lib/rpush/embed.rb +1 -0
  11. data/lib/rpush/logger.rb +1 -0
  12. data/lib/rpush/push.rb +1 -2
  13. data/lib/rpush/version.rb +1 -1
  14. data/spec/functional/adm_spec.rb +6 -8
  15. data/spec/functional/apns_spec.rb +9 -9
  16. data/spec/functional/embed_spec.rb +3 -3
  17. data/spec/functional/gcm_spec.rb +6 -8
  18. data/spec/functional/new_app_spec.rb +5 -20
  19. data/spec/functional/retry_spec.rb +8 -12
  20. data/spec/functional/synchronization_spec.rb +1 -1
  21. data/spec/functional/wpns_spec.rb +7 -7
  22. data/spec/functional_spec_helper.rb +4 -5
  23. data/spec/spec_helper.rb +1 -1
  24. data/spec/unit/apns_feedback_spec.rb +4 -4
  25. data/spec/unit/client/active_record/adm/app_spec.rb +12 -12
  26. data/spec/unit/client/active_record/adm/notification_spec.rb +9 -9
  27. data/spec/unit/client/active_record/apns/app_spec.rb +4 -4
  28. data/spec/unit/client/active_record/apns/feedback_spec.rb +2 -2
  29. data/spec/unit/client/active_record/apns/notification_spec.rb +46 -46
  30. data/spec/unit/client/active_record/app_spec.rb +6 -6
  31. data/spec/unit/client/active_record/gcm/notification_spec.rb +7 -7
  32. data/spec/unit/client/active_record/notification_spec.rb +2 -2
  33. data/spec/unit/client/active_record/wpns/notification_spec.rb +2 -8
  34. data/spec/unit/configuration_spec.rb +5 -5
  35. data/spec/unit/daemon/adm/delivery_spec.rb +69 -69
  36. data/spec/unit/daemon/apns/delivery_spec.rb +13 -13
  37. data/spec/unit/daemon/apns/feedback_receiver_spec.rb +24 -26
  38. data/spec/unit/daemon/app_runner_spec.rb +29 -29
  39. data/spec/unit/daemon/batch_spec.rb +30 -30
  40. data/spec/unit/daemon/delivery_error_spec.rb +2 -2
  41. data/spec/unit/daemon/delivery_spec.rb +6 -6
  42. data/spec/unit/daemon/dispatcher/http_spec.rb +5 -5
  43. data/spec/unit/daemon/dispatcher/tcp_spec.rb +4 -4
  44. data/spec/unit/daemon/dispatcher_loop_spec.rb +9 -9
  45. data/spec/unit/daemon/feeder_spec.rb +22 -23
  46. data/spec/unit/daemon/gcm/delivery_spec.rb +56 -56
  47. data/spec/unit/daemon/retryable_error_spec.rb +2 -2
  48. data/spec/unit/daemon/service_config_methods_spec.rb +5 -5
  49. data/spec/unit/daemon/signal_handler_spec.rb +13 -13
  50. data/spec/unit/daemon/store/active_record/reconnectable_spec.rb +13 -13
  51. data/spec/unit/daemon/store/active_record_spec.rb +49 -49
  52. data/spec/unit/daemon/tcp_connection_spec.rb +50 -50
  53. data/spec/unit/daemon/wpns/delivery_spec.rb +36 -36
  54. data/spec/unit/daemon_spec.rb +33 -30
  55. data/spec/unit/deprecatable_spec.rb +3 -3
  56. data/spec/unit/deprecation_spec.rb +2 -2
  57. data/spec/unit/embed_spec.rb +7 -7
  58. data/spec/unit/logger_spec.rb +25 -25
  59. data/spec/unit/notification_shared.rb +7 -7
  60. data/spec/unit/plugin_spec.rb +1 -1
  61. data/spec/unit/push_spec.rb +8 -8
  62. data/spec/unit/reflectable_spec.rb +5 -5
  63. data/spec/unit/reflection_collection_spec.rb +2 -2
  64. data/spec/unit/rpush_spec.rb +1 -1
  65. data/spec/unit_spec_helper.rb +4 -5
  66. metadata +10 -4
@@ -17,16 +17,14 @@ describe Rpush::Daemon::Apns::FeedbackReceiver, 'check_for_feedback' do
17
17
 
18
18
  before do
19
19
  Rpush.config.feedback_poll = poll
20
- Rpush::Daemon::InterruptibleSleep.stub(new: sleeper)
21
- Rpush.stub(logger: logger)
22
- Rpush::Daemon::TcpConnection.stub(new: connection)
20
+ allow(Rpush::Daemon::InterruptibleSleep).to receive_messages(new: sleeper)
21
+ allow(Rpush).to receive_messages(logger: logger)
22
+ allow(Rpush::Daemon::TcpConnection).to receive_messages(new: connection)
23
23
  receiver.instance_variable_set("@stop", false)
24
- Rpush::Daemon.stub(store: store)
24
+ allow(Rpush::Daemon).to receive_messages(store: store)
25
25
  end
26
26
 
27
27
  def double_connection_read_with_tuple
28
- connection.unstub(:read)
29
-
30
28
  def connection.read(*)
31
29
  unless @called
32
30
  @called = true
@@ -36,78 +34,78 @@ describe Rpush::Daemon::Apns::FeedbackReceiver, 'check_for_feedback' do
36
34
  end
37
35
 
38
36
  it 'initializes the sleeper with the feedback polling duration' do
39
- Rpush::Daemon::InterruptibleSleep.should_receive(:new).with(poll).and_return(sleeper)
37
+ expect(Rpush::Daemon::InterruptibleSleep).to receive(:new).with(poll).and_return(sleeper)
40
38
  Rpush::Daemon::Apns::FeedbackReceiver.new(app)
41
39
  end
42
40
 
43
41
  it 'instantiates a new connection' do
44
- Rpush::Daemon::TcpConnection.should_receive(:new).with(app, host, port)
42
+ expect(Rpush::Daemon::TcpConnection).to receive(:new).with(app, host, port)
45
43
  receiver.check_for_feedback
46
44
  end
47
45
 
48
46
  it 'connects to the feeback service' do
49
- connection.should_receive(:connect)
47
+ expect(connection).to receive(:connect)
50
48
  receiver.check_for_feedback
51
49
  end
52
50
 
53
51
  it 'closes the connection' do
54
- connection.should_receive(:close)
52
+ expect(connection).to receive(:close)
55
53
  receiver.check_for_feedback
56
54
  end
57
55
 
58
56
  it 'reads from the connection' do
59
- connection.should_receive(:read).with(38)
57
+ expect(connection).to receive(:read).with(38)
60
58
  receiver.check_for_feedback
61
59
  end
62
60
 
63
61
  it 'logs the feedback' do
64
62
  double_connection_read_with_tuple
65
- Rpush.logger.should_receive(:info).with("[my_app] [FeedbackReceiver] Delivery failed at 2011-12-10 16:08:45 UTC for 834f786655eb9f84614a05ad7d00af31e5cfe93ac3ea078f1da44d2a4eb0ce17.")
63
+ expect(Rpush.logger).to receive(:info).with("[my_app] [FeedbackReceiver] Delivery failed at 2011-12-10 16:08:45 UTC for 834f786655eb9f84614a05ad7d00af31e5cfe93ac3ea078f1da44d2a4eb0ce17.")
66
64
  receiver.check_for_feedback
67
65
  end
68
66
 
69
67
  it 'creates the feedback' do
70
- Rpush::Daemon.store.should_receive(:create_apns_feedback).with(Time.at(1_323_533_325), '834f786655eb9f84614a05ad7d00af31e5cfe93ac3ea078f1da44d2a4eb0ce17', app)
68
+ expect(Rpush::Daemon.store).to receive(:create_apns_feedback).with(Time.at(1_323_533_325), '834f786655eb9f84614a05ad7d00af31e5cfe93ac3ea078f1da44d2a4eb0ce17', app)
71
69
  double_connection_read_with_tuple
72
70
  receiver.check_for_feedback
73
71
  end
74
72
 
75
73
  it 'logs errors' do
76
74
  error = StandardError.new('bork!')
77
- connection.stub(:read).and_raise(error)
78
- Rpush.logger.should_receive(:error).with(error)
75
+ allow(connection).to receive(:read).and_raise(error)
76
+ expect(Rpush.logger).to receive(:error).with(error)
79
77
  receiver.check_for_feedback
80
78
  end
81
79
 
82
80
  describe 'start' do
83
81
  before do
84
- Thread.stub(:new).and_yield
85
- receiver.stub(:loop).and_yield
82
+ allow(Thread).to receive(:new).and_yield
83
+ allow(receiver).to receive(:loop).and_yield
86
84
  end
87
85
 
88
86
  it 'sleeps' do
89
- receiver.stub(:check_for_feedback)
90
- sleeper.should_receive(:sleep).at_least(:once)
87
+ allow(receiver).to receive(:check_for_feedback)
88
+ expect(sleeper).to receive(:sleep).at_least(:once)
91
89
  receiver.start
92
90
  end
93
91
 
94
92
  it 'checks for feedback when started' do
95
- receiver.should_receive(:check_for_feedback).at_least(:once)
93
+ expect(receiver).to receive(:check_for_feedback).at_least(:once)
96
94
  receiver.start
97
95
  end
98
96
  end
99
97
 
100
98
  describe 'stop' do
101
99
  it 'interrupts sleep when stopped' do
102
- receiver.stub(:check_for_feedback)
103
- sleeper.should_receive(:stop)
100
+ allow(receiver).to receive(:check_for_feedback)
101
+ expect(sleeper).to receive(:stop)
104
102
  receiver.stop
105
103
  end
106
104
 
107
105
  it 'releases the store connection' do
108
- Thread.stub(:new).and_yield
109
- receiver.stub(:loop).and_yield
110
- Rpush::Daemon.store.should_receive(:release_connection)
106
+ allow(Thread).to receive(:new).and_yield
107
+ allow(receiver).to receive(:loop).and_yield
108
+ expect(Rpush::Daemon.store).to receive(:release_connection)
111
109
  receiver.start
112
110
  receiver.stop
113
111
  end
@@ -115,7 +113,7 @@ describe Rpush::Daemon::Apns::FeedbackReceiver, 'check_for_feedback' do
115
113
 
116
114
  it 'reflects feedback was received' do
117
115
  double_connection_read_with_tuple
118
- receiver.should_receive(:reflect).with(:apns_feedback, feedback)
116
+ expect(receiver).to receive(:reflect).with(:apns_feedback, feedback)
119
117
  receiver.check_for_feedback
120
118
  end
121
119
  end
@@ -38,16 +38,16 @@ describe Rpush::Daemon::AppRunner, 'enqueue' do
38
38
  let(:logger) { double(Rpush::Logger, error: nil, info: nil) }
39
39
 
40
40
  before do
41
- Rpush.stub(logger: logger)
42
- Rpush::Daemon::ProcTitle.stub(:update)
43
- Rpush::Daemon::AppRunner.stub(new: runner)
41
+ allow(Rpush).to receive_messages(logger: logger)
42
+ allow(Rpush::Daemon::ProcTitle).to receive(:update)
43
+ allow(Rpush::Daemon::AppRunner).to receive_messages(new: runner)
44
44
  Rpush::Daemon::AppRunner.start_app(app)
45
45
  end
46
46
 
47
47
  after { Rpush::Daemon::AppRunner.stop }
48
48
 
49
49
  it 'enqueues notifications on the runner' do
50
- runner.should_receive(:enqueue).with([notification])
50
+ expect(runner).to receive(:enqueue).with([notification])
51
51
  Rpush::Daemon::AppRunner.enqueue([notification])
52
52
  end
53
53
 
@@ -56,7 +56,7 @@ describe Rpush::Daemon::AppRunner, 'enqueue' do
56
56
  new_app = double(Rpush::App, id: 3, name: 'NewApp', connections: 1)
57
57
  Rpush::Daemon.store = double(app: new_app)
58
58
  Rpush::Daemon::AppRunner.enqueue([notification])
59
- Rpush::Daemon::AppRunner.app_running?(new_app).should be_true
59
+ expect(Rpush::Daemon::AppRunner.app_running?(new_app)).to eq(true)
60
60
  end
61
61
  end
62
62
 
@@ -66,13 +66,13 @@ describe Rpush::Daemon::AppRunner, 'start_app' do
66
66
  let(:logger) { double(Rpush::Logger, error: nil, info: nil) }
67
67
 
68
68
  before do
69
- Rpush.stub(logger: logger)
69
+ allow(Rpush).to receive_messages(logger: logger)
70
70
  end
71
71
 
72
72
  it 'logs an error if the runner could not be started' do
73
- Rpush::Daemon::AppRunner.should_receive(:new).with(app).and_return(runner)
74
- runner.stub(:start_dispatchers).and_raise(StandardError)
75
- Rpush.logger.should_receive(:error)
73
+ expect(Rpush::Daemon::AppRunner).to receive(:new).with(app).and_return(runner)
74
+ allow(runner).to receive(:start_dispatchers).and_raise(StandardError)
75
+ expect(Rpush.logger).to receive(:error)
76
76
  Rpush::Daemon::AppRunner.start_app(app)
77
77
  end
78
78
  end
@@ -87,15 +87,15 @@ describe Rpush::Daemon::AppRunner, 'debug' do
87
87
  let(:store) { double(all_apps: [app], release_connection: nil) }
88
88
 
89
89
  before do
90
- Rpush::Daemon.stub(config: {}, store: store)
91
- Rpush.stub(logger: logger)
90
+ allow(Rpush::Daemon).to receive_messages(config: {}, store: store)
91
+ allow(Rpush).to receive_messages(logger: logger)
92
92
  Rpush::Daemon::AppRunner.start_app(app)
93
93
  end
94
94
 
95
95
  after { Rpush::Daemon::AppRunner.stop_app(app.id) }
96
96
 
97
97
  it 'prints debug app states to the log' do
98
- Rpush.logger.should_receive(:info).with(kind_of(String))
98
+ expect(Rpush.logger).to receive(:info).with(kind_of(String))
99
99
  Rpush::Daemon::AppRunner.debug
100
100
  end
101
101
  end
@@ -114,27 +114,27 @@ describe Rpush::Daemon::AppRunner do
114
114
  let(:store) { double(Rpush::Daemon::Store::ActiveRecord, release_connection: nil) }
115
115
 
116
116
  before do
117
- Rpush::Daemon::DispatcherLoop.stub(new: dispatcher_loop)
118
- Rpush::Daemon.stub(store: store)
119
- Rpush::Daemon::AppRunnerSpecService::ServiceLoop.stub(new: service_loop)
120
- Queue.stub(new: queue)
121
- Rpush.stub(logger: logger)
117
+ allow(Rpush::Daemon::DispatcherLoop).to receive_messages(new: dispatcher_loop)
118
+ allow(Rpush::Daemon).to receive_messages(store: store)
119
+ allow(Rpush::Daemon::AppRunnerSpecService::ServiceLoop).to receive_messages(new: service_loop)
120
+ allow(Queue).to receive_messages(new: queue)
121
+ allow(Rpush).to receive_messages(logger: logger)
122
122
  end
123
123
 
124
124
  describe 'start' do
125
125
  it 'starts a delivery dispatcher for each connection' do
126
- app.stub(connections: 2)
126
+ allow(app).to receive_messages(connections: 2)
127
127
  runner.start_dispatchers
128
- runner.num_dispatcher_loops.should eq 2
128
+ expect(runner.num_dispatcher_loops).to eq 2
129
129
  end
130
130
 
131
131
  it 'starts the dispatcher loop' do
132
- dispatcher_loop.should_receive(:start)
132
+ expect(dispatcher_loop).to receive(:start)
133
133
  runner.start_dispatchers
134
134
  end
135
135
 
136
136
  it 'starts the loops' do
137
- service_loop.should_receive(:start)
137
+ expect(service_loop).to receive(:start)
138
138
  runner.start_loops
139
139
  end
140
140
  end
@@ -143,27 +143,27 @@ describe Rpush::Daemon::AppRunner do
143
143
  let(:notification) { double }
144
144
 
145
145
  it 'enqueues the batch' do
146
- queue.should_receive(:push) do |queue_payload|
147
- queue_payload.notification.should eq notification
148
- queue_payload.batch.should_not be_nil
146
+ expect(queue).to receive(:push) do |queue_payload|
147
+ expect(queue_payload.notification).to eq notification
148
+ expect(queue_payload.batch).not_to be_nil
149
149
  end
150
150
  runner.enqueue([notification])
151
151
  end
152
152
 
153
153
  it 'reflects the notification has been enqueued' do
154
- runner.should_receive(:reflect).with(:notification_enqueued, notification)
154
+ expect(runner).to receive(:reflect).with(:notification_enqueued, notification)
155
155
  runner.enqueue([notification])
156
156
  end
157
157
 
158
158
  describe 'a service that batches deliveries' do
159
159
  before do
160
- runner.send(:service).stub(batch_deliveries?: true)
160
+ allow(runner.send(:service)).to receive_messages(batch_deliveries?: true)
161
161
  end
162
162
 
163
163
  describe '1 notification with more than one dispatcher loop' do
164
164
  it 'does not raise ArgumentError: invalid slice size' do
165
165
  # https://github.com/rpush/rpush/issues/57
166
- runner.stub(:num_dispatcher_loops).and_return(2)
166
+ allow(runner).to receive(:num_dispatcher_loops).and_return(2)
167
167
  runner.enqueue([notification])
168
168
  end
169
169
  end
@@ -177,12 +177,12 @@ describe Rpush::Daemon::AppRunner do
177
177
  end
178
178
 
179
179
  it 'stops the delivery dispatchers' do
180
- dispatcher_loop.should_receive(:stop)
180
+ expect(dispatcher_loop).to receive(:stop)
181
181
  runner.stop
182
182
  end
183
183
 
184
184
  it 'stop the loops' do
185
- service_loop.should_receive(:stop)
185
+ expect(service_loop).to receive(:stop)
186
186
  runner.stop
187
187
  end
188
188
  end
@@ -8,12 +8,12 @@ describe Rpush::Daemon::Batch do
8
8
  let(:time) { Time.now }
9
9
 
10
10
  before do
11
- Time.stub(now: time)
12
- Rpush::Daemon.stub(store: store)
11
+ allow(Time).to receive_messages(now: time)
12
+ allow(Rpush::Daemon).to receive_messages(store: store)
13
13
  end
14
14
 
15
15
  it 'exposes the number notifications processed' do
16
- batch.num_processed.should eq 0
16
+ expect(batch.num_processed).to eq 0
17
17
  end
18
18
 
19
19
  it 'increments the processed notifications count' do
@@ -21,88 +21,88 @@ describe Rpush::Daemon::Batch do
21
21
  end
22
22
 
23
23
  it 'completes the batch when all notifications have been processed' do
24
- batch.should_receive(:complete)
24
+ expect(batch).to receive(:complete)
25
25
  2.times { batch.notification_processed }
26
26
  end
27
27
 
28
28
  describe 'mark_delivered' do
29
29
  it 'marks the notification as delivered immediately without persisting' do
30
- store.should_receive(:mark_delivered).with(notification1, time, persist: false)
30
+ expect(store).to receive(:mark_delivered).with(notification1, time, persist: false)
31
31
  batch.mark_delivered(notification1)
32
32
  end
33
33
 
34
34
  it 'defers persisting' do
35
35
  batch.mark_delivered(notification1)
36
- batch.delivered.should eq [notification1]
36
+ expect(batch.delivered).to eq [notification1]
37
37
  end
38
38
  end
39
39
 
40
40
  describe 'mark_all_delivered' do
41
41
  it 'marks the notifications as delivered immediately without persisting' do
42
- store.should_receive(:mark_delivered).with(notification1, time, persist: false)
43
- store.should_receive(:mark_delivered).with(notification2, time, persist: false)
42
+ expect(store).to receive(:mark_delivered).with(notification1, time, persist: false)
43
+ expect(store).to receive(:mark_delivered).with(notification2, time, persist: false)
44
44
  batch.mark_all_delivered
45
45
  end
46
46
 
47
47
  it 'defers persisting' do
48
48
  batch.mark_all_delivered
49
- batch.delivered.should eq [notification1, notification2]
49
+ expect(batch.delivered).to eq [notification1, notification2]
50
50
  end
51
51
  end
52
52
 
53
53
  describe 'mark_failed' do
54
54
  it 'marks the notification as failed without persisting' do
55
- store.should_receive(:mark_failed).with(notification1, 1, 'an error', time, persist: false)
55
+ expect(store).to receive(:mark_failed).with(notification1, 1, 'an error', time, persist: false)
56
56
  batch.mark_failed(notification1, 1, 'an error')
57
57
  end
58
58
 
59
59
  it 'defers persisting' do
60
60
  batch.mark_failed(notification1, 1, 'an error')
61
- batch.failed.should eq([1, 'an error'] => [notification1])
61
+ expect(batch.failed).to eq([1, 'an error'] => [notification1])
62
62
  end
63
63
  end
64
64
 
65
65
  describe 'mark_failed' do
66
66
  it 'marks the notification as failed without persisting' do
67
- store.should_receive(:mark_failed).with(notification1, 1, 'an error', time, persist: false)
68
- store.should_receive(:mark_failed).with(notification2, 1, 'an error', time, persist: false)
67
+ expect(store).to receive(:mark_failed).with(notification1, 1, 'an error', time, persist: false)
68
+ expect(store).to receive(:mark_failed).with(notification2, 1, 'an error', time, persist: false)
69
69
  batch.mark_all_failed(1, 'an error')
70
70
  end
71
71
 
72
72
  it 'defers persisting' do
73
73
  batch.mark_all_failed(1, 'an error')
74
- batch.failed.should eq([1, 'an error'] => [notification1, notification2])
74
+ expect(batch.failed).to eq([1, 'an error'] => [notification1, notification2])
75
75
  end
76
76
  end
77
77
 
78
78
  describe 'mark_retryable' do
79
79
  it 'marks the notification as retryable without persisting' do
80
- store.should_receive(:mark_retryable).with(notification1, time, persist: false)
80
+ expect(store).to receive(:mark_retryable).with(notification1, time, persist: false)
81
81
  batch.mark_retryable(notification1, time)
82
82
  end
83
83
 
84
84
  it 'defers persisting' do
85
85
  batch.mark_retryable(notification1, time)
86
- batch.retryable.should eq(time => [notification1])
86
+ expect(batch.retryable).to eq(time => [notification1])
87
87
  end
88
88
  end
89
89
 
90
90
  describe 'complete' do
91
91
  before do
92
- Rpush.stub(logger: double.as_null_object)
93
- batch.stub(:reflect)
92
+ allow(Rpush).to receive_messages(logger: double.as_null_object)
93
+ allow(batch).to receive(:reflect)
94
94
  end
95
95
 
96
96
  it 'identifies as complete' do
97
97
  expect do
98
98
  2.times { batch.notification_processed }
99
- end.to change(batch, :complete?).to(be_true)
99
+ end.to change(batch, :complete?).to(true)
100
100
  end
101
101
 
102
102
  it 'reflects errors raised during completion' do
103
103
  e = StandardError.new
104
- batch.stub(:complete_delivered).and_raise(e)
105
- batch.should_receive(:reflect).with(:error, e)
104
+ allow(batch).to receive(:complete_delivered).and_raise(e)
105
+ expect(batch).to receive(:reflect).with(:error, e)
106
106
  2.times { batch.notification_processed }
107
107
  end
108
108
 
@@ -115,13 +115,13 @@ describe Rpush::Daemon::Batch do
115
115
  end
116
116
 
117
117
  it 'marks the batch as delivered' do
118
- store.should_receive(:mark_batch_delivered).with([notification1, notification2])
118
+ expect(store).to receive(:mark_batch_delivered).with([notification1, notification2])
119
119
  complete
120
120
  end
121
121
 
122
122
  it 'reflects the notifications were delivered' do
123
- batch.should_receive(:reflect).with(:notification_delivered, notification1)
124
- batch.should_receive(:reflect).with(:notification_delivered, notification2)
123
+ expect(batch).to receive(:reflect).with(:notification_delivered, notification1)
124
+ expect(batch).to receive(:reflect).with(:notification_delivered, notification2)
125
125
  complete
126
126
  end
127
127
  end
@@ -135,13 +135,13 @@ describe Rpush::Daemon::Batch do
135
135
  end
136
136
 
137
137
  it 'marks the batch as failed' do
138
- store.should_receive(:mark_batch_failed).with([notification1, notification2], 1, 'an error')
138
+ expect(store).to receive(:mark_batch_failed).with([notification1, notification2], 1, 'an error')
139
139
  complete
140
140
  end
141
141
 
142
142
  it 'reflects the notifications failed' do
143
- batch.should_receive(:reflect).with(:notification_failed, notification1)
144
- batch.should_receive(:reflect).with(:notification_failed, notification2)
143
+ expect(batch).to receive(:reflect).with(:notification_failed, notification1)
144
+ expect(batch).to receive(:reflect).with(:notification_failed, notification2)
145
145
  complete
146
146
  end
147
147
  end
@@ -155,13 +155,13 @@ describe Rpush::Daemon::Batch do
155
155
  end
156
156
 
157
157
  it 'marks the batch as retryable' do
158
- store.should_receive(:mark_batch_retryable).with([notification1, notification2], time)
158
+ expect(store).to receive(:mark_batch_retryable).with([notification1, notification2], time)
159
159
  complete
160
160
  end
161
161
 
162
162
  it 'reflects the notifications will be retried' do
163
- batch.should_receive(:reflect).with(:notification_will_retry, notification1)
164
- batch.should_receive(:reflect).with(:notification_will_retry, notification2)
163
+ expect(batch).to receive(:reflect).with(:notification_will_retry, notification1)
164
+ expect(batch).to receive(:reflect).with(:notification_will_retry, notification2)
165
165
  complete
166
166
  end
167
167
  end
@@ -4,10 +4,10 @@ describe Rpush::DeliveryError do
4
4
  let(:error) { Rpush::DeliveryError.new(4, 12, "Missing payload") }
5
5
 
6
6
  it "returns an informative message" do
7
- error.to_s.should eq "Unable to deliver notification 12, received error 4 (Missing payload)"
7
+ expect(error.to_s).to eq "Unable to deliver notification 12, received error 4 (Missing payload)"
8
8
  end
9
9
 
10
10
  it "returns the error code" do
11
- error.code.should eq 4
11
+ expect(error.code).to eq 4
12
12
  end
13
13
  end