Example #1
0
        public void CanHandleImPingMessages()
        {
            var ims = new List<DirectMessageChannel>
            {
                new DirectMessageChannel { Id = "IMID" }
            };

            var mockState = new Mock<IBotState>();
            mockState.Setup(m => m.Ims).Returns(ims).Verifiable();

            var message = new PlainMessage
            {
                Type = EventType.Message,
                Subtype = MessageSubType.PlainMessage,
                Channel = "IMID",
                Text = "ping"
            };

            var handler = new UserPingHandler();
            handler.BotState = mockState.Object;

            var result = handler.CanHandle(message);

            Assert.True(result);
        }
Example #2
0
        public void CanHandleImPingMessages()
        {
            var ims = new List <DirectMessageChannel>
            {
                new DirectMessageChannel {
                    Id = "IMID"
                }
            };

            var mockState = new Mock <IBotState>();

            mockState.Setup(m => m.Ims).Returns(ims).Verifiable();

            var message = new PlainMessage
            {
                Type    = EventType.Message,
                Subtype = MessageSubType.PlainMessage,
                Channel = "IMID",
                Text    = "ping"
            };

            var handler = new UserPingHandler();

            handler.BotState = mockState.Object;

            var result = handler.CanHandle(message);

            Assert.True(result);
        }
Example #3
0
        public void CanNotHandleInvalidPingMessages()
        {
            var selfData = new SelfBotData {
                Id = "BOTID"
            };

            var mockState = new Mock <IBotState>();

            mockState.Setup(m => m.Ims).Returns(new List <DirectMessageChannel>()).Verifiable();
            mockState.Setup(m => m.Self).Returns(selfData).Verifiable();

            var message = new PlainMessage
            {
                Type    = EventType.Message,
                Subtype = MessageSubType.PlainMessage,
                Text    = "<@BOTID>: pingdom"
            };

            var handler = new UserPingHandler();

            handler.BotState = mockState.Object;

            var result = handler.CanHandle(message);

            Assert.False(result);
        }
Example #4
0
        public void CanNotHandleInvalidPingMessages()
        {
            var selfData = new SelfBotData { Id = "BOTID" };

            var mockState = new Mock<IBotState>();
            mockState.Setup(m => m.Ims).Returns(new List<DirectMessageChannel>()).Verifiable();
            mockState.Setup(m => m.Self).Returns(selfData).Verifiable();

            var message = new PlainMessage
            {
                Type = EventType.Message,
                Subtype = MessageSubType.PlainMessage,
                Text = "<@BOTID>: pingdom"
            };

            var handler = new UserPingHandler();
            handler.BotState = mockState.Object;

            var result = handler.CanHandle(message);

            Assert.False(result);
        }