pubnub 4.3.0 → 4.4.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 +4 -4
- data/.pubnub.yml +32 -24
- data/CHANGELOG.md +5 -0
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/VERSION +1 -1
- data/fixtures/vcr_cassettes/examples/grant/1913.yml +1 -1
- data/fixtures/vcr_cassettes/examples/grant/1945.yml +355 -4
- data/fixtures/vcr_cassettes/lib/events/get_all_channels_metadata.yml +39 -0
- data/fixtures/vcr_cassettes/lib/events/get_all_uuid_metadata.yml +76 -0
- data/fixtures/vcr_cassettes/lib/events/{get_space_memberships.yml → get_channel_members.yml} +5 -6
- data/fixtures/vcr_cassettes/lib/events/get_channel_metadata.yml +37 -0
- data/fixtures/vcr_cassettes/lib/events/{get_members.yml → get_memberships.yml} +10 -11
- data/fixtures/vcr_cassettes/lib/events/get_uuid_metadata.yml +76 -0
- data/fixtures/vcr_cassettes/lib/events/grant-error.yml +2 -2
- data/fixtures/vcr_cassettes/lib/events/grant.yml +10 -11
- data/fixtures/vcr_cassettes/lib/events/remove_channel_members.yml +78 -0
- data/fixtures/vcr_cassettes/lib/events/{delete_space.yml → remove_channel_metadata.yml} +5 -6
- data/fixtures/vcr_cassettes/lib/events/{manage_memberships_remove.yml → remove_memberships.yml} +8 -9
- data/fixtures/vcr_cassettes/lib/events/remove_uuid_metadata.yml +76 -0
- data/fixtures/vcr_cassettes/lib/events/set_channel_members.yml +39 -0
- data/fixtures/vcr_cassettes/lib/events/set_channel_metadata.yml +39 -0
- data/fixtures/vcr_cassettes/lib/events/{manage_members_add.yml → set_memberships.yml} +8 -9
- data/fixtures/vcr_cassettes/lib/events/set_uuid_metadata.yml +78 -0
- data/fixtures/vcr_cassettes/lib/events/{subscribe-space-delete-async.yml → subscribe-channel-metadata-remove-sync.yml} +12 -14
- data/fixtures/vcr_cassettes/lib/events/subscribe-channel-metadata-set-async.yml +75 -0
- data/fixtures/vcr_cassettes/lib/events/{subscribe-member-remove-async.yml → subscribe-member-remove-sync.yml} +12 -14
- data/fixtures/vcr_cassettes/lib/events/subscribe-member-set-async.yml +75 -0
- data/fixtures/vcr_cassettes/lib/events/subscribe-membership-remove-async.yml +12 -14
- data/fixtures/vcr_cassettes/lib/events/{subscribe-user-update-async.yml → subscribe-membership-set-async.yml} +12 -14
- data/fixtures/vcr_cassettes/lib/events/{subscribe-user-delete-async.yml → subscribe-uuid-metadata-remove-sync.yml} +12 -14
- data/fixtures/vcr_cassettes/lib/events/subscribe-uuid-metadata-set-async.yml +75 -0
- data/lib/pubnub/client.rb +14 -14
- data/lib/pubnub/client/events.rb +4 -2
- data/lib/pubnub/constants.rb +19 -18
- data/lib/pubnub/event.rb +29 -15
- data/lib/pubnub/event/signature.rb +22 -7
- data/lib/pubnub/events/get_all_channels_metadata.rb +92 -0
- data/lib/pubnub/events/get_all_uuid_metadata.rb +92 -0
- data/lib/pubnub/events/get_channel_members.rb +100 -0
- data/lib/pubnub/events/{get_user.rb → get_channel_metadata.rb} +22 -15
- data/lib/pubnub/events/get_memberships.rb +100 -0
- data/lib/pubnub/events/{get_space.rb → get_uuid_metadata.rb} +22 -15
- data/lib/pubnub/events/grant.rb +9 -7
- data/lib/pubnub/events/remove_channel_members.rb +117 -0
- data/lib/pubnub/events/{delete_space.rb → remove_channel_metadata.rb} +12 -12
- data/lib/pubnub/events/remove_memberships.rb +117 -0
- data/lib/pubnub/events/{delete_user.rb → remove_uuid_metadata.rb} +12 -12
- data/lib/pubnub/events/set_channel_members.rb +120 -0
- data/lib/pubnub/events/{create_space.rb → set_channel_metadata.rb} +26 -16
- data/lib/pubnub/events/set_memberships.rb +120 -0
- data/lib/pubnub/events/{update_space.rb → set_uuid_metadata.rb} +27 -18
- data/lib/pubnub/pam.rb +2 -11
- data/lib/pubnub/subscribe_callback.rb +1 -3
- data/lib/pubnub/subscribe_event/formatter.rb +21 -17
- data/lib/pubnub/subscriber.rb +5 -6
- data/lib/pubnub/validators/get_all_channels_metadata.rb +29 -0
- data/lib/pubnub/validators/get_all_uuid_metadata.rb +29 -0
- data/lib/pubnub/validators/get_channel_members.rb +39 -0
- data/lib/pubnub/validators/get_channel_metadata.rb +39 -0
- data/lib/pubnub/validators/get_memberships.rb +39 -0
- data/lib/pubnub/validators/get_uuid_metadata.rb +39 -0
- data/lib/pubnub/validators/grant.rb +37 -2
- data/lib/pubnub/validators/remove_channel_members.rb +52 -0
- data/lib/pubnub/validators/remove_channel_metadata.rb +39 -0
- data/lib/pubnub/validators/remove_memberships.rb +52 -0
- data/lib/pubnub/validators/remove_uuid_metadata.rb +39 -0
- data/lib/pubnub/validators/set_channel_members.rb +78 -0
- data/lib/pubnub/validators/set_channel_metadata.rb +62 -0
- data/lib/pubnub/validators/set_memberships.rb +78 -0
- data/lib/pubnub/validators/set_uuid_metadata.rb +62 -0
- data/lib/pubnub/version.rb +1 -1
- data/spec/examples/grant_examples_spec.rb +2 -2
- data/spec/lib/events/channel_metadata_spec.rb +58 -0
- data/spec/lib/events/grant_spec.rb +3 -2
- data/spec/lib/events/membership_spec.rb +25 -22
- data/spec/lib/events/subscribe_spec.rb +58 -45
- data/spec/lib/events/uuid_metadata_spec.rb +56 -0
- data/spec/spec_helper.rb +1 -1
- metadata +55 -57
- data/fixtures/vcr_cassettes/lib/events/create_space.yml +0 -40
- data/fixtures/vcr_cassettes/lib/events/create_user.yml +0 -40
- data/fixtures/vcr_cassettes/lib/events/delete_user.yml +0 -38
- data/fixtures/vcr_cassettes/lib/events/get_space.yml +0 -38
- data/fixtures/vcr_cassettes/lib/events/get_spaces.yml +0 -40
- data/fixtures/vcr_cassettes/lib/events/get_user.yml +0 -38
- data/fixtures/vcr_cassettes/lib/events/get_users.yml +0 -40
- data/fixtures/vcr_cassettes/lib/events/manage_members_remove.yml +0 -83
- data/fixtures/vcr_cassettes/lib/events/manage_memberships_add.yml +0 -40
- data/fixtures/vcr_cassettes/lib/events/subscribe-member-add-async.yml +0 -77
- data/fixtures/vcr_cassettes/lib/events/subscribe-membership-add-async.yml +0 -77
- data/fixtures/vcr_cassettes/lib/events/subscribe-space-update-async.yml +0 -77
- data/fixtures/vcr_cassettes/lib/events/update_space.yml +0 -40
- data/fixtures/vcr_cassettes/lib/events/update_user.yml +0 -40
- data/lib/pubnub/events/create_user.rb +0 -84
- data/lib/pubnub/events/get_members.rb +0 -93
- data/lib/pubnub/events/get_space_memberships.rb +0 -93
- data/lib/pubnub/events/get_spaces.rb +0 -90
- data/lib/pubnub/events/get_users.rb +0 -90
- data/lib/pubnub/events/manage_members.rb +0 -105
- data/lib/pubnub/events/manage_memberships.rb +0 -105
- data/lib/pubnub/events/update_user.rb +0 -86
- data/lib/pubnub/validators/create_space.rb +0 -44
- data/lib/pubnub/validators/create_user.rb +0 -44
- data/lib/pubnub/validators/delete_space.rb +0 -32
- data/lib/pubnub/validators/delete_user.rb +0 -32
- data/lib/pubnub/validators/get_members.rb +0 -32
- data/lib/pubnub/validators/get_space.rb +0 -32
- data/lib/pubnub/validators/get_space_memberships.rb +0 -32
- data/lib/pubnub/validators/get_spaces.rb +0 -16
- data/lib/pubnub/validators/get_user.rb +0 -32
- data/lib/pubnub/validators/get_users.rb +0 -16
- data/lib/pubnub/validators/manage_members.rb +0 -45
- data/lib/pubnub/validators/manage_memberships.rb +0 -45
- data/lib/pubnub/validators/update_space.rb +0 -45
- data/lib/pubnub/validators/update_user.rb +0 -45
- data/spec/lib/events/space_spec.rb +0 -75
- data/spec/lib/events/user_spec.rb +0 -75
data/lib/pubnub/version.rb
CHANGED
|
@@ -36003,8 +36003,8 @@ describe Pubnub::Grant do
|
|
|
36003
36003
|
|
|
36004
36004
|
it "__channel___demo___group__nil___read__true___write__true___manage__nil___delete__false___ttl__nil___auth_key__nil___http_sync__true___callback__nil_" do
|
|
36005
36005
|
VCR.use_cassette("examples/grant/1945", record: :none) do
|
|
36006
|
-
Pubnub::Grant.any_instance.stub(:current_time).and_return "
|
|
36007
|
-
Pubnub::Grant.any_instance.stub(:signature).and_return "
|
|
36006
|
+
Pubnub::Grant.any_instance.stub(:current_time).and_return "1602781742"
|
|
36007
|
+
Pubnub::Grant.any_instance.stub(:signature).and_return "v2.e1xGxWqMtgai9T7lewHA0A3LiTaBHM7keT6L6sw0F08"
|
|
36008
36008
|
envelope = @pubnub.grant(channel: :demo, read: true, write: true, delete: false, http_sync: true)
|
|
36009
36009
|
expect(envelope.is_a?(Pubnub::Envelope)).to eq true
|
|
36010
36010
|
expect(envelope.error?).to eq false
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
require "spec_helper"
|
|
2
|
+
|
|
3
|
+
describe Pubnub::SetChannelMetadata do
|
|
4
|
+
it_behaves_like "an event"
|
|
5
|
+
|
|
6
|
+
context "given basic parameters" do
|
|
7
|
+
before :each do
|
|
8
|
+
@pubnub = Pubnub::Client.new(
|
|
9
|
+
subscribe_key: "sub-a-mock-key",
|
|
10
|
+
publish_key: "pub-a-mock-key",
|
|
11
|
+
auth_key: "ruby-test-auth",
|
|
12
|
+
uuid: "ruby-test-uuid"
|
|
13
|
+
)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
it "set_channel_metadata_works" do
|
|
17
|
+
VCR.use_cassette("lib/events/set_channel_metadata", record: :once) do
|
|
18
|
+
envelope = @pubnub.set_channel_metadata(
|
|
19
|
+
channel: "rb_channel",
|
|
20
|
+
metadata: { name: "some_name", custom: { XXX: "YYYY" } },
|
|
21
|
+
include: { custom: true }
|
|
22
|
+
).value
|
|
23
|
+
|
|
24
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
25
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
it "get_channel_metadata_works" do
|
|
30
|
+
VCR.use_cassette("lib/events/get_channel_metadata", record: :once) do
|
|
31
|
+
envelope = @pubnub.get_channel_metadata(channel: "rb_channel", include: { custom: true }).value
|
|
32
|
+
|
|
33
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
34
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
it "get_all_channels_metadata_works" do
|
|
39
|
+
VCR.use_cassette("lib/events/get_all_channels_metadata", record: :once) do
|
|
40
|
+
envelope = @pubnub.get_all_channels_metadata(limit: 5, include: { custom: true }).value
|
|
41
|
+
|
|
42
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
43
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
it "remove_channel_metadata_works" do
|
|
48
|
+
VCR.use_cassette("lib/events/remove_channel_metadata", record: :once) do
|
|
49
|
+
envelope = @pubnub.remove_channel_metadata(channel: "rb_channel").value
|
|
50
|
+
|
|
51
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
52
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
end
|
|
@@ -5,9 +5,10 @@ describe Pubnub::Grant do
|
|
|
5
5
|
|
|
6
6
|
context "given basic parameters" do
|
|
7
7
|
before :each do
|
|
8
|
-
allow_any_instance_of(Pubnub::Grant).to receive(:current_time).and_return
|
|
9
|
-
allow_any_instance_of(Pubnub::Grant).to receive(:signature).and_return "
|
|
8
|
+
allow_any_instance_of(Pubnub::Grant).to receive(:current_time).and_return 1602537897
|
|
9
|
+
allow_any_instance_of(Pubnub::Grant).to receive(:signature).and_return "v2.OdCTZXne_jEBewh3yY8iNDWcMCHC6BXNrg1Er9JoSTQ"
|
|
10
10
|
end
|
|
11
|
+
|
|
11
12
|
let(:pubnub) do
|
|
12
13
|
Pubnub::Client.new(
|
|
13
14
|
subscribe_key: "sub-a-mock-key",
|
|
@@ -1,63 +1,66 @@
|
|
|
1
1
|
require "spec_helper"
|
|
2
2
|
|
|
3
|
-
describe Pubnub::
|
|
3
|
+
describe Pubnub::SetMemberships do
|
|
4
4
|
it_behaves_like "an event"
|
|
5
5
|
|
|
6
6
|
context "given basic parameters" do
|
|
7
7
|
before :each do
|
|
8
8
|
@pubnub = Pubnub::Client.new(
|
|
9
|
-
subscribe_key: "
|
|
10
|
-
publish_key: "
|
|
9
|
+
subscribe_key: "sub-a-mock-key",
|
|
10
|
+
publish_key: "pub-a-mock-key",
|
|
11
11
|
auth_key: "ruby-test-auth",
|
|
12
12
|
uuid: "ruby-test-uuid",
|
|
13
|
-
|
|
13
|
+
)
|
|
14
14
|
end
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
|
|
16
|
+
it "get_channel_members_works" do
|
|
17
|
+
VCR.use_cassette("lib/events/get_channel_members", record: :once) do
|
|
18
|
+
envelope = @pubnub.get_channel_members(channel: "channel-1", include: { count: true, custom: true }).value
|
|
18
19
|
|
|
19
20
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
20
21
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
21
22
|
end
|
|
22
23
|
end
|
|
23
24
|
|
|
24
|
-
it "
|
|
25
|
-
VCR.use_cassette("lib/events/
|
|
26
|
-
envelope = @pubnub.
|
|
25
|
+
it "get_memberships_works" do
|
|
26
|
+
VCR.use_cassette("lib/events/get_memberships", record: :once) do
|
|
27
|
+
envelope = @pubnub.get_memberships(uuid: "mg3", include: { count: true, custom: true }).value
|
|
27
28
|
|
|
28
29
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
29
30
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
30
31
|
end
|
|
31
32
|
end
|
|
32
33
|
|
|
33
|
-
it "
|
|
34
|
-
VCR.use_cassette("lib/events/
|
|
35
|
-
envelope = @pubnub.
|
|
34
|
+
it "set_memberships_works" do
|
|
35
|
+
VCR.use_cassette("lib/events/set_memberships", record: :once) do
|
|
36
|
+
envelope = @pubnub.set_memberships(uuid: "mg3", channels: [{ 'channel': 'channel-1'}], include: { custom: true }).value
|
|
36
37
|
|
|
37
38
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
38
39
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
39
40
|
end
|
|
40
41
|
end
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
|
|
43
|
+
it "remove_memberships_works" do
|
|
44
|
+
VCR.use_cassette("lib/events/remove_memberships", record: :once) do
|
|
45
|
+
envelope = @pubnub.remove_memberships(uuid: "mg3", channels: [{ 'channel': 'channel-1'}], include: { custom: true }).value
|
|
44
46
|
|
|
45
47
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
46
48
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
47
49
|
end
|
|
48
50
|
end
|
|
49
51
|
|
|
50
|
-
it "
|
|
51
|
-
VCR.use_cassette("lib/events/
|
|
52
|
-
envelope = @pubnub.
|
|
52
|
+
it "set_channel_members_works" do
|
|
53
|
+
VCR.use_cassette("lib/events/set_channel_members", record: :once) do
|
|
54
|
+
envelope = @pubnub.set_channel_members(channel: "channel-1", uuids: [{'uuid': 'mg2'}], include: { custom: true }).value
|
|
53
55
|
|
|
54
56
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
55
57
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
56
58
|
end
|
|
57
59
|
end
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
60
|
+
|
|
61
|
+
it "remove_channel_members_works" do
|
|
62
|
+
VCR.use_cassette("lib/events/remove_channel_members", record: :once) do
|
|
63
|
+
envelope = @pubnub.remove_channel_members(channel: "channel-1", uuids: [{'uuid': 'mg2'}], include: { custom: true }).value
|
|
61
64
|
|
|
62
65
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
63
66
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
@@ -13,8 +13,8 @@ describe Pubnub::Subscribe do
|
|
|
13
13
|
@messages = []
|
|
14
14
|
@statuses = []
|
|
15
15
|
@signals = []
|
|
16
|
-
@
|
|
17
|
-
@
|
|
16
|
+
@uuid_metadata_events = []
|
|
17
|
+
@channel_metadata_events = []
|
|
18
18
|
@membership_events = []
|
|
19
19
|
|
|
20
20
|
@callbacks = Pubnub::SubscribeCallback.new(
|
|
@@ -22,9 +22,19 @@ describe Pubnub::Subscribe do
|
|
|
22
22
|
presence: -> (_envelope) { },
|
|
23
23
|
status: -> (envelope) { @statuses << envelope },
|
|
24
24
|
signal: -> (envelope) { @signals << envelope },
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
object: -> (envelope) {
|
|
26
|
+
case envelope.result[:operation]
|
|
27
|
+
when Pubnub::Constants::OPERATION_SET_UUID_METADATA, Pubnub::Constants::OPERATION_REMOVE_UUID_METADATA
|
|
28
|
+
@uuid_metadata_events << envelope
|
|
29
|
+
when Pubnub::Constants::OPERATION_SET_CHANNEL_METADATA, Pubnub::Constants::OPERATION_REMOVE_CHANNEL_METADATA
|
|
30
|
+
@channel_metadata_events << envelope
|
|
31
|
+
when Pubnub::Constants::OPERATION_SET_CHANNEL_MEMBERS, Pubnub::Constants::OPERATION_REMOVE_CHANNEL_MEMBERS,
|
|
32
|
+
Pubnub::Constants::OPERATION_SET_MEMBERSHIPS, Pubnub::Constants::OPERATION_REMOVE_MEMBERSHIPS
|
|
33
|
+
@membership_events << envelope
|
|
34
|
+
else
|
|
35
|
+
puts "Unexpected operation"
|
|
36
|
+
end
|
|
37
|
+
}
|
|
28
38
|
)
|
|
29
39
|
end
|
|
30
40
|
|
|
@@ -107,8 +117,8 @@ describe Pubnub::Subscribe do
|
|
|
107
117
|
end
|
|
108
118
|
end
|
|
109
119
|
|
|
110
|
-
it "
|
|
111
|
-
VCR.use_cassette("lib/events/subscribe-
|
|
120
|
+
it "uuid metadata update works" do
|
|
121
|
+
VCR.use_cassette("lib/events/subscribe-uuid-metadata-set-async", record: :once) do
|
|
112
122
|
@pubnub = Pubnub::Client.new(
|
|
113
123
|
subscribe_key: "sub-a-mock-key",
|
|
114
124
|
publish_key: "pub-a-mock-key",
|
|
@@ -118,20 +128,21 @@ describe Pubnub::Subscribe do
|
|
|
118
128
|
|
|
119
129
|
@pubnub.add_listener(callback: @callbacks)
|
|
120
130
|
|
|
121
|
-
@pubnub.subscribe(channel: :
|
|
131
|
+
@pubnub.subscribe(channel: :uuid_mg3)
|
|
122
132
|
|
|
123
133
|
eventually do
|
|
124
|
-
envelope = @
|
|
134
|
+
envelope = @uuid_metadata_events.first
|
|
125
135
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
126
136
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
127
|
-
expect(envelope.result[:data][:message]['event']).to eq '
|
|
128
|
-
expect(envelope.result[:data][:message]['type']).to eq '
|
|
137
|
+
expect(envelope.result[:data][:message]['event']).to eq 'set'
|
|
138
|
+
expect(envelope.result[:data][:message]['type']).to eq 'uuid'
|
|
139
|
+
expect(envelope.result[:data][:message]['data']['id']).to eq 'uuid_mg3'
|
|
129
140
|
end
|
|
130
141
|
end
|
|
131
142
|
end
|
|
132
143
|
|
|
133
|
-
it "
|
|
134
|
-
VCR.use_cassette("lib/events/subscribe-
|
|
144
|
+
it "channel metadata update works" do
|
|
145
|
+
VCR.use_cassette("lib/events/subscribe-channel-metadata-set-async", record: :once) do
|
|
135
146
|
@pubnub = Pubnub::Client.new(
|
|
136
147
|
subscribe_key: "sub-a-mock-key",
|
|
137
148
|
publish_key: "pub-a-mock-key",
|
|
@@ -141,20 +152,21 @@ describe Pubnub::Subscribe do
|
|
|
141
152
|
|
|
142
153
|
@pubnub.add_listener(callback: @callbacks)
|
|
143
154
|
|
|
144
|
-
@pubnub.subscribe(channel: :
|
|
155
|
+
@pubnub.subscribe(channel: :rb_channel_3)
|
|
145
156
|
|
|
146
157
|
eventually do
|
|
147
|
-
envelope = @
|
|
158
|
+
envelope = @channel_metadata_events.first
|
|
148
159
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
149
160
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
150
|
-
expect(envelope.result[:data][:message]['event']).to eq '
|
|
151
|
-
expect(envelope.result[:data][:message]['type']).to eq '
|
|
161
|
+
expect(envelope.result[:data][:message]['event']).to eq 'set'
|
|
162
|
+
expect(envelope.result[:data][:message]['type']).to eq 'channel'
|
|
163
|
+
# expect(envelope.result[:data][:message]['data']['id']).to eq 'rb_channel_3'
|
|
152
164
|
end
|
|
153
165
|
end
|
|
154
166
|
end
|
|
155
167
|
|
|
156
|
-
it "member
|
|
157
|
-
VCR.use_cassette("lib/events/subscribe-member-
|
|
168
|
+
it "member set works" do
|
|
169
|
+
VCR.use_cassette("lib/events/subscribe-member-set-async", record: :once) do
|
|
158
170
|
@pubnub = Pubnub::Client.new(
|
|
159
171
|
subscribe_key: "sub-a-mock-key",
|
|
160
172
|
publish_key: "pub-a-mock-key",
|
|
@@ -164,21 +176,21 @@ describe Pubnub::Subscribe do
|
|
|
164
176
|
|
|
165
177
|
@pubnub.add_listener(callback: @callbacks)
|
|
166
178
|
|
|
167
|
-
@pubnub.subscribe(channel: :
|
|
179
|
+
@pubnub.subscribe(channel: :rb_channel_3)
|
|
168
180
|
|
|
169
181
|
eventually do
|
|
170
182
|
envelope = @membership_events.first
|
|
171
183
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
172
184
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
173
|
-
expect(envelope.result[:data][:message]['event']).to eq '
|
|
185
|
+
expect(envelope.result[:data][:message]['event']).to eq 'set'
|
|
174
186
|
expect(envelope.result[:data][:message]['type']).to eq 'membership'
|
|
175
|
-
expect(envelope.result[:data][:message]['data']['
|
|
187
|
+
expect(envelope.result[:data][:message]['data']['uuid']['id']).to eq 'uuid_mg3'
|
|
176
188
|
end
|
|
177
189
|
end
|
|
178
190
|
end
|
|
179
191
|
|
|
180
|
-
it "membership
|
|
181
|
-
VCR.use_cassette("lib/events/subscribe-membership-
|
|
192
|
+
it "membership set works" do
|
|
193
|
+
VCR.use_cassette("lib/events/subscribe-membership-set-async", record: :once) do
|
|
182
194
|
@pubnub = Pubnub::Client.new(
|
|
183
195
|
subscribe_key: "sub-a-mock-key",
|
|
184
196
|
publish_key: "pub-a-mock-key",
|
|
@@ -188,15 +200,15 @@ describe Pubnub::Subscribe do
|
|
|
188
200
|
|
|
189
201
|
@pubnub.add_listener(callback: @callbacks)
|
|
190
202
|
|
|
191
|
-
@pubnub.subscribe(channel: :
|
|
203
|
+
@pubnub.subscribe(channel: :uuid_mg5)
|
|
192
204
|
|
|
193
205
|
eventually do
|
|
194
206
|
envelope = @membership_events.first
|
|
195
207
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
196
208
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
197
|
-
expect(envelope.result[:data][:message]['event']).to eq '
|
|
209
|
+
expect(envelope.result[:data][:message]['event']).to eq 'set'
|
|
198
210
|
expect(envelope.result[:data][:message]['type']).to eq 'membership'
|
|
199
|
-
expect(envelope.result[:data][:message]['data']['
|
|
211
|
+
expect(envelope.result[:data][:message]['data']['channel']['id']).to eq 'rb_channel_5'
|
|
200
212
|
end
|
|
201
213
|
end
|
|
202
214
|
end
|
|
@@ -258,8 +270,8 @@ describe Pubnub::Subscribe do
|
|
|
258
270
|
end
|
|
259
271
|
end
|
|
260
272
|
|
|
261
|
-
it "
|
|
262
|
-
VCR.use_cassette("lib/events/subscribe-
|
|
273
|
+
it "uuid metadata remove works" do
|
|
274
|
+
VCR.use_cassette("lib/events/subscribe-uuid-metadata-remove-sync", record: :once) do
|
|
263
275
|
@pubnub = Pubnub::Client.new(
|
|
264
276
|
subscribe_key: "sub-a-mock-key",
|
|
265
277
|
publish_key: "pub-a-mock-key",
|
|
@@ -267,19 +279,20 @@ describe Pubnub::Subscribe do
|
|
|
267
279
|
uuid: "ruby-test-uuid"
|
|
268
280
|
)
|
|
269
281
|
|
|
270
|
-
@pubnub.subscribe(channel: :
|
|
271
|
-
envelopes = @pubnub.subscribe(channel: :
|
|
282
|
+
@pubnub.subscribe(channel: :uuid_mg3, http_sync: true)
|
|
283
|
+
envelopes = @pubnub.subscribe(channel: :uuid_mg3, http_sync: true)
|
|
272
284
|
|
|
273
285
|
envelope = envelopes.first
|
|
274
286
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
275
287
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
276
288
|
expect(envelope.result[:data][:message]['event']).to eq 'delete'
|
|
277
|
-
expect(envelope.result[:data][:message]['type']).to eq '
|
|
289
|
+
expect(envelope.result[:data][:message]['type']).to eq 'uuid'
|
|
290
|
+
expect(envelope.result[:data][:message]['data']['id']).to eq 'uuid_mg3'
|
|
278
291
|
end
|
|
279
292
|
end
|
|
280
293
|
|
|
281
|
-
it "
|
|
282
|
-
VCR.use_cassette("lib/events/subscribe-
|
|
294
|
+
it "channel metadata remove works" do
|
|
295
|
+
VCR.use_cassette("lib/events/subscribe-channel-metadata-remove-sync", record: :once) do
|
|
283
296
|
@pubnub = Pubnub::Client.new(
|
|
284
297
|
subscribe_key: "sub-a-mock-key",
|
|
285
298
|
publish_key: "pub-a-mock-key",
|
|
@@ -287,20 +300,20 @@ describe Pubnub::Subscribe do
|
|
|
287
300
|
uuid: "ruby-test-uuid"
|
|
288
301
|
)
|
|
289
302
|
|
|
290
|
-
@pubnub.subscribe(channel: :
|
|
291
|
-
envelopes = @pubnub.subscribe(channel: :
|
|
303
|
+
@pubnub.subscribe(channel: :rb_channel_1, http_sync: true)
|
|
304
|
+
envelopes = @pubnub.subscribe(channel: :rb_channel_1, http_sync: true)
|
|
292
305
|
|
|
293
306
|
envelope = envelopes.first
|
|
294
307
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
295
308
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
296
309
|
expect(envelope.result[:data][:message]['event']).to eq 'delete'
|
|
297
|
-
expect(envelope.result[:data][:message]['type']).to eq '
|
|
298
|
-
expect(envelope.result[:data][:message]['data']['id']).to eq '
|
|
310
|
+
expect(envelope.result[:data][:message]['type']).to eq 'channel'
|
|
311
|
+
expect(envelope.result[:data][:message]['data']['id']).to eq 'rb_channel_1'
|
|
299
312
|
end
|
|
300
313
|
end
|
|
301
314
|
|
|
302
315
|
it "member remove works" do
|
|
303
|
-
VCR.use_cassette("lib/events/subscribe-member-remove-
|
|
316
|
+
VCR.use_cassette("lib/events/subscribe-member-remove-sync", record: :once) do
|
|
304
317
|
@pubnub = Pubnub::Client.new(
|
|
305
318
|
subscribe_key: "sub-a-mock-key",
|
|
306
319
|
publish_key: "pub-a-mock-key",
|
|
@@ -308,15 +321,15 @@ describe Pubnub::Subscribe do
|
|
|
308
321
|
uuid: "ruby-test-uuid"
|
|
309
322
|
)
|
|
310
323
|
|
|
311
|
-
@pubnub.subscribe(channel: :
|
|
312
|
-
envelopes = @pubnub.subscribe(channel: :
|
|
324
|
+
@pubnub.subscribe(channel: :rb_channel_1, http_sync: true)
|
|
325
|
+
envelopes = @pubnub.subscribe(channel: :rb_channel_1, http_sync: true)
|
|
313
326
|
|
|
314
327
|
envelope = envelopes.first
|
|
315
328
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
316
329
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
317
330
|
expect(envelope.result[:data][:message]['event']).to eq 'delete'
|
|
318
331
|
expect(envelope.result[:data][:message]['type']).to eq 'membership'
|
|
319
|
-
expect(envelope.result[:data][:message]['data']['
|
|
332
|
+
expect(envelope.result[:data][:message]['data']['uuid']['id']).to eq 'uuid_mg1'
|
|
320
333
|
end
|
|
321
334
|
end
|
|
322
335
|
|
|
@@ -329,15 +342,15 @@ describe Pubnub::Subscribe do
|
|
|
329
342
|
uuid: "ruby-test-uuid"
|
|
330
343
|
)
|
|
331
344
|
|
|
332
|
-
@pubnub.subscribe(channel: :
|
|
333
|
-
envelopes = @pubnub.subscribe(channel: :
|
|
345
|
+
@pubnub.subscribe(channel: :uuid_mg1, http_sync: true)
|
|
346
|
+
envelopes = @pubnub.subscribe(channel: :uuid_mg1, http_sync: true)
|
|
334
347
|
|
|
335
348
|
envelope = envelopes.first
|
|
336
349
|
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
337
350
|
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
338
351
|
expect(envelope.result[:data][:message]['event']).to eq 'delete'
|
|
339
352
|
expect(envelope.result[:data][:message]['type']).to eq 'membership'
|
|
340
|
-
expect(envelope.result[:data][:message]['data']['
|
|
353
|
+
expect(envelope.result[:data][:message]['data']['channel']['id']).to eq 'rb_channel_1'
|
|
341
354
|
end
|
|
342
355
|
|
|
343
356
|
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
require "spec_helper"
|
|
2
|
+
|
|
3
|
+
describe Pubnub::SetUuidMetadata do
|
|
4
|
+
it_behaves_like "an event"
|
|
5
|
+
|
|
6
|
+
context "given basic parameters" do
|
|
7
|
+
before :each do
|
|
8
|
+
@pubnub = Pubnub::Client.new(
|
|
9
|
+
subscribe_key: "sub-a-mock-key",
|
|
10
|
+
publish_key: "pub-a-mock-key",
|
|
11
|
+
auth_key: "ruby-test-auth",
|
|
12
|
+
uuid: "ruby-test-uuid",
|
|
13
|
+
)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
it "set_uuid_metadata_works" do
|
|
17
|
+
VCR.use_cassette("lib/events/set_uuid_metadata", record: :once) do
|
|
18
|
+
envelope = @pubnub.set_uuid_metadata(
|
|
19
|
+
uuid: "mg",
|
|
20
|
+
metadata: { name: "magnum", custom: { XXX: "YYYY" } },
|
|
21
|
+
include: { custom: true }
|
|
22
|
+
).value
|
|
23
|
+
|
|
24
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
25
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
it "get_uuid_metadata_works" do
|
|
30
|
+
VCR.use_cassette("lib/events/get_uuid_metadata", record: :once) do
|
|
31
|
+
envelope = @pubnub.get_uuid_metadata(uuid: "mg", include: { custom: true }).value
|
|
32
|
+
|
|
33
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
34
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
it "get_all_uuid_metadata_works" do
|
|
39
|
+
VCR.use_cassette("lib/events/get_all_uuid_metadata", record: :once) do
|
|
40
|
+
envelope = @pubnub.get_all_uuid_metadata(limit: 5, include: { custom: true }).value
|
|
41
|
+
|
|
42
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
43
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
it "remove_uuid_metadata_works" do
|
|
48
|
+
VCR.use_cassette("lib/events/remove_uuid_metadata", record: :once) do
|
|
49
|
+
envelope = @pubnub.remove_uuid_metadata(uuid: "mg").value
|
|
50
|
+
|
|
51
|
+
expect(envelope.result).to satisfies_schema Pubnub::Schemas::Envelope::ResultSchema.new
|
|
52
|
+
expect(envelope.status).to satisfies_schema Pubnub::Schemas::Envelope::StatusSchema.new
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|