ably-rest 1.0.6 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +14 -14
  3. data/lib/submodules/ably-ruby/.editorconfig +14 -0
  4. data/lib/submodules/ably-ruby/.travis.yml +4 -4
  5. data/lib/submodules/ably-ruby/CHANGELOG.md +43 -2
  6. data/lib/submodules/ably-ruby/README.md +3 -2
  7. data/lib/submodules/ably-ruby/Rakefile +32 -0
  8. data/lib/submodules/ably-ruby/SPEC.md +1277 -835
  9. data/lib/submodules/ably-ruby/ably.gemspec +9 -4
  10. data/lib/submodules/ably-ruby/lib/ably/auth.rb +30 -4
  11. data/lib/submodules/ably-ruby/lib/ably/exceptions.rb +8 -2
  12. data/lib/submodules/ably-ruby/lib/ably/models/channel_state_change.rb +1 -1
  13. data/lib/submodules/ably-ruby/lib/ably/models/connection_state_change.rb +1 -1
  14. data/lib/submodules/ably-ruby/lib/ably/models/device_details.rb +87 -0
  15. data/lib/submodules/ably-ruby/lib/ably/models/device_push_details.rb +86 -0
  16. data/lib/submodules/ably-ruby/lib/ably/models/error_info.rb +23 -2
  17. data/lib/submodules/ably-ruby/lib/ably/models/idiomatic_ruby_wrapper.rb +4 -4
  18. data/lib/submodules/ably-ruby/lib/ably/models/protocol_message.rb +32 -2
  19. data/lib/submodules/ably-ruby/lib/ably/models/push_channel_subscription.rb +89 -0
  20. data/lib/submodules/ably-ruby/lib/ably/modules/conversions.rb +1 -1
  21. data/lib/submodules/ably-ruby/lib/ably/modules/encodeable.rb +1 -1
  22. data/lib/submodules/ably-ruby/lib/ably/modules/exception_codes.rb +128 -0
  23. data/lib/submodules/ably-ruby/lib/ably/modules/model_common.rb +15 -2
  24. data/lib/submodules/ably-ruby/lib/ably/modules/state_machine.rb +1 -1
  25. data/lib/submodules/ably-ruby/lib/ably/realtime.rb +1 -0
  26. data/lib/submodules/ably-ruby/lib/ably/realtime/auth.rb +1 -1
  27. data/lib/submodules/ably-ruby/lib/ably/realtime/channel.rb +24 -102
  28. data/lib/submodules/ably-ruby/lib/ably/realtime/channel/channel_manager.rb +2 -6
  29. data/lib/submodules/ably-ruby/lib/ably/realtime/channel/channel_state_machine.rb +2 -2
  30. data/lib/submodules/ably-ruby/lib/ably/realtime/channel/publisher.rb +74 -0
  31. data/lib/submodules/ably-ruby/lib/ably/realtime/channel/push_channel.rb +62 -0
  32. data/lib/submodules/ably-ruby/lib/ably/realtime/client.rb +87 -0
  33. data/lib/submodules/ably-ruby/lib/ably/realtime/client/incoming_message_dispatcher.rb +6 -2
  34. data/lib/submodules/ably-ruby/lib/ably/realtime/client/outgoing_message_dispatcher.rb +1 -1
  35. data/lib/submodules/ably-ruby/lib/ably/realtime/connection.rb +8 -5
  36. data/lib/submodules/ably-ruby/lib/ably/realtime/connection/connection_manager.rb +7 -7
  37. data/lib/submodules/ably-ruby/lib/ably/realtime/connection/websocket_transport.rb +1 -1
  38. data/lib/submodules/ably-ruby/lib/ably/realtime/presence.rb +4 -4
  39. data/lib/submodules/ably-ruby/lib/ably/realtime/presence/members_map.rb +3 -3
  40. data/lib/submodules/ably-ruby/lib/ably/realtime/push.rb +40 -0
  41. data/lib/submodules/ably-ruby/lib/ably/realtime/push/admin.rb +61 -0
  42. data/lib/submodules/ably-ruby/lib/ably/realtime/push/channel_subscriptions.rb +108 -0
  43. data/lib/submodules/ably-ruby/lib/ably/realtime/push/device_registrations.rb +105 -0
  44. data/lib/submodules/ably-ruby/lib/ably/rest.rb +1 -0
  45. data/lib/submodules/ably-ruby/lib/ably/rest/channel.rb +33 -5
  46. data/lib/submodules/ably-ruby/lib/ably/rest/channel/push_channel.rb +62 -0
  47. data/lib/submodules/ably-ruby/lib/ably/rest/client.rb +138 -28
  48. data/lib/submodules/ably-ruby/lib/ably/rest/middleware/parse_message_pack.rb +17 -1
  49. data/lib/submodules/ably-ruby/lib/ably/rest/presence.rb +1 -0
  50. data/lib/submodules/ably-ruby/lib/ably/rest/push.rb +42 -0
  51. data/lib/submodules/ably-ruby/lib/ably/rest/push/admin.rb +54 -0
  52. data/lib/submodules/ably-ruby/lib/ably/rest/push/channel_subscriptions.rb +121 -0
  53. data/lib/submodules/ably-ruby/lib/ably/rest/push/device_registrations.rb +103 -0
  54. data/lib/submodules/ably-ruby/lib/ably/version.rb +7 -2
  55. data/lib/submodules/ably-ruby/spec/acceptance/realtime/auth_spec.rb +233 -8
  56. data/lib/submodules/ably-ruby/spec/acceptance/realtime/channel_spec.rb +166 -51
  57. data/lib/submodules/ably-ruby/spec/acceptance/realtime/client_spec.rb +149 -0
  58. data/lib/submodules/ably-ruby/spec/acceptance/realtime/connection_failures_spec.rb +1 -1
  59. data/lib/submodules/ably-ruby/spec/acceptance/realtime/connection_spec.rb +4 -4
  60. data/lib/submodules/ably-ruby/spec/acceptance/realtime/message_spec.rb +19 -17
  61. data/lib/submodules/ably-ruby/spec/acceptance/realtime/presence_spec.rb +5 -5
  62. data/lib/submodules/ably-ruby/spec/acceptance/realtime/push_admin_spec.rb +696 -0
  63. data/lib/submodules/ably-ruby/spec/acceptance/realtime/push_spec.rb +27 -0
  64. data/lib/submodules/ably-ruby/spec/acceptance/rest/auth_spec.rb +41 -3
  65. data/lib/submodules/ably-ruby/spec/acceptance/rest/base_spec.rb +2 -2
  66. data/lib/submodules/ably-ruby/spec/acceptance/rest/client_spec.rb +129 -10
  67. data/lib/submodules/ably-ruby/spec/acceptance/rest/message_spec.rb +175 -4
  68. data/lib/submodules/ably-ruby/spec/acceptance/rest/push_admin_spec.rb +896 -0
  69. data/lib/submodules/ably-ruby/spec/acceptance/rest/push_spec.rb +25 -0
  70. data/lib/submodules/ably-ruby/spec/acceptance/rest/time_spec.rb +1 -1
  71. data/lib/submodules/ably-ruby/spec/run_parallel_tests +33 -0
  72. data/lib/submodules/ably-ruby/spec/unit/logger_spec.rb +10 -3
  73. data/lib/submodules/ably-ruby/spec/unit/models/device_details_spec.rb +102 -0
  74. data/lib/submodules/ably-ruby/spec/unit/models/device_push_details_spec.rb +101 -0
  75. data/lib/submodules/ably-ruby/spec/unit/models/error_info_spec.rb +51 -3
  76. data/lib/submodules/ably-ruby/spec/unit/models/message_spec.rb +17 -2
  77. data/lib/submodules/ably-ruby/spec/unit/models/presence_message_spec.rb +1 -1
  78. data/lib/submodules/ably-ruby/spec/unit/models/push_channel_subscription_spec.rb +86 -0
  79. data/lib/submodules/ably-ruby/spec/unit/realtime/client_spec.rb +12 -0
  80. data/lib/submodules/ably-ruby/spec/unit/realtime/push_channel_spec.rb +36 -0
  81. data/lib/submodules/ably-ruby/spec/unit/rest/channel_spec.rb +8 -1
  82. data/lib/submodules/ably-ruby/spec/unit/rest/client_spec.rb +30 -0
  83. data/lib/submodules/ably-ruby/spec/unit/rest/push_channel_spec.rb +36 -0
  84. metadata +29 -4
