コード例 #1
0
        private static void Main()
        {
            var app = new ThermometerApp()
                .Answer("/level1/subquestion", req =>
                {
                    return new { result = "OK", query_parameters = req, route = req.Route };
                })
                .Answer("overridenQuestionName" ,"/CanAccessDb", req => new {result = "NG", message = "Exception message"})
                .Answer("/GetException", req =>
                {
                    throw new Exception("Intential exception for demo");
                })
                .Listen(9000);


            var symbols = new[] { '-', '\\', '|', '/' };
            var i = 0;
            while (true)
            {
                // Main thread can do other things.
                Thread.Sleep(100);
                Console.Write("\b");
                Console.Write(symbols[i++ % symbols.Length]);
            }
        }
コード例 #2
0
        private static void Main()
        {
            var app = new ThermometerApp()
                      .Answer("/level1/subquestion", req =>
            {
                return(new { result = "OK", query_parameters = req, route = req.Route });
            })
                      .Answer("overridenQuestionName", "/CanAccessDb", req => new { result = "NG", message = "Exception message" })
                      .Answer("/GetException", req =>
            {
                throw new Exception("Intential exception for demo");
            })
                      .Listen(9000);


            var symbols = new[] { '-', '\\', '|', '/' };
            var i       = 0;

            while (true)
            {
                // Main thread can do other things.
                Thread.Sleep(100);
                Console.Write("\b");
                Console.Write(symbols[i++ % symbols.Length]);
            }
        }
コード例 #3
0
        public void Answer_ShouldNotThrowException()
        {
            // Arrange
            ThermometerApp app = MockRepository.GenerateStub <ThermometerApp>();

            //Act
            app.Answer("/abc", question => "def");
        }
        public void Listen_ShouldListenOnPort()
        {
            // Arrange
            ThermometerApp app = new ThermometerApp();
            var ips = IPGlobalProperties.GetIPGlobalProperties();
            var portsTaken = ips.GetActiveTcpListeners().Select(p => p.Port);
            // Act
            var allPorts = Enumerable.Range(1000, 65535).ToList();
            var avaiblePort = allPorts.First(p => !portsTaken.Contains(p));
            app.Listen(avaiblePort);

            //Assert
            portsTaken = ips.GetActiveTcpListeners().Select(p => p.Port);
            Assert.IsTrue(portsTaken.Contains(avaiblePort));

        }
コード例 #5
0
        public void Listen_ShouldListenOnPort()
        {
            // Arrange
            ThermometerApp app        = new ThermometerApp();
            var            ips        = IPGlobalProperties.GetIPGlobalProperties();
            var            portsTaken = ips.GetActiveTcpListeners().Select(p => p.Port);
            // Act
            var allPorts    = Enumerable.Range(1000, 65535).ToList();
            var avaiblePort = allPorts.First(p => !portsTaken.Contains(p));

            app.Listen(avaiblePort);

            //Assert
            portsTaken = ips.GetActiveTcpListeners().Select(p => p.Port);
            Assert.IsTrue(portsTaken.Contains(avaiblePort));
        }