Пример #1
0
        public Task TestUnsubscribe()
        {
            List <string> channels = new List <string>();

            AVPushPlugins.Instance = new AVPushPlugins {
                PushChannelsController = GetMockedPushChannelsController(channels)
            };

            channels.Add("test");
            return(AVPush.UnsubscribeAsync("test").ContinueWith(t => {
                Assert.IsTrue(t.IsCompleted);
                Assert.IsFalse(t.IsFaulted);

                return AVPush.UnsubscribeAsync(new List <string> {
                    { "test" }
                });
            }).ContinueWith(t => {
                Assert.IsTrue(t.IsCompleted);
                Assert.IsFalse(t.IsFaulted);

                CancellationTokenSource cts = new CancellationTokenSource();
                return AVPush.UnsubscribeAsync(new List <string> {
                    { "test" }
                }, cts.Token);
            }).ContinueWith(t => {
                Assert.IsTrue(t.IsCompleted);
                Assert.IsFalse(t.IsFaulted);
            }));
        }
Пример #2
0
        public Task TestSendPush()
        {
            MutableAVState state = new MutableAVState {
                Query = AVInstallation.Query
            };

            AVPush thePush = new AVPush();

            AVPushPlugins.Instance = new AVPushPlugins {
                PushController = GetMockedPushController(state)
            };

            thePush.Alert = "Alert";
            state.Alert   = "Alert";

            return(thePush.SendAsync().ContinueWith(t => {
                Assert.True(t.IsCompleted);
                Assert.False(t.IsFaulted);

                thePush.Channels = new List <string> {
                    { "channel" }
                };
                state.Channels = new List <string> {
                    { "channel" }
                };

                return thePush.SendAsync();
            }).Unwrap().ContinueWith(t => {
                Assert.True(t.IsCompleted);
                Assert.False(t.IsFaulted);

                AVQuery <AVInstallation> query = new AVQuery <AVInstallation>("aClass");
                thePush.Query = query;
                state.Query = query;

                return thePush.SendAsync();
            }).Unwrap().ContinueWith(t => {
                Assert.True(t.IsCompleted);
                Assert.False(t.IsFaulted);
            }));
        }