@@ -28,6 +28,18 @@ describe Ably::Realtime::Client do
28
28
  end
29
29
  end
30
30
 
31
+ context 'push' do
32
+ let(:client_options) { { key: 'appid.keyuid:keysecret' } }
33
+
34
+ specify '#device is not supported and raises an exception' do
35
+ expect { subject.device }.to raise_error Ably::Exceptions::PushNotificationsNotSupported
36
+ end
37
+
38
+ specify '#push returns a Push object' do
39
+ expect(subject.push).to be_a(Ably::Realtime::Push)
40
+ end
41
+ end
42
+
31
43
  after(:all) do
32
44
  sleep 1 # let realtime library shut down any open clients
33
45
  end
@@ -0,0 +1,36 @@
1
+ require 'spec_helper'
2
+
3
+ describe Ably::Realtime::Channel::PushChannel do
4
+ subject { Ably::Realtime::Channel::PushChannel }
5
+
6
+ let(:channel_name) { 'unique' }
7
+ let(:client) { double('client').as_null_object }
8
+ let(:channel) { Ably::Realtime::Channel.new(client, channel_name) }
9
+
10
+ it 'is constructed with a channel' do
11
+ expect(subject.new(channel)).to be_a(Ably::Realtime::Channel::PushChannel)
12
+ end
13
+
14
+ it 'raises an exception if constructed with an invalid type' do
15
+ expect { subject.new(Hash.new) }.to raise_error(ArgumentError)
16
+ end
17
+
18
+ it 'exposes the channel as attribute #channel' do
19
+ expect(subject.new(channel).channel).to eql(channel)
20
+ end
21
+
22
+ it 'is available in the #push attribute of the channel' do
23
+ expect(channel.push).to be_a(Ably::Realtime::Channel::PushChannel)
24
+ expect(channel.push.channel).to eql(channel)
25
+ end
26
+
27
+ context 'methods not implemented as push notifications' do
28
+ subject { Ably::Realtime::Channel::PushChannel.new(channel) }
29
+
30
+ %w(subscribe_device subscribe_client_id unsubscribe_device unsubscribe_client_id get_subscriptions).each do |method_name|
31
+ specify "##{method_name} raises an unsupported exception" do
32
+ expect { subject.public_send(method_name, 'foo') }.to raise_error(Ably::Exceptions::PushNotificationsNotSupported)
33
+ end
34
+ end
35
+ end
36
+ end
@@ -2,7 +2,14 @@
2
2
  require 'spec_helper'
