Example #1
0
        private void AddCtcpPingHandler()
        {
            CtcpPingHandlerConfig config = new CtcpPingHandlerConfig
            {
                LineRegex      = ".+",
                LineAction     = this.HandlerCtcpPingHandler,
                ResponseOption = ResponseOptions.PmsOnly
            };

            CtcpPingHandler handler = new CtcpPingHandler(config);

            this.handlers.Add(handler);
        }
Example #2
0
        public void ConstructionTest()
        {
            CtcpPingHandlerConfig config = new CtcpPingHandlerConfig
            {
                LineRegex  = @"!bot\s+help",
                LineAction = this.MessageFunction
            };

            CtcpPingHandler uut = new CtcpPingHandler(
                config
                );

            // Keep Handling should be true by default.
            Assert.IsTrue(uut.KeepHandling);
        }
Example #3
0
        public void TestMisMatchedMessage()
        {
            CtcpPingHandlerConfig config = new CtcpPingHandlerConfig
            {
                LineRegex  = @"\d+",
                LineAction = this.MessageFunction
            };

            CtcpPingHandler uut = new CtcpPingHandler(
                config
                );

            // Does not match pattern.  No response expected.
            const string expectedMessage = "hello world!";
            string       ircString       = TestHelpers.ConstructCtcpPingString(remoteUser, this.ircConfig.Nick, expectedMessage);

            uut.HandleEvent(this.ConstructArgs(ircString));

            Assert.IsNull(this.responseReceived);
        }
Example #4
0
        // ---------------- Test Helpers ----------------

        private void DoGoodMessageTest(string user, string channel)
        {
            CtcpPingHandlerConfig config = new CtcpPingHandlerConfig
            {
                LineRegex  = @"!bot\s+help",
                LineAction = this.MessageFunction
            };

            CtcpPingHandler uut = new CtcpPingHandler(
                config
                );

            const string expectedMessage = "!bot help";

            string ircString = TestHelpers.ConstructCtcpPingString(user, channel, expectedMessage);

            uut.HandleEvent(this.ConstructArgs(ircString));

            Assert.AreEqual(user, this.responseReceived.Channel);   // Need to send a message to the user that PM'ed us.
            Assert.AreEqual(user, this.responseReceived.User);
            Assert.AreEqual(expectedMessage, this.responseReceived.Message);
        }
Example #5
0
        public void IgnoreMessageTest()
        {
            const string expectedMessage = "!bot help";

            CtcpPingHandlerConfig config = new CtcpPingHandlerConfig
            {
                LineRegex     = @".+",
                LineAction    = this.MessageFunction,
                RespondToSelf = false
            };

            CtcpPingHandler uut = new CtcpPingHandler(
                config
                );

            // Instead of action string, create a message string.
            string ircString = TestHelpers.ConstructMessageString(remoteUser, this.ircConfig.Nick, expectedMessage);

            uut.HandleEvent(this.ConstructArgs(ircString));

            Assert.IsNull(this.responseReceived);
        }