diff --git a/Tests/PubNubTests/Networking/Routers/ObjectsChannelRouterTests.swift b/Tests/PubNubTests/Networking/Routers/ObjectsChannelRouterTests.swift index d845d183..24a81844 100644 --- a/Tests/PubNubTests/Networking/Routers/ObjectsChannelRouterTests.swift +++ b/Tests/PubNubTests/Networking/Routers/ObjectsChannelRouterTests.swift @@ -22,8 +22,10 @@ final class ObjectsChannelRouterTests: XCTestCase { extension ObjectsChannelRouterTests { func testAll_Router() { let router = ObjectsChannelRouter( - .all(customFields: true, totalCount: true, filter: "filter", - sort: ["sort"], limit: 100, start: "start", end: "end"), + .all( + include: [.custom], totalCount: true, filter: "filter", + sort: ["sort"], limit: 100, start: "start", end: "end" + ), configuration: config ) @@ -34,21 +36,26 @@ extension ObjectsChannelRouterTests { func testAll_Router_ValidationError() { let router = ObjectsChannelRouter( - .all(customFields: true, totalCount: true, filter: "filter", - sort: ["sort"], limit: 100, start: "start", end: "end"), + .all( + include: [.custom], totalCount: true, filter: "filter", + sort: ["sort"], limit: 100, start: "start", end: "end" + ), configuration: config ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testAll_Success() { let expectation = self.expectation(description: "Fetch All Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_channel_all_success"]), - let firstDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:55.44977Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:59.326105Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_channel_all_success"]), + let firstDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:55.44977Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:59.326105Z") else { return XCTFail("Could not create mock url session") } @@ -62,9 +69,17 @@ extension ObjectsChannelRouterTests { custom: ["info": "JMGXDNYF"], updated: lastDate, eTag: "AeH55Y3T0a78Ew" ) - let page = PubNubHashedPageBase(start: "NextPage", end: "PrevPage", totalCount: 2) + let page = PubNubHashedPageBase( + start: "NextPage", + end: "PrevPage", + totalCount: 2 + ) - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.allChannelMetadata { result in switch result { case let .success((metadataObjects, nextPage)): @@ -87,8 +102,8 @@ extension ObjectsChannelRouterTests { } let testPage = PubNubHashedPageBase(totalCount: 0) - let pubnub = PubNub(configuration: config, session: sessions.session) + pubnub.allChannelMetadata { result in switch result { case let .success((metadataObjects, nextPage)): @@ -110,7 +125,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.allChannelMetadata { result in switch result { case .success: @@ -131,7 +150,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.allChannelMetadata { result in switch result { case .success: @@ -152,7 +175,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.allChannelMetadata { result in switch result { case .success: @@ -173,7 +200,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.allChannelMetadata { result in switch result { case .success: @@ -192,8 +223,10 @@ extension ObjectsChannelRouterTests { extension ObjectsChannelRouterTests { func testFetch_Router() { - let router = ObjectsChannelRouter(.fetch(metadataId: "OtherUser", customFields: true), - configuration: config) + let router = ObjectsChannelRouter( + .fetch(metadataId: "OtherUser", include: [.custom]), + configuration: config + ) XCTAssertEqual(router.endpoint.description, "Fetch Metadata for a Channel") XCTAssertEqual(router.category, "Fetch Metadata for a Channel") @@ -201,17 +234,23 @@ extension ObjectsChannelRouterTests { } func testFetch_Router_ValidationError() { - let router = ObjectsChannelRouter(.fetch(metadataId: "", customFields: true), configuration: config) + let router = ObjectsChannelRouter( + .fetch(metadataId: "", include: [.custom]), + configuration: config + ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testFetch_Success() { let expectation = self.expectation(description: "Fetch Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_channel_fetch_success"]), - let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_channel_fetch_success"]), + let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") else { return XCTFail("Could not create mock url session") } @@ -223,8 +262,12 @@ extension ObjectsChannelRouterTests { updated: firstDate, eTag: "AfuB8q7/s+qCwAE" ) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(channel: "TestChannel") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchChannelMetadata("TestChannel") { result in switch result { case let .success(responseObject): XCTAssertEqual(try? responseObject.transcode(), testObject) @@ -244,8 +287,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(channel: "TestChannel") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchChannelMetadata("TestChannel") { result in switch result { case .success: XCTFail("Request should fail.") @@ -265,8 +312,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(channel: "TestChannel") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchChannelMetadata("TestChannel") { result in switch result { case .success: XCTFail("Request should fail.") @@ -286,8 +337,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(channel: "TestChannel") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchChannelMetadata("TestChannel") { result in switch result { case .success: XCTFail("Request should fail.") @@ -307,8 +362,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(channel: "TestChannel") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchChannelMetadata("TestChannel") { result in switch result { case .success: XCTFail("Request should fail.") @@ -328,8 +387,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(channel: "TestChannel") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchChannelMetadata("TestChannel") { result in switch result { case .success: XCTFail("Request should fail.") @@ -347,7 +410,10 @@ extension ObjectsChannelRouterTests { extension ObjectsChannelRouterTests { func testSet_Router() { - let router = ObjectsChannelRouter(.set(metadata: testChannel, customFields: true), configuration: config) + let router = ObjectsChannelRouter( + .set(metadata: testChannel, include: [.custom]), + configuration: config + ) XCTAssertEqual(router.endpoint.description, "Set Metadata for a Channel") XCTAssertEqual(router.category, "Set Metadata for a Channel") @@ -355,17 +421,23 @@ extension ObjectsChannelRouterTests { } func testSet_Router_ValidationError() { - let router = ObjectsChannelRouter(.set(metadata: invalidUser, customFields: true), configuration: config) + let router = ObjectsChannelRouter( + .set(metadata: invalidUser, include: [.custom]), + configuration: config + ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testSet_Success() { let expectation = self.expectation(description: "Create Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_channel_fetch_success"]), - let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_channel_fetch_success"]), + let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") else { return XCTFail("Could not create mock url session") } @@ -377,8 +449,12 @@ extension ObjectsChannelRouterTests { updated: firstDate, eTag: "AfuB8q7/s+qCwAE" ) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case let .success(responseObject): XCTAssertEqual(try? responseObject.transcode(), testObject) @@ -398,8 +474,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case .success: XCTFail("Request should fail.") @@ -419,8 +499,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case .success: XCTFail("Request should fail.") @@ -440,8 +524,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case .success: XCTFail("Request should fail.") @@ -461,8 +549,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case .success: XCTFail("Request should fail.") @@ -482,8 +574,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case .success: XCTFail("Request should fail.") @@ -503,8 +599,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case .success: XCTFail("Request should fail.") @@ -524,8 +624,12 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(channel: testChannel) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setChannelMetadata(testChannel) { result in switch result { case .success: XCTFail("Request should fail.") @@ -553,8 +657,10 @@ extension ObjectsChannelRouterTests { func testRemove_Router_ValidationError() { let router = ObjectsChannelRouter(.remove(metadataId: ""), configuration: config) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testRemove_Success() { @@ -564,7 +670,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.remove(channel: "TestChannel") { result in switch result { case let .success(metadataId): @@ -585,7 +695,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.remove(channel: "TestChannel") { result in switch result { case .success: @@ -606,7 +720,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.remove(channel: "TestChannel") { result in switch result { case .success: @@ -627,7 +745,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.remove(channel: "TestChannel") { result in switch result { case .success: @@ -648,7 +770,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.remove(channel: "TestChannel") { result in switch result { case .success: @@ -669,7 +795,11 @@ extension ObjectsChannelRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + pubnub.remove(channel: "TestChannel") { result in switch result { case .success: diff --git a/Tests/PubNubTests/Networking/Routers/ObjectsMembershipsRouterTests.swift b/Tests/PubNubTests/Networking/Routers/ObjectsMembershipsRouterTests.swift index 3815db0c..44756486 100644 --- a/Tests/PubNubTests/Networking/Routers/ObjectsMembershipsRouterTests.swift +++ b/Tests/PubNubTests/Networking/Routers/ObjectsMembershipsRouterTests.swift @@ -22,8 +22,10 @@ final class ObjectsMembershipsRouterTests: XCTestCase { extension ObjectsMembershipsRouterTests { func testMembershipFetch_Router() { let router = ObjectsMembershipsRouter( - .fetchMemberships(uuidMetadataId: "TestUser", customFields: [], totalCount: false, - filter: nil, sort: [], limit: nil, start: nil, end: nil), + .fetchMemberships( + uuidMetadataId: "TestUser", customFields: [], + totalCount: false, filter: nil, sort: [], limit: nil, start: nil, end: nil + ), configuration: config ) @@ -41,17 +43,20 @@ extension ObjectsMembershipsRouterTests { configuration: config ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testMembershipFetch_Success() { let expectation = self.expectation(description: "Fetch Memberships Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_membership_success"]), - let channeDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), - let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_membership_success"]), + let channeDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), + let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") else { return XCTFail("Could not create mock url session") } @@ -60,23 +65,28 @@ extension ObjectsMembershipsRouterTests { metadataId: "FirstChannel", name: "First Channel", channelDescription: "Channel Description", updated: channeDate, eTag: "ChanneleTag" ) - - let lastChannel = PubNubChannelMetadataBase(metadataId: "LastChannel") + let lastChannel = PubNubChannelMetadataBase( + metadataId: "LastChannel" + ) let firstMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUser", channelMetadataId: firstChannel.metadataId, + userMetadataId: "TestUser", channelMetadataId: firstChannel.metadataId, channel: firstChannel, updated: firstDate, eTag: "FirstETag" ) let lastMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUser", channelMetadataId: "LastChannel", + userMetadataId: "TestUser", channelMetadataId: "LastChannel", channel: lastChannel, updated: lastDate, eTag: "LastETag" ) let page = PubNubHashedPageBase(start: "NextPage", totalCount: 2) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetchMemberships(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchMemberships(userId: "TestUser") { result in switch result { case let .success((memberships, nextPage)): XCTAssertEqual(memberships.compactMap { try? $0.transcode() }, [firstMembership, lastMembership]) @@ -98,14 +108,13 @@ extension ObjectsMembershipsRouterTests { } let testPage = PubNubHashedPageBase(start: "NextPage") - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetchMemberships(uuid: "TestUser") { result in + + pubnub.fetchMemberships(userId: "TestUser") { result in switch result { case let .success((memberships, nextPage)): XCTAssertTrue(memberships.isEmpty) XCTAssertEqual(try? nextPage?.transcode(), testPage) - case let .failure(error): XCTFail("Fetch Memberships request failed with error: \(error.localizedDescription)") } @@ -121,9 +130,10 @@ extension ObjectsMembershipsRouterTests { extension ObjectsMembershipsRouterTests { func testMembershipSet_Router() { let router = ObjectsMembershipsRouter( - .setMemberships(uuidMetadataId: "TestUUID", customFields: [], totalCount: true, - changes: .init(set: [], delete: []), - filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last"), + .setMemberships( + uuidMetadataId: "TestUUID", customFields: [], totalCount: true, changes: .init(set: [], delete: []), + filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last" + ), configuration: config ) @@ -134,23 +144,27 @@ extension ObjectsMembershipsRouterTests { func testMembershipSet_Router_ValidationError() { let router = ObjectsMembershipsRouter( - .setMemberships(uuidMetadataId: "", customFields: [], totalCount: true, - changes: .init(set: [], delete: []), - filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last"), + .setMemberships( + uuidMetadataId: "", customFields: [], totalCount: true, changes: .init(set: [], delete: []), + filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last" + ), configuration: config ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testMembershipSet_Success() { let expectation = self.expectation(description: "Update Memberships Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_membership_success"]), - let channeDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), - let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_membership_success"]), + let channeDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), + let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") else { return XCTFail("Could not create mock url session") } @@ -159,22 +173,24 @@ extension ObjectsMembershipsRouterTests { metadataId: "FirstChannel", name: "First Channel", channelDescription: "Channel Description", updated: channeDate, eTag: "ChanneleTag" ) - let lastChannel = PubNubChannelMetadataBase(metadataId: "LastChannel") + let lastChannel = PubNubChannelMetadataBase( + metadataId: "LastChannel" + ) let firstMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUser", channelMetadataId: firstChannel.metadataId, + userMetadataId: "TestUser", channelMetadataId: firstChannel.metadataId, channel: firstChannel, updated: firstDate, eTag: "FirstETag" ) let lastMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUser", channelMetadataId: "LastChannel", + userMetadataId: "TestUser", channelMetadataId: "LastChannel", channel: lastChannel, updated: lastDate, eTag: "LastETag" ) let page = PubNubHashedPageBase(start: "NextPage", totalCount: 2) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.setMemberships(uuid: "TestUser", channels: [firstMembership]) { result in + + pubnub.setMemberships(userId: "TestUser", channels: [firstMembership]) { result in switch result { case let .success((memberships, nextPage)): XCTAssertEqual(memberships.compactMap { try? $0.transcode() }, [firstMembership, lastMembership]) @@ -191,10 +207,11 @@ extension ObjectsMembershipsRouterTests { func testMembershipRemove_Success() { let expectation = self.expectation(description: "Update Memberships Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_membership_success"]), - let channeDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), - let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_membership_success"]), + let channeDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), + let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") else { return XCTFail("Could not create mock url session") } @@ -203,22 +220,24 @@ extension ObjectsMembershipsRouterTests { metadataId: "FirstChannel", name: "First Channel", channelDescription: "Channel Description", updated: channeDate, eTag: "ChanneleTag" ) - let lastChannel = PubNubChannelMetadataBase(metadataId: "LastChannel") + let lastChannel = PubNubChannelMetadataBase( + metadataId: "LastChannel" + ) let firstMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUser", channelMetadataId: firstChannel.metadataId, + userMetadataId: "TestUser", channelMetadataId: firstChannel.metadataId, channel: firstChannel, updated: firstDate, eTag: "FirstETag" ) let lastMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUser", channelMetadataId: "LastChannel", + userMetadataId: "TestUser", channelMetadataId: "LastChannel", channel: lastChannel, updated: lastDate, eTag: "LastETag" ) let page = PubNubHashedPageBase(start: "NextPage", totalCount: 2) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.removeMemberships(uuid: "TestUser", channels: [firstMembership]) { result in + + pubnub.removeMemberships(userId: "TestUser", channels: [firstMembership]) { result in switch result { case let .success((memberships, nextPage)): XCTAssertEqual(memberships.compactMap { try? $0.transcode() }, [firstMembership, lastMembership]) @@ -238,8 +257,10 @@ extension ObjectsMembershipsRouterTests { extension ObjectsMembershipsRouterTests { func testFetchMembers_Router() { let router = ObjectsMembershipsRouter( - .fetchMembers(channelMetadataId: "TestUser", customFields: [], totalCount: false, - filter: nil, sort: [], limit: nil, start: nil, end: nil), + .fetchMembers( + channelMetadataId: "TestUser", customFields: [], totalCount: false, filter: nil, + sort: [], limit: nil, start: nil, end: nil + ), configuration: config ) @@ -250,22 +271,27 @@ extension ObjectsMembershipsRouterTests { func testFetchMembers_Router_ValidationError() { let router = ObjectsMembershipsRouter( - .fetchMembers(channelMetadataId: "", customFields: [], totalCount: false, - filter: nil, sort: [], limit: nil, start: nil, end: nil), + .fetchMembers( + channelMetadataId: "", customFields: [], totalCount: false, filter: nil, + sort: [], limit: nil, start: nil, end: nil + ), configuration: config ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testFetchMember_Success() { let expectation = self.expectation(description: "Fetch Members Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_members_success"]), - let uuidDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), - let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_members_success"]), + let uuidDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), + let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") else { return XCTFail("Could not create mock url session") } @@ -273,25 +299,27 @@ extension ObjectsMembershipsRouterTests { let firstUUID = PubNubUUIDMetadataBase( metadataId: "FirstUser", name: "First User", updated: uuidDate, eTag: "UserETag" ) - let lastUUID = PubNubUUIDMetadataBase(metadataId: "LastUser") - + let lastUUID = PubNubUUIDMetadataBase( + metadataId: "LastUser" + ) + let firstMembership = PubNubMembershipMetadataBase( - uuidMetadataId: firstUUID.metadataId, channelMetadataId: "TestChannel", + userMetadataId: firstUUID.metadataId, channelMetadataId: "TestChannel", status: "Test Status", - uuid: firstUUID, + user: firstUUID, updated: firstDate, eTag: "FirstETag" ) let lastMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "LastUser", channelMetadataId: "TestChannel", + userMetadataId: "LastUser", channelMetadataId: "TestChannel", status: "Test Status", - uuid: lastUUID, + user: lastUUID, custom: ["starred": true], updated: lastDate, eTag: "LastETag" ) let page = PubNubHashedPageBase(start: "NextPage", totalCount: 2) - let pubnub = PubNub(configuration: config, session: sessions.session) + pubnub.fetchMembers(channel: "TestChannel") { result in switch result { case let .success((memberships, nextPage)): @@ -318,14 +346,13 @@ extension ObjectsMembershipsRouterTests { } let testPage = PubNubHashedPageBase(start: "NextPage") - let pubnub = PubNub(configuration: config, session: sessions.session) + pubnub.fetchMembers(channel: "TestChannel") { result in switch result { case let .success((memberships, nextPage)): XCTAssertTrue(memberships.isEmpty) XCTAssertEqual(try? nextPage?.transcode(), testPage) - case let .failure(error): XCTFail("Fetch Memberships request failed with error: \(error.localizedDescription)") } @@ -341,9 +368,10 @@ extension ObjectsMembershipsRouterTests { extension ObjectsMembershipsRouterTests { func testMembersSet_Router() { let router = ObjectsMembershipsRouter( - .setMembers(channelMetadataId: "TestUUID", customFields: [], totalCount: true, - changes: .init(set: [], delete: []), - filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last"), + .setMembers( + channelMetadataId: "TestUUID", customFields: [], totalCount: true, changes: .init(set: [], delete: []), + filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last" + ), configuration: config ) @@ -354,23 +382,27 @@ extension ObjectsMembershipsRouterTests { func testMembersSet_Router_ValidationError() { let router = ObjectsMembershipsRouter( - .setMembers(channelMetadataId: "", customFields: [], totalCount: true, - changes: .init(set: [], delete: []), - filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last"), + .setMembers( + channelMetadataId: "", customFields: [], totalCount: true, changes: .init(set: [], delete: []), + filter: "filter", sort: ["sort"], limit: 100, start: "Next", end: "last" + ), configuration: config ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testMember_Set_Success() { let expectation = self.expectation(description: "Set Members Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_members_success"]), - let uuidDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), - let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_members_success"]), + let uuidDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), + let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") else { return XCTFail("Could not create mock url session") } @@ -378,25 +410,26 @@ extension ObjectsMembershipsRouterTests { let firstUUID = PubNubUUIDMetadataBase( metadataId: "FirstUser", name: "First User", updated: uuidDate, eTag: "UserETag" ) - let lastUUID = PubNubUUIDMetadataBase(metadataId: "LastUser") - + let lastUUID = PubNubUUIDMetadataBase( + metadataId: "LastUser" + ) let firstMembership = PubNubMembershipMetadataBase( - uuidMetadataId: firstUUID.metadataId, channelMetadataId: "TestChannel", + userMetadataId: firstUUID.metadataId, channelMetadataId: "TestChannel", status: "Test Status", - uuid: firstUUID, + user: firstUUID, updated: firstDate, eTag: "FirstETag" ) let lastMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "LastUser", channelMetadataId: "TestChannel", + userMetadataId: "LastUser", channelMetadataId: "TestChannel", status: "Test Status", - uuid: lastUUID, + user: lastUUID, custom: ["starred": true], updated: lastDate, eTag: "LastETag" ) let page = PubNubHashedPageBase(start: "NextPage", totalCount: 2) - let pubnub = PubNub(configuration: config, session: sessions.session) + pubnub.setMembers(channel: "TestChannel", uuids: [firstMembership]) { result in switch result { case let .success((memberships, nextPage)): @@ -414,10 +447,11 @@ extension ObjectsMembershipsRouterTests { func testMember_Remove_Success() { let expectation = self.expectation(description: "Remove Members Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_members_success"]), - let uuidDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), - let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_members_success"]), + let uuidDate = DateFormatter.iso8601.date(from: "2019-09-29T13:07:45.807503Z"), + let firstDate = DateFormatter.iso8601.date(from: "2019-10-02T18:07:52.858703Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-09-29T19:46:28.84402Z") else { return XCTFail("Could not create mock url session") } @@ -425,25 +459,26 @@ extension ObjectsMembershipsRouterTests { let firstUUID = PubNubUUIDMetadataBase( metadataId: "FirstUser", name: "First User", updated: uuidDate, eTag: "UserETag" ) - let lastUUID = PubNubUUIDMetadataBase(metadataId: "LastUser") - + let lastUUID = PubNubUUIDMetadataBase( + metadataId: "LastUser" + ) let firstMembership = PubNubMembershipMetadataBase( - uuidMetadataId: firstUUID.metadataId, channelMetadataId: "TestChannel", + userMetadataId: firstUUID.metadataId, channelMetadataId: "TestChannel", status: "Test Status", - uuid: firstUUID, + user: firstUUID, updated: firstDate, eTag: "FirstETag" ) let lastMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "LastUser", channelMetadataId: "TestChannel", + userMetadataId: "LastUser", channelMetadataId: "TestChannel", status: "Test Status", - uuid: lastUUID, + user: lastUUID, custom: ["starred": true], updated: lastDate, eTag: "LastETag" ) let page = PubNubHashedPageBase(start: "NextPage", totalCount: 2) - let pubnub = PubNub(configuration: config, session: sessions.session) + pubnub.setMembers(channel: "TestChannel", uuids: [firstMembership]) { result in switch result { case let .success((memberships, nextPage)): diff --git a/Tests/PubNubTests/Networking/Routers/ObjectsUUIDRouterTests.swift b/Tests/PubNubTests/Networking/Routers/ObjectsUUIDRouterTests.swift index 7ae7eba7..74baf968 100644 --- a/Tests/PubNubTests/Networking/Routers/ObjectsUUIDRouterTests.swift +++ b/Tests/PubNubTests/Networking/Routers/ObjectsUUIDRouterTests.swift @@ -22,8 +22,10 @@ final class ObjectsUUIDRouterTests: XCTestCase { extension ObjectsUUIDRouterTests { func testAll_Router() { let router = ObjectsUUIDRouter( - .all(customFields: true, totalCount: true, filter: "filter", - sort: ["sort"], limit: 100, start: "start", end: "end"), + .all( + include: [.custom], totalCount: true, filter: "filter", + sort: ["sort"], limit: 100, start: "start", end: "end" + ), configuration: config ) @@ -34,21 +36,26 @@ extension ObjectsUUIDRouterTests { func testAll_Router_ValidationError() { let router = ObjectsUUIDRouter( - .all(customFields: true, totalCount: true, filter: "filter", - sort: ["sort"], limit: 100, start: "start", end: "end"), + .all( + include: [.custom], totalCount: true, filter: "filter", + sort: ["sort"], limit: 100, start: "start", end: "end" + ), configuration: config ) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testAll_Success() { let expectation = self.expectation(description: "Fetch All Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_uuid_all_success"]), - let firstDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:55.44977Z"), - let lastDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:59.326105Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_uuid_all_success"]), + let firstDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:55.44977Z"), + let lastDate = DateFormatter.iso8601.date(from: "2019-08-18T11:25:59.326105Z") else { return XCTFail("Could not create mock url session") } @@ -62,10 +69,11 @@ extension ObjectsUUIDRouterTests { custom: ["string": "String", "int": 1, "double": 1.1, "bool": true], updated: lastDate, eTag: "AeH55Y3T0a78Ew" ) + let page = PubNubHashedPageBase(start: "NextPage", end: "PrevPage", totalCount: 2) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.allUUIDMetadata { result in + + pubnub.allUserMetadata { result in switch result { case let .success((metadataObjects, nextPage)): XCTAssertEqual(metadataObjects.compactMap { try? $0.transcode() }, [firstTest, lastTest]) @@ -89,7 +97,7 @@ extension ObjectsUUIDRouterTests { let testPage = PubNubHashedPageBase(start: "NextPage") let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.allUUIDMetadata { result in + pubnub.allUserMetadata { result in switch result { case let .success((metadataObjects, nextPage)): XCTAssertTrue(metadataObjects.isEmpty) @@ -111,7 +119,7 @@ extension ObjectsUUIDRouterTests { } let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.allUUIDMetadata { result in + pubnub.allUserMetadata { result in switch result { case .success: XCTFail("Request should fail.") @@ -132,7 +140,7 @@ extension ObjectsUUIDRouterTests { } let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.allUUIDMetadata { result in + pubnub.allUserMetadata { result in switch result { case .success: XCTFail("Request should fail.") @@ -153,7 +161,7 @@ extension ObjectsUUIDRouterTests { } let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.allUUIDMetadata { result in + pubnub.allUserMetadata { result in switch result { case .success: XCTFail("Request should fail.") @@ -174,7 +182,7 @@ extension ObjectsUUIDRouterTests { } let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.allUUIDMetadata { result in + pubnub.allUserMetadata { result in switch result { case .success: XCTFail("Request should fail.") @@ -192,8 +200,10 @@ extension ObjectsUUIDRouterTests { extension ObjectsUUIDRouterTests { func testFetch_Router() { - let router = ObjectsUUIDRouter(.fetch(metadataId: "OtherUser", customFields: true), - configuration: config) + let router = ObjectsUUIDRouter( + .fetch(metadataId: "OtherUser", include: [.custom]), + configuration: config + ) XCTAssertEqual(router.endpoint.description, "Fetch Metadata for a UUID") XCTAssertEqual(router.category, "Fetch Metadata for a UUID") @@ -201,17 +211,20 @@ extension ObjectsUUIDRouterTests { } func testFetch_Router_ValidationError() { - let router = ObjectsUUIDRouter(.fetch(metadataId: "", customFields: true), configuration: config) + let router = ObjectsUUIDRouter(.fetch(metadataId: "", include: [.custom]), configuration: config) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testFetch_Success() { let expectation = self.expectation(description: "Fetch Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_uuid_fetch_success"]), - let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_uuid_fetch_success"]), + let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") else { return XCTFail("Could not create mock url session") } @@ -223,8 +236,12 @@ extension ObjectsUUIDRouterTests { updated: firstDate, eTag: "AfuB8q7/s+qCwAE" ) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchUserMetadata("TestUser") { result in switch result { case let .success(responseObject): XCTAssertEqual(try? responseObject.transcode(), testObject) @@ -244,8 +261,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -265,8 +286,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -286,8 +311,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -307,8 +336,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -328,8 +361,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.fetch(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.fetchUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -347,7 +384,7 @@ extension ObjectsUUIDRouterTests { extension ObjectsUUIDRouterTests { func testSet_Router() { - let router = ObjectsUUIDRouter(.set(metadata: testUser, customFields: true), configuration: config) + let router = ObjectsUUIDRouter(.set(metadata: testUser, include: [.custom]), configuration: config) XCTAssertEqual(router.endpoint.description, "Set Metadata for a UUID") XCTAssertEqual(router.category, "Set Metadata for a UUID") @@ -355,17 +392,20 @@ extension ObjectsUUIDRouterTests { } func testSet_Router_ValidationError() { - let router = ObjectsUUIDRouter(.set(metadata: invalidUser, customFields: true), configuration: config) + let router = ObjectsUUIDRouter(.set(metadata: invalidUser, include: [.custom]), configuration: config) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testSet_Success() { let expectation = self.expectation(description: "Create Endpoint Expectation") - guard let sessions = try? MockURLSession.mockSession(for: ["objects_uuid_fetch_success"]), - let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") + guard + let sessions = try? MockURLSession.mockSession(for: ["objects_uuid_fetch_success"]), + let firstDate = DateFormatter.iso8601.date(from: "2019-09-03T02:47:38.609257Z") else { return XCTFail("Could not create mock url session") } @@ -376,8 +416,12 @@ extension ObjectsUUIDRouterTests { updated: firstDate, eTag: "AfuB8q7/s+qCwAE" ) - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case let .success(responseObject): XCTAssertEqual(try? responseObject.transcode(), testObject) @@ -397,8 +441,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case .success: XCTFail("Request should fail.") @@ -418,8 +466,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case .success: XCTFail("Request should fail.") @@ -439,8 +491,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case .success: XCTFail("Request should fail.") @@ -460,8 +516,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case .success: XCTFail("Request should fail.") @@ -481,8 +541,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case .success: XCTFail("Request should fail.") @@ -502,8 +566,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case .success: XCTFail("Request should fail.") @@ -523,8 +591,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.set(uuid: testUser) { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.setUserMetadata(testUser) { result in switch result { case .success: XCTFail("Request should fail.") @@ -552,8 +624,10 @@ extension ObjectsUUIDRouterTests { func testRemove_Router_ValidationError() { let router = ObjectsUUIDRouter(.remove(metadataId: ""), configuration: config) - XCTAssertNotEqual(router.validationError?.pubNubError, - PubNubError(.invalidEndpointType, router: router)) + XCTAssertNotEqual( + router.validationError?.pubNubError, + PubNubError(.invalidEndpointType, router: router) + ) } func testRemove_Success() { @@ -563,8 +637,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.remove(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.removeUserMetadata("TestUser") { result in switch result { case let .success(metadataId): XCTAssertEqual(metadataId, "TestUser") @@ -584,8 +662,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.remove(uuid: nil) { [weak self] result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.removeUserMetadata(nil) { [weak self] result in switch result { case let .success(metadataId): XCTAssertEqual(metadataId, self?.config.uuid) @@ -605,8 +687,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.remove(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.removeUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -626,8 +712,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.remove(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.removeUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -647,8 +737,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.remove(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.removeUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -668,8 +762,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.remove(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.removeUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") @@ -689,8 +787,12 @@ extension ObjectsUUIDRouterTests { return XCTFail("Could not create mock url session") } - let pubnub = PubNub(configuration: config, session: sessions.session) - pubnub.remove(uuid: "TestUser") { result in + let pubnub = PubNub( + configuration: config, + session: sessions.session + ) + + pubnub.removeUserMetadata("TestUser") { result in switch result { case .success: XCTFail("Request should fail.") diff --git a/Tests/PubNubTests/Networking/Routers/SubscribeRouterTests.swift b/Tests/PubNubTests/Networking/Routers/SubscribeRouterTests.swift index d380063d..479fc12e 100644 --- a/Tests/PubNubTests/Networking/Routers/SubscribeRouterTests.swift +++ b/Tests/PubNubTests/Networking/Routers/SubscribeRouterTests.swift @@ -567,10 +567,10 @@ extension SubscribeRouterTests { let pubnub = PubNub(configuration: configuration) let testMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUserID", + userMetadataId: "TestUserID", channelMetadataId: "TestSpaceID", status: "Test Status", - uuid: uuid, + user: uuid, channel: channel, custom: ["something": true], updated: DateFormatter.iso8601.date(from: "2019-10-05T23:35:38.457823306Z"), @@ -632,8 +632,8 @@ extension SubscribeRouterTests { let pubnub = PubNub(configuration: configuration) let testMembership = PubNubMembershipMetadataBase( - uuidMetadataId: "TestUserID", channelMetadataId: "TestSpaceID", - uuid: uuid, channel: channel, + userMetadataId: "TestUserID", channelMetadataId: "TestSpaceID", + user: uuid, channel: channel, updated: DateFormatter.iso8601.date(from: "2019-10-05T23:35:38.457823306Z"), eTag: "TestETag" )