3
3
 
4
4
  describe Ably::Rest::Channel do
5
- let(:client) { instance_double('Ably::Rest::Client', encoders: [], post: instance_double('Faraday::Response', status: 201)) }
5
+ let(:client) do
6
+ instance_double(
7
+ 'Ably::Rest::Client',
8
+ encoders: [],
9
+ post: instance_double('Faraday::Response', status: 201),
10
+ idempotent_rest_publishing: false,
11
+ )
12
+ end
6
13
  let(:channel_name) { 'unique' }
7
14
 
8
15
  subject { Ably::Rest::Channel.new(client, channel_name) }
@@ -20,6 +20,24 @@ describe Ably::Rest::Client do
20
20
  end
21
21
  end
22
22
 
23
+ context 'fallback_retry_timeout (#RSC15f)' do
24
+ context 'default' do
25
+ let(:client_options) { { key: 'appid.keyuid:keysecret' } }
26
+
27
+ it 'is set to 10 minutes' do
28
+ expect(subject.options.fetch(:fallback_retry_timeout)).to eql(10 * 60)
29
+ end
30
+ end
31
+
32
+ context 'when provided' do
33
+ let(:client_options) { { key: 'appid.keyuid:keysecret', fallback_retry_timeout: 30 } }
34
+
35
+ it 'configures a new timeout' do
36
+ expect(subject.options.fetch(:fallback_retry_timeout)).to eql(30)
37
+ end
38
+ end
39
+ end
40
+
23
41
  context ':use_token_auth' do
24
42
  context 'set to false' do
25
43
  context 'with a key and :tls => false' do
@@ -57,4 +75,16 @@ describe Ably::Rest::Client do
57
75
  expect(subject.add_request_ids).to eql(true)
58
76
  end
59
77
  end
78
+
79
+ context 'push' do
80
+ let(:client_options) { { key: 'appid.keyuid:keysecret' } }
81
+
82
+ specify '#device is not supported and raises an exception' do
83
+ expect { subject.device }.to raise_error Ably::Exceptions::PushNotificationsNotSupported
84
+ end
85
+
86
+ specify '#push returns a Push object' do
87
+ expect(subject.push).to be_a(Ably::Rest::Push)
88
+ end
89
+ end
60
90
  end
