public void Init() { if (!PubnubCommon.PAMEnabled) { return; } receivedGrantMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, PubnubCommon.SecretKey, "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "GrantRequestUnitTest"; unitTest.TestCaseName = "Init"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; mreGrant = new ManualResetEvent(false); pubnub.GrantAccess<string>(channel, true, true, 20, ThenPushInitializeShouldReturnGrantMessage, DummyErrorCallback); mreGrant.WaitOne(60 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedGrantMessage, "WhenPushIsRequested Grant access failed."); }
public void ThenPublishMpnsCycleTileShouldReturnSuccess() { receivedSuccessMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); string channel = "hello_my_channel"; PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenPushIsRequested"; unitTest.TestCaseName = "ThenPublishMpnsCycleTileShouldReturnSuccess"; pubnub.PubnubUnitTest = unitTest; mrePublish = new ManualResetEvent(false); MpnsCycleTileNotification tile = new MpnsCycleTileNotification(); tile.title = "front title"; tile.count = 2; tile.images = new string[] { "Assets/Tiles/pubnub1.png", "Assets/Tiles/pubnub2.png", "Assets/Tiles/pubnub3.png", "Assets/Tiles/pubnub4.png" }; Dictionary<string, object> dicTile = new Dictionary<string, object>(); dicTile.Add("pn_mpns", tile); pubnub.EnableDebugForPushPublish = true; pubnub.Publish<string>(channel, dicTile, PublishCallbackResult, DummyErrorCallback); mrePublish.WaitOne(60 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedSuccessMessage, "Cycle Tile Publish Failed"); }
public void ThenChannelGroupLevelWithReadShouldReturnSuccess() { currentUnitTestCase = "ThenChannelGroupLevelWithReadShouldReturnSuccess"; receivedGrantMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, PubnubCommon.SecretKey, "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenGrantIsRequested"; unitTest.TestCaseName = "ThenChannelGroupLevelWithReadShouldReturnSuccess"; pubnub.PubnubUnitTest = unitTest; string channelgroup = "hello_my_group"; if (PubnubCommon.PAMEnabled) { grantManualEvent = new ManualResetEvent(false); pubnub.ChannelGroupGrantAccess<string>(channelgroup, true, false, 5, AccessToChannelLevelCallback, DummyErrorCallback); Task.Delay(1000); grantManualEvent.WaitOne(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedGrantMessage, "WhenGrantIsRequested -> ThenChannelGroupLevelWithReadShouldReturnSuccess failed."); } else { Assert.Ignore("PAM Not Enabled for WhenGrantIsRequested -> ThenChannelGroupLevelWithReadShouldReturnSuccess."); } }
public void ThenAddChannelShouldReturnSuccess() { currentUnitTestCase = "ThenAddChannelShouldReturnSuccess"; receivedChannelGroupMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, PubnubCommon.SecretKey, "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenChannelGroupIsRequested"; unitTest.TestCaseName = "ThenAddChannelShouldReturnSuccess"; pubnub.PubnubUnitTest = unitTest; channelGroupManualEvent = new ManualResetEvent(false); string channelName = "hello_my_channel"; pubnub.AddChannelsToChannelGroup<string>(new string[] { channelName }, channelGroupName, ChannelGroupCRUDCallback, DummyErrorCallback); Task.Delay(1000); channelGroupManualEvent.WaitOne(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedChannelGroupMessage, "WhenChannelGroupIsRequested -> ThenAddChannelShouldReturnSuccess failed."); }
public void ThenWithProxyItShouldReturnTimeStamp() { bool proxyConfigured = false; PubnubProxy proxy = new PubnubProxy(); proxy.ProxyServer = "test.pandu.com"; proxy.ProxyPort = 808; proxy.ProxyUserName = "******"; proxy.ProxyPassword = "******"; Pubnub pubnub = new Pubnub("demo", "demo", "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenGetRequestServerTime"; unitTest.TestCaseName = "ThenWithProxyItShouldReturnTimeStamp"; pubnub.PubnubUnitTest = unitTest; if (proxyConfigured) { pubnub.Proxy = proxy; pubnub.Time<string>(ReturnProxyPresenceTimeStampCallback, DummyErrorCallback); mreProxy.WaitOne(310 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(timeReceivedWhenProxy, "time() Failed"); } else { Assert.Ignore("Proxy setup not configured. After setup Set proxyConfigured to true"); } }
public void ThenPublishMpnsToastShouldReturnSuccess() { receivedSuccessMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); string channel = "hello_my_channel"; PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenPushIsRequested"; unitTest.TestCaseName = "ThenPublishMpnsToastShouldReturnSuccess"; pubnub.PubnubUnitTest = unitTest; mrePublish = new ManualResetEvent(false); MpnsToastNotification toast = new MpnsToastNotification(); toast.text1 = "hardcode message"; Dictionary<string, object> dicToast = new Dictionary<string, object>(); dicToast.Add("pn_mpns", toast); pubnub.EnableDebugForPushPublish = true; pubnub.Publish<string>(channel, dicToast, PublishCallbackResult, DummyErrorCallback); mrePublish.WaitOne(60 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedSuccessMessage, "Toast Publish Failed"); }
public void DetailedHistoryStartWithReverseTrue() { expectedCountAtStartTimeWithReverseTrue = 0; messageStartReverseTrue = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenDetailedHistoryIsRequested"; unitTest.TestCaseName = "DetailedHistoryStartWithReverseTrue"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; startTimeWithReverseTrue = Pubnub.TranslateDateTimeToPubnubUnixNanoSeconds(new DateTime(2012, 12, 1)); for (int index = 0; index < 10; index++) { pubnub.Publish<string>(channel, string.Format("DetailedHistoryStartTimeWithReverseTrue {0}", index), DetailedHistorySamplePublishCallback, DummyErrorCallback); mrePublishStartReverseTrue.WaitOne(); } Task.Delay(2000); pubnub.DetailedHistory<string>(channel, startTimeWithReverseTrue, DetailedHistoryStartWithReverseTrueCallback, DummyErrorCallback, true); Task.Delay(2000); mreMessageStartReverseTrue.WaitOne(310 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(messageStartReverseTrue, "Detailed History with Start and Reverse True Failed"); }
public void ThenSubscribeShouldReturnReceivedMessage() { receivedMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenSubscribedToAChannel"; unitTest.TestCaseName = "ThenSubscribeShouldReturnReceivedMessage"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; pubnub.Subscribe<string>(channel, ReceivedMessageCallbackWhenSubscribed, SubscribeDummyMethodForConnectCallback, DummyErrorCallback); Task.Delay(1000); pubnub.Publish<string>(channel, "Test for WhenSubscribedToAChannel ThenItShouldReturnReceivedMessage", dummyPublishCallback, DummyErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; mePublish.WaitOne(manualResetEventsWaitTimeout); meSubscribeNoConnect.WaitOne(manualResetEventsWaitTimeout); pubnub.Unsubscribe<string>(channel, dummyUnsubscribeCallback, SubscribeDummyMethodForConnectCallback, UnsubscribeDummyMethodForDisconnectCallback, DummyErrorCallback); meUnsubscribe.WaitOne(manualResetEventsWaitTimeout); pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedMessage, "WhenSubscribedToAChannel --> ThenItShouldReturnReceivedMessage Failed"); }
public void ThenDuplicateChannelShouldReturnAlreadySubscribed() { receivedAlreadySubscribedMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenSubscribedToAChannel"; unitTest.TestCaseName = "ThenDuplicateChannelShouldReturnAlreadySubscribed"; pubnub.PubnubUnitTest = unitTest; manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; string channel = "hello_my_channel"; pubnub.Subscribe<string>(channel, DummyMethodDuplicateChannelUserCallback1, DummyMethodDuplicateChannelConnectCallback, DummyErrorCallback); Task.Delay(100); pubnub.Subscribe<string>(channel, DummyMethodDuplicateChannelUserCallback2, DummyMethodDuplicateChannelConnectCallback, DuplicateChannelErrorCallback); meAlreadySubscribed.WaitOne(manualResetEventsWaitTimeout); pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedAlreadySubscribedMessage, "WhenSubscribedToAChannel --> ThenDuplicateChannelShouldReturnAlreadySubscribed Failed"); }
public void ThenChannelLevelShouldReturnSuccess() { currentUnitTestCase = "ThenChannelLevelShouldReturnSuccess"; receivedAuditMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, PubnubCommon.SecretKey, "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAuditIsRequested"; unitTest.TestCaseName = "ThenChannelLevelShouldReturnSuccess"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; if (PubnubCommon.PAMEnabled) { auditManualEvent = new ManualResetEvent(false); pubnub.AuditAccess<string>(channel, AccessToChannelLevelCallback, DummyErrorCallback); Task.Delay(1000); auditManualEvent.WaitOne(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedAuditMessage, "WhenAuditIsRequested -> ThenChannelLevelShouldReturnSuccess failed."); } else { Assert.Inconclusive("PAM Not Enabled for WhenAuditIsRequested -> ThenChannelLevelShouldReturnSuccess"); } }
public void ThenMultiSubscribeShouldReturnConnectStatus() { currentUnitTestCase = "ThenMultiSubscribeShouldReturnConnectStatus"; receivedMessage = false; receivedChannelGroupMessage1 = false; receivedChannelGroupMessage2 = false; expectedCallbackResponses = 2; currentCallbackResponses = 0; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); pubnub.SessionUUID = "myuuid"; PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenSubscribedToAChannelGroup"; unitTest.TestCaseName = "ThenMultiSubscribeShouldReturnConnectStatus"; pubnub.PubnubUnitTest = unitTest; manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 6000 : 310 * 1000; channelGroupName1 = "hello_my_group1"; channelGroupName2 = "hello_my_group2"; string channelName1 = "hello_my_channel1"; string channelName2 = "hello_my_channel2"; string channel1 = "hello_my_channel1"; subscribeManualEvent = new ManualResetEvent(false); pubnub.AddChannelsToChannelGroup<string>(new string[] { channelName1 }, channelGroupName1, ChannelGroupAddCallback, DummySubscribeErrorCallback); Task.Delay(1000); subscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); subscribeManualEvent = new ManualResetEvent(false); pubnub.AddChannelsToChannelGroup<string>(new string[] { channelName2 }, channelGroupName2, ChannelGroupAddCallback, DummySubscribeErrorCallback); Task.Delay(1000); subscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); if (receivedChannelGroupMessage1 && receivedChannelGroupMessage2) { subscribeManualEvent = new ManualResetEvent(false); pubnub.Subscribe<string>("", string.Format("{0},{1}", channelGroupName1, channelGroupName2), ReceivedMessageCallbackWhenSubscribed, SubscribeConnectCallback, DummySubscribeErrorCallback); subscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedMessage, "WhenSubscribedToAChannelGroup --> ThenMultiSubscribeShouldReturnConnectStatusFailed"); } else { pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedChannelGroupMessage1 && receivedChannelGroupMessage2, "WhenSubscribedToAChannelGroup --> ThenMultiSubscribeShouldReturnConnectStatusFailed"); } }
public void IfGlobalHereNowIsCalledThenItShouldReturnInfo() { receivedGlobalHereNowMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAClientIsPresented"; unitTest.TestCaseName = "IfGlobalHereNowIsCalledThenItShouldReturnInfo"; pubnub.PubnubUnitTest = unitTest; pubnub.GlobalHereNow<string>(true, true, ThenGlobalHereNowShouldReturnMessage, DummyErrorCallback); globalHereNowManualEvent.WaitOne(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedGlobalHereNowMessage, "global_here_now message not received"); }
public void ThenSubscribeShouldReturnReceivedMessage() { currentUnitTestCase = "ThenSubscribeShouldReturnReceivedMessage"; receivedMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); pubnub.SessionUUID = "myuuid"; PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenSubscribedToAChannelGroup"; unitTest.TestCaseName = "ThenSubscribeShouldReturnReceivedMessage"; pubnub.PubnubUnitTest = unitTest; channelGroupName = "hello_my_group"; string channelName = "hello_my_channel"; subscribeManualEvent = new ManualResetEvent(false); pubnub.AddChannelsToChannelGroup<string>(new string[] { channelName }, channelGroupName, ChannelGroupAddCallback, DummySubscribeErrorCallback); subscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); if (receivedChannelGroupMessage) { subscribeManualEvent = new ManualResetEvent(false); pubnub.Subscribe<string>("", channelGroupName, ReceivedMessageCallbackWhenSubscribed, SubscribeConnectCallback, DummySubscribeErrorCallback); Task.Delay(1000); pubnub.Publish<string>(channelName, "Test for WhenSubscribedToAChannelGroup ThenItShouldReturnReceivedMessage", dummyPublishCallback, DummyPublishErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; mePublish.WaitOne(manualResetEventsWaitTimeout); subscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); subscribeManualEvent = new ManualResetEvent(false); pubnub.Unsubscribe<string>("", channelGroupName, dummyUnsubscribeCallback, SubscribeConnectCallback, UnsubscribeDummyMethodForDisconnectCallback, DummySubscribeErrorCallback); subscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedMessage, "WhenSubscribedToAChannelGroup --> ThenItShouldReturnReceivedMessage Failed"); } else { pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedChannelGroupMessage, "WhenSubscribedToAChannelGroup --> ThenItShouldReturnReceivedMessage Failed"); } }
public void ThenItShouldReturnTimeStamp() { Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenGetRequestServerTime"; unitTest.TestCaseName = "ThenItShouldReturnTimeStamp"; pubnub.PubnubUnitTest = unitTest; pubnub.Time<string>(ReturnTimeStampCallback, DummyErrorCallback); mreTime.WaitOne(310 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(timeReceived, "time() Failed"); }
public void ThenShouldReturnUnsubscribedMessage() { currentUnitTestCase = "ThenShouldReturnUnsubscribedMessage"; receivedMessage = false; receivedChannelGroupMessage = false; receivedChannelGroupConnectedMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); pubnub.SessionUUID = "myuuid"; PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenUnsubscribedToAChannelGroup"; unitTest.TestCaseName = "ThenShouldReturnUnsubscribedMessage"; pubnub.PubnubUnitTest = unitTest; channelGroupName = "hello_my_group"; string channelName = "hello_my_channel"; unsubscribeManualEvent = new ManualResetEvent(false); pubnub.AddChannelsToChannelGroup<string>(new string[] { channelName }, channelGroupName, ChannelGroupAddCallback, DummySubscribeErrorCallback); unsubscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); if (receivedChannelGroupMessage) { unsubscribeManualEvent = new ManualResetEvent(false); pubnub.Subscribe<string>("", channelGroupName, DummyMethodChannelSubscribeUserCallback, DummyMethodChannelSubscribeConnectCallback, DummyErrorCallback); Task.Delay(1000); unsubscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); if (receivedChannelGroupConnectedMessage) { unsubscribeManualEvent = new ManualResetEvent(false); pubnub.Unsubscribe<string>("", channelGroupName, DummyMethodUnsubscribeChannelUserCallback, DummyMethodUnsubscribeChannelConnectCallback, DummyMethodUnsubscribeChannelDisconnectCallback, DummyErrorCallback); unsubscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); } pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedMessage, "WhenUnsubscribedToAChannelGroup --> ThenShouldReturnUnsubscribedMessage Failed"); } else { Assert.IsTrue(receivedChannelGroupMessage, "WhenUnsubscribedToAChannelGroup --> ThenShouldReturnUnsubscribedMessage Failed"); } }
public void DetailHistoryCount10ReturnsRecords() { messageReceived = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenDetailedHistoryIsRequested"; unitTest.TestCaseName = "DetailHistoryCount10ReturnsRecords"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; pubnub.DetailedHistory<string>(channel, 10, DetailedHistoryCount10Callback, DummyErrorCallback); mreDetailedHistory.WaitOne(310 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(messageReceived, "Detailed History Failed"); }
public void Init() { if (!PubnubCommon.PAMEnabled) return; receivedGrantMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, PubnubCommon.SecretKey, "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "GrantRequestUnitTest"; unitTest.TestCaseName = "Init3"; pubnub.PubnubUnitTest = unitTest; pubnub.ChannelGroupGrantAccess<string>(channelGroupName, true, true, 20, ThenChannelGroupInitializeShouldReturnGrantMessage, DummySubscribeErrorCallback); Task.Delay(1000); grantManualEvent.WaitOne(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedGrantMessage, "WhenSubscribedToAChannelGroup Grant access failed."); }
public void ThenNoExistChannelShouldReturnNotSubscribed() { receivedNotSubscribedMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenUnsubscribedToAChannel"; unitTest.TestCaseName = "ThenNoExistChannelShouldReturnNotSubscribed"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; pubnub.Unsubscribe<string>(channel, DummyMethodNoExistChannelUnsubscribeChannelUserCallback, DummyMethodNoExistChannelUnsubscribeChannelConnectCallback, DummyMethodNoExistChannelUnsubscribeChannelDisconnectCallback1, NoExistChannelErrorCallback); meNotSubscribed.WaitOne(); pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedNotSubscribedMessage, "WhenUnsubscribedToAChannel --> ThenNoExistChannelShouldReturnNotSubscribed Failed"); }
public void Init() { if (!PubnubCommon.PAMEnabled) return; receivedGrantMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, PubnubCommon.SecretKey, "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "GrantRequestUnitTest"; unitTest.TestCaseName = "Init"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel,hello_my_channel-pnpres"; pubnub.GrantAccess<string>(channel, true, true, 20, ThenPresenceInitializeShouldReturnGrantMessage, DummyErrorCallback); Task.Delay(1000); grantManualEvent.WaitOne(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedGrantMessage, "WhenAClientIsPresent Grant access failed."); }
public void ThenPresenceShouldReturnReceivedMessage() { receivedPresenceMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAClientIsPresented"; unitTest.TestCaseName = "ThenPresenceShouldReturnReceivedMessage"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; pubnub.Presence<string>(channel, ThenPresenceShouldReturnMessage, PresenceDummyMethodForConnectCallback, DummyErrorCallback); Task.Delay(1000); //since presence expects from stimulus from sub/unsub... pubnub.Subscribe<string>(channel, DummyMethodForSubscribe, SubscribeDummyMethodForConnectCallback, DummyErrorCallback); Task.Delay(1000); subscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); if (!unitTest.EnableStubTest) { pubnub.Unsubscribe<string>(channel, DummyMethodForUnSubscribe, UnsubscribeDummyMethodForConnectCallback, UnsubscribeDummyMethodForDisconnectCallback, DummyErrorCallback); Task.Delay(1000); unsubscribeManualEvent.WaitOne(manualResetEventsWaitTimeout); } presenceManualEvent.WaitOne(manualResetEventsWaitTimeout); pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedPresenceMessage, "Presence message not received"); }
public void ThenUnencryptPublishShouldReturnSuccessCodeAndInfo() { isUnencryptPublished = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "ThenUnencryptPublishShouldReturnSuccessCodeAndInfo"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; string message = messageForUnencryptPublish; pubnub.Publish<string>(channel, message, ReturnSuccessUnencryptPublishCodeCallback, DummyErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; mreUnencryptedPublish.WaitOne(manualResetEventsWaitTimeout); if (!isUnencryptPublished) { pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isUnencryptPublished, "Unencrypt Publish Failed"); } else { Task.Delay(1000); pubnub.DetailedHistory<string>(channel, -1, unEncryptPublishTimetoken, -1, false, CaptureUnencryptDetailedHistoryCallback, DummyErrorCallback); mreUnencryptDetailedHistory.WaitOne(manualResetEventsWaitTimeout); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isUnencryptDetailedHistory, "Unable to match the successful unencrypt Publish"); } }
public void ThenPublishKeyShouldNotBeEmpty() { Pubnub pubnub = new Pubnub("", PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "ThenPublishKeyShouldNotBeEmpty"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; string message = "Pubnub API Usage Example"; pubnub.Publish<string>(channel, message, null, DummyErrorCallback); }
public void ThenOptionalSecretKeyShouldBeProvidedInConstructor() { isPublished2 = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "key"); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "ThenOptionalSecretKeyShouldBeProvidedInConstructor"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; string message = "Pubnub API Usage Example"; pubnub.Publish<string>(channel, message, ReturnSecretKeyPublishCallback, DummyErrorCallback); mreOptionalSecretKeyPublish.WaitOne(310 * 1000); Assert.IsTrue(isPublished2, "Publish Failed with secret key"); }
public void ThenLargeMessageShoudFailWithMessageTooLargeInfo() { isLargeMessagePublished = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "ThenLargeMessageShoudFailWithMessageTooLargeInfo"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; string message = messageLarge32K;//.Substring(0, 1320); pubnub.Publish<string>(channel, message, DummyPublishMessageTooLargeInfoCallback, ReturnPublishMessageTooLargeErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; mreLaregMessagePublish.WaitOne(manualResetEventsWaitTimeout); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isLargeMessagePublished, "Message Too Large is not failing as expected."); }
public void ThenEncryptObjectPublishShouldReturnSuccessCodeAndInfo() { isEncryptObjectPublished = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "enigma", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "ThenEncryptObjectPublishShouldReturnSuccessCodeAndInfo"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; object message = new SecretCustomClass(); messageObjectForEncryptPublish = JsonConvert.SerializeObject(message); pubnub.Publish<string>(channel, message, ReturnSuccessEncryptObjectPublishCodeCallback, DummyErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; mreEncryptObjectPublish.WaitOne(manualResetEventsWaitTimeout); if (!isEncryptObjectPublished) { pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isEncryptObjectPublished, "Encrypt Object Publish Failed"); } else { Task.Delay(1000); pubnub.DetailedHistory<string>(channel, -1, encryptObjectPublishTimetoken, -1, false, CaptureEncryptObjectDetailedHistoryCallback, DummyErrorCallback); mreEncryptObjectDetailedHistory.WaitOne(manualResetEventsWaitTimeout); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isEncryptObjectDetailedHistory, "Unable to match the successful encrypt object Publish"); } }
public void ThenDisableJsonEncodeShouldSendSerializedObjectMessage() { isSerializedObjectMessagePublished = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); pubnub.EnableJsonEncodingForPublish = false; PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "ThenDisableJsonEncodeShouldSendSerializedObjectMessage"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; object message = "{\"operation\":\"ReturnData\",\"channel\":\"Mobile1\",\"sequenceNumber\":0,\"data\":[\"ping 1.0.0.1\"]}"; serializedObjectMessageForPublish = message.ToString(); pubnub.Publish<string>(channel, message, ReturnSuccessSerializedObjectMessageForPublishCallback, DummyErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; mreSerializedObjectMessageForPublish.WaitOne(manualResetEventsWaitTimeout); if (!isSerializedObjectMessagePublished) { pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isSerializedObjectMessagePublished, "Serialized Object Message Publish Failed"); } else { pubnub.DetailedHistory<string>(channel, -1, serializedMessagePublishTimetoken, -1, false, CaptureSerializedMessagePublishDetailedHistoryCallback, DummyErrorCallback); mreSerializedMessagePublishDetailedHistory.WaitOne(manualResetEventsWaitTimeout); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isSerializedObjectMessageDetailedHistory, "Unable to match the successful serialized object message Publish"); } }
public void DetailHistoryWithNullKeysReturnsError() { currentTestCase = "DetailHistoryWithNullKeysReturnsError"; messageReceived = false; Pubnub pubnub = new Pubnub(null, null, null, null, false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenDetailedHistoryIsRequested"; unitTest.TestCaseName = "DetailHistoryWithNullKeysReturnsError"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; mreDetailedHistory = new ManualResetEvent(false); pubnub.DetailedHistory<string>(channel, -1, -1, 10, true, DetailHistoryWithNullKeyseDummyCallback, DummyErrorCallback); mreDetailedHistory.WaitOne(310 * 1000); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(messageReceived, "Detailed History With Null Keys Failed"); }
public void IfSSLNotProvidedThenDefaultShouldBeFalse() { isPublished3 = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, ""); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "IfSSLNotProvidedThenDefaultShouldBeFalse"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; string message = "Pubnub API Usage Example"; pubnub.Publish<string>(channel, message, ReturnNoSSLDefaultFalseCallback, DummyErrorCallback); mreNoSslPublish.WaitOne(310 * 1000); Assert.IsTrue(isPublished3, "Publish Failed with no SSL"); }
public void ThenComplexMessageObjectShouldReturnSuccessCodeAndInfo() { isComplexObjectPublished = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenAMessageIsPublished"; unitTest.TestCaseName = "ThenComplexMessageObjectShouldReturnSuccessCodeAndInfo"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; object message = new PubnubDemoObject(); messageComplexObjectForPublish = pubnub.JsonPluggableLibrary.SerializeToJsonString(message); pubnub.Publish<string>(channel, message, ReturnSuccessComplexObjectPublishCodeCallback, DummyErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; mreComplexObjectPublish.WaitOne(manualResetEventsWaitTimeout); if (!isComplexObjectPublished) { pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isComplexObjectPublished, "Complex Object Publish Failed"); } else { pubnub.DetailedHistory<string>(channel, -1, complexObjectPublishTimetoken, -1, false, CaptureComplexObjectDetailedHistoryCallback, DummyErrorCallback); mreComplexObjectDetailedHistory.WaitOne(manualResetEventsWaitTimeout); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(isComplexObjectDetailedHistory, "Unable to match the successful unencrypt object Publish"); } }
public void ThenSubscribeShouldReturnConnectStatus() { receivedConnectMessage = false; Pubnub pubnub = new Pubnub(PubnubCommon.PublishKey, PubnubCommon.SubscribeKey, "", "", false); PubnubUnitTest unitTest = new PubnubUnitTest(); unitTest.TestClassName = "WhenSubscribedToAChannel"; unitTest.TestCaseName = "ThenSubscribeShouldReturnConnectStatus"; pubnub.PubnubUnitTest = unitTest; string channel = "hello_my_channel"; pubnub.Subscribe<string>(channel, ReceivedMessageCallbackYesConnect, ConnectStatusCallback, DummyErrorCallback); manualResetEventsWaitTimeout = (unitTest.EnableStubTest) ? 1000 : 310 * 1000; meSubscribeYesConnect.WaitOne(manualResetEventsWaitTimeout); pubnub.EndPendingRequests(); pubnub.PubnubUnitTest = null; pubnub = null; Assert.IsTrue(receivedConnectMessage, "WhenSubscribedToAChannel --> ThenSubscribeShouldReturnConnectStatus Failed"); }