@@ -0,0 +1,36 @@
1
+ require 'spec_helper'
2
+
3
+ describe Ably::Rest::Channel::PushChannel do
4
+ subject { Ably::Rest::Channel::PushChannel }
5
+
6
+ let(:channel_name) { 'unique' }
7
+ let(:client) { double('client').as_null_object }
8
+ let(:channel) { Ably::Rest::Channel.new(client, channel_name) }
9
+
10
+ it 'is constructed with a channel' do
11
+ expect(subject.new(channel)).to be_a(Ably::Rest::Channel::PushChannel)
12
+ end
13
+
14
+ it 'raises an exception if constructed with an invalid type' do
15
+ expect { subject.new(Hash.new) }.to raise_error(ArgumentError)
16
+ end
17
+
18
+ it 'exposes the channel as attribute #channel' do
19
+ expect(subject.new(channel).channel).to eql(channel)
20
+ end
21
+
22
+ it 'is available in the #push attribute of the channel' do
23
+ expect(channel.push).to be_a(Ably::Rest::Channel::PushChannel)
24
+ expect(channel.push.channel).to eql(channel)
25
+ end
26
+
27
+ context 'methods not implemented as push notifications' do
28
+ subject { Ably::Rest::Channel::PushChannel.new(channel) }
29
+
30
+ %w(subscribe_device subscribe_client_id unsubscribe_device unsubscribe_client_id get_subscriptions).each do |method_name|
31
+ specify "##{method_name} raises an unsupported exception" do
32
+ expect { subject.public_send(method_name, 'foo') }.to raise_error(Ably::Exceptions::PushNotificationsNotSupported)
33
+ end
34
+ end
35
+ end
36
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ably-rest
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew O'Riordan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-05-01 00:00:00.000000000 Z
11
+ date: 2019-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -241,6 +241,7 @@ files:
241
241
  - ably-rest.gemspec
242
242
  - lib/ably-rest.rb
243
243
  - lib/ably-rest/modules/eventmachine_deferrable.rb
244
+ - lib/submodules/ably-ruby/.editorconfig
244
245
  - lib/submodules/ably-ruby/.gitignore
245
246
  - lib/submodules/ably-ruby/.gitmodules
246
247
  - lib/submodules/ably-ruby/.rspec
@@ -261,6 +262,8 @@ files:
261
262
  - lib/submodules/ably-ruby/lib/ably/models/cipher_params.rb
262
263
  - lib/submodules/ably-ruby/lib/ably/models/connection_details.rb
263
264
  - lib/submodules/ably-ruby/lib/ably/models/connection_state_change.rb
265
+ - lib/submodules/ably-ruby/lib/ably/models/device_details.rb
266
+ - lib/submodules/ably-ruby/lib/ably/models/device_push_details.rb
264
267
  - lib/submodules/ably-ruby/lib/ably/models/error_info.rb
265
268
  - lib/submodules/ably-ruby/lib/ably/models/http_paginated_response.rb
266
269
  - lib/submodules/ably-ruby/lib/ably/models/idiomatic_ruby_wrapper.rb
@@ -274,6 +277,7 @@ files:
274
277
  - lib/submodules/ably-ruby/lib/ably/models/paginated_result.rb
275
278
  - lib/submodules/ably-ruby/lib/ably/models/presence_message.rb
276
279
  - lib/submodules/ably-ruby/lib/ably/models/protocol_message.rb
280
+ - lib/submodules/ably-ruby/lib/ably/models/push_channel_subscription.rb
277
281
  - lib/submodules/ably-ruby/lib/ably/models/stats.rb
278
282
  - lib/submodules/ably-ruby/lib/ably/models/stats_types.rb
279
283
  - lib/submodules/ably-ruby/lib/ably/models/token_details.rb
@@ -286,6 +290,7 @@ files:
286
290
  - lib/submodules/ably-ruby/lib/ably/modules/enum.rb
287
291
  - lib/submodules/ably-ruby/lib/ably/modules/event_emitter.rb
288
292
  - lib/submodules/ably-ruby/lib/ably/modules/event_machine_helpers.rb
293
+ - lib/submodules/ably-ruby/lib/ably/modules/exception_codes.rb
289
294
  - lib/submodules/ably-ruby/lib/ably/modules/http_helpers.rb
290
295
  - lib/submodules/ably-ruby/lib/ably/modules/message_emitter.rb
291
296
  - lib/submodules/ably-ruby/lib/ably/modules/message_pack.rb
@@ -301,6 +306,8 @@ files:
301
306
  - lib/submodules/ably-ruby/lib/ably/realtime/channel.rb
302
307
  - lib/submodules/ably-ruby/lib/ably/realtime/channel/channel_manager.rb
303
308
  - lib/submodules/ably-ruby/lib/ably/realtime/channel/channel_state_machine.rb
309
+ - lib/submodules/ably-ruby/lib/ably/realtime/channel/publisher.rb
310
+ - lib/submodules/ably-ruby/lib/ably/realtime/channel/push_channel.rb
304
311
  - lib/submodules/ably-ruby/lib/ably/realtime/channels.rb
305
312
  - lib/submodules/ably-ruby/lib/ably/realtime/client.rb
306
313
  - lib/submodules/ably-ruby/lib/ably/realtime/client/incoming_message_dispatcher.rb
@@ -314,8 +321,13 @@ files:
314
321
  - lib/submodules/ably-ruby/lib/ably/realtime/presence/members_map.rb
315
322
  - lib/submodules/ably-ruby/lib/ably/realtime/presence/presence_manager.rb
316
323
  - lib/submodules/ably-ruby/lib/ably/realtime/presence/presence_state_machine.rb
324
+ - lib/submodules/ably-ruby/lib/ably/realtime/push.rb
325
+ - lib/submodules/ably-ruby/lib/ably/realtime/push/admin.rb
326
+ - lib/submodules/ably-ruby/lib/ably/realtime/push/channel_subscriptions.rb
327
+ - lib/submodules/ably-ruby/lib/ably/realtime/push/device_registrations.rb
317
328
  - lib/submodules/ably-ruby/lib/ably/rest.rb
318
329
  - lib/submodules/ably-ruby/lib/ably/rest/channel.rb
330
+ - lib/submodules/ably-ruby/lib/ably/rest/channel/push_channel.rb
319
331
  - lib/submodules/ably-ruby/lib/ably/rest/channels.rb
320
332
  - lib/submodules/ably-ruby/lib/ably/rest/client.rb
321
333
  - lib/submodules/ably-ruby/lib/ably/rest/middleware/encoder.rb
@@ -326,6 +338,10 @@ files:
326
338
  - lib/submodules/ably-ruby/lib/ably/rest/middleware/parse_json.rb
327
339
  - lib/submodules/ably-ruby/lib/ably/rest/middleware/parse_message_pack.rb
328
340
  - lib/submodules/ably-ruby/lib/ably/rest/presence.rb
341
+ - lib/submodules/ably-ruby/lib/ably/rest/push.rb
342
+ - lib/submodules/ably-ruby/lib/ably/rest/push/admin.rb
343
+ - lib/submodules/ably-ruby/lib/ably/rest/push/channel_subscriptions.rb
344
+ - lib/submodules/ably-ruby/lib/ably/rest/push/device_registrations.rb
329
345
  - lib/submodules/ably-ruby/lib/ably/util/crypto.rb
330
346
  - lib/submodules/ably-ruby/lib/ably/util/pub_sub.rb
331
347
  - lib/submodules/ably-ruby/lib/ably/util/safe_deferrable.rb
@@ -340,6 +356,8 @@ files:
340
356
  - lib/submodules/ably-ruby/spec/acceptance/realtime/message_spec.rb
341
357
  - lib/submodules/ably-ruby/spec/acceptance/realtime/presence_history_spec.rb
342
358
  - lib/submodules/ably-ruby/spec/acceptance/realtime/presence_spec.rb
359
+ - lib/submodules/ably-ruby/spec/acceptance/realtime/push_admin_spec.rb
360
+ - lib/submodules/ably-ruby/spec/acceptance/realtime/push_spec.rb
343
361
  - lib/submodules/ably-ruby/spec/acceptance/realtime/stats_spec.rb
344
362
  - lib/submodules/ably-ruby/spec/acceptance/realtime/time_spec.rb
345
363
  - lib/submodules/ably-ruby/spec/acceptance/rest/auth_spec.rb
@@ -350,9 +368,12 @@ files:
350
368
  - lib/submodules/ably-ruby/spec/acceptance/rest/encoders_spec.rb
351
369
  - lib/submodules/ably-ruby/spec/acceptance/rest/message_spec.rb
352
370
  - lib/submodules/ably-ruby/spec/acceptance/rest/presence_spec.rb
371
+ - lib/submodules/ably-ruby/spec/acceptance/rest/push_admin_spec.rb
372
+ - lib/submodules/ably-ruby/spec/acceptance/rest/push_spec.rb
353
373
  - lib/submodules/ably-ruby/spec/acceptance/rest/stats_spec.rb
354
374
  - lib/submodules/ably-ruby/spec/acceptance/rest/time_spec.rb
355
375
  - lib/submodules/ably-ruby/spec/rspec_config.rb
376
+ - lib/submodules/ably-ruby/spec/run_parallel_tests
356
377
  - lib/submodules/ably-ruby/spec/shared/client_initializer_behaviour.rb
357
378
  - lib/submodules/ably-ruby/spec/shared/model_behaviour.rb
358
379
  - lib/submodules/ably-ruby/spec/shared/protocol_msgbus_behaviour.rb
@@ -376,6 +397,8 @@ files:
376
397
  - lib/submodules/ably-ruby/spec/unit/models/cipher_params_spec.rb
377
398
  - lib/submodules/ably-ruby/spec/unit/models/connection_details_spec.rb
378
399
  - lib/submodules/ably-ruby/spec/unit/models/connection_state_change_spec.rb
400
+ - lib/submodules/ably-ruby/spec/unit/models/device_details_spec.rb
401
+ - lib/submodules/ably-ruby/spec/unit/models/device_push_details_spec.rb
379
402
  - lib/submodules/ably-ruby/spec/unit/models/error_info_spec.rb
380
403
  - lib/submodules/ably-ruby/spec/unit/models/http_paginated_result_spec.rb
381
404
  - lib/submodules/ably-ruby/spec/unit/models/idiomatic_ruby_wrapper_spec.rb
@@ -387,6 +410,7 @@ files:
387
410
  - lib/submodules/ably-ruby/spec/unit/models/paginated_result_spec.rb
388
411
  - lib/submodules/ably-ruby/spec/unit/models/presence_message_spec.rb
389
412
  - lib/submodules/ably-ruby/spec/unit/models/protocol_message_spec.rb
413
+ - lib/submodules/ably-ruby/spec/unit/models/push_channel_subscription_spec.rb
390
414
  - lib/submodules/ably-ruby/spec/unit/models/stats_spec.rb
391
415
  - lib/submodules/ably-ruby/spec/unit/models/token_details_spec.rb
392
416
  - lib/submodules/ably-ruby/spec/unit/models/token_request_spec.rb
@@ -401,12 +425,14 @@ files:
401
425
  - lib/submodules/ably-ruby/spec/unit/realtime/connection_spec.rb
402
426
  - lib/submodules/ably-ruby/spec/unit/realtime/incoming_message_dispatcher_spec.rb
403
427
  - lib/submodules/ably-ruby/spec/unit/realtime/presence_spec.rb
428
+ - lib/submodules/ably-ruby/spec/unit/realtime/push_channel_spec.rb
404
429
  - lib/submodules/ably-ruby/spec/unit/realtime/realtime_spec.rb
405
430
  - lib/submodules/ably-ruby/spec/unit/realtime/safe_deferrable_spec.rb
406
431
  - lib/submodules/ably-ruby/spec/unit/realtime/websocket_transport_spec.rb
407
432
  - lib/submodules/ably-ruby/spec/unit/rest/channel_spec.rb
408
433
  - lib/submodules/ably-ruby/spec/unit/rest/channels_spec.rb
409
434
  - lib/submodules/ably-ruby/spec/unit/rest/client_spec.rb
435
+ - lib/submodules/ably-ruby/spec/unit/rest/push_channel_spec.rb
410
436
  - lib/submodules/ably-ruby/spec/unit/rest/rest_spec.rb
411
437
  - lib/submodules/ably-ruby/spec/unit/util/crypto_spec.rb
412
438
  - lib/submodules/ably-ruby/spec/unit/util/pub_sub_spec.rb
@@ -436,8 +462,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
436
462
  - !ruby/object:Gem::Version
437
463
  version: '0'
438
464
  requirements: []
439
- rubyforge_project:
440
- rubygems_version: 2.7.6
465
+ rubygems_version: 3.0.2
441
466
  signing_key:
442
467
  specification_version: 4
443
468
  summary: A Ruby REST only client library for ably.io realtime messaging