示例#1
0
        public void StartAndStop()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                Assert.IsTrue(logger.ServerWasStarted);
                Assert.IsFalse(logger.ServerWasStopped);
            }

            Assert.IsTrue(logger.ServerWasStopped);
            Assert.IsFalse(logger.ConnectionWasReceived);
        }
示例#2
0
        public void StartAndStop()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                Assert.IsTrue(logger.ServerWasStarted);
                Assert.IsFalse(logger.ServerWasStopped);
            }

            Assert.IsTrue(logger.ServerWasStopped);
            Assert.IsFalse(logger.ConnectionWasReceived);
        }
示例#3
0
        public void ApplicationErrorLogging()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetApplicationErrorBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // A Request for the root dir /
                var browser = new Browser(ListenOn, ListenPort);
                browser.ExecuteRequest("http://localhost/", "GET");
            }

            Assert.IsNotNull(logger.ApplicationError);
            Assert.That(logger.ApplicationError.ToString().Contains("An error occured in the application. On purpose."));
            Assert.That(logger.RequestInfo != null && logger.RequestInfo.RelativePath == "/" && logger.RequestInfo.ResponseStatusCode == 500);
        }
示例#4
0
        public void ApplicationErrorLogging()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetApplicationErrorBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // A Request for the root dir /
                var browser = new Browser(ListenOn, ListenPort);
                browser.ExecuteRequest("http://localhost/", "GET");
            }

            Assert.IsNotNull(logger.ApplicationError);
            Assert.That(logger.ApplicationError.ToString().Contains("An error occured in the application. On purpose."));
            Assert.That(logger.RequestInfo != null && logger.RequestInfo.RelativePath == "/" && logger.RequestInfo.ResponseStatusCode == 500);
        }
        public void CloseConnectionAbruptlyBeforeSendingAnyRecord()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // Just connect and quit
                using (var sock = ConnectAndGetSocket())
                {
                }

                Assert.IsFalse(logger.ServerError);
                Assert.IsTrue(logger.ConnectionWasReceived);
                Assert.IsFalse(logger.ConnectionClosedNormally);
                //TODO: NOT working yet: Assert.IsTrue(logger.ConnectionClosedAbruptlyWithoutUrl);
            }
        }
示例#6
0
        public void CloseConnectionAbruptlyBeforeSendingAnyRecord()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // Just connect and quit
                using (var sock = ConnectAndGetSocket())
                {
                }

                Assert.IsFalse(logger.ServerError);
                Assert.IsTrue(logger.ConnectionWasReceived);
                Assert.IsFalse(logger.ConnectionClosedNormally);
                //TODO: NOT working yet: Assert.IsTrue(logger.ConnectionClosedAbruptlyWithoutUrl);
            }
        }
示例#7
0
        public void CheckBasicLoggingData()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // A Request for the root dir /
                using (var browser = new Browser(ListenOn, ListenPort))
                {
                    browser.ExecuteRequest("http://localhost/", "GET");
                }

                Assert.IsTrue(logger.ConnectionWasReceived);
                Assert.IsTrue(logger.ConnectionClosedNormally);
                Assert.That(logger.RequestInfo.RelativePath == "/" && logger.RequestInfo.ResponseStatusCode == 200);
                Assert.IsFalse(logger.ConnectionClosedAbruptlyWithoutUrl);
            }
        }
示例#8
0
        public void CheckBasicLoggingData()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // A Request for the root dir /
                using (var browser = new Browser(ListenOn, ListenPort))
                {
                    browser.ExecuteRequest("http://localhost/", "GET");
                }

                Assert.IsTrue(logger.ConnectionWasReceived);
                Assert.IsTrue(logger.ConnectionClosedNormally);
                Assert.That(logger.RequestInfo.RelativePath == "/" && logger.RequestInfo.ResponseStatusCode == 200);
                Assert.IsFalse(logger.ConnectionClosedAbruptlyWithoutUrl);
            }
        }
        public void CloseConnectionAbruptlyAfterSendingBeginRequestRecord()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // Just connect and quit
                using (var webServer = ConnectAndGetWebServerRequest(1))
                {
                    webServer.SendBeginRequest(Role.Responder, true);
                }

                //TODO: Can't we do better than this?
                System.Threading.Thread.Sleep(10);

                Assert.IsFalse(logger.ServerError);
                Assert.IsTrue(logger.ConnectionWasReceived);
                Assert.IsFalse(logger.ConnectionClosedNormally);
                //TODO: NOT working yet: Assert.IsTrue(logger.ConnectionClosedAbruptlyWithoutUrl);
            }
        }
示例#10
0
        public void CloseConnectionAbruptlyAfterSendingBeginRequestRecord()
        {
            var logger = new OneRequestTestLogger();

            using (var server = GetHelloWorldBoundServer())
            {
                server.SetLogger(logger);
                server.Start(true);

                // Just connect and quit
                using (var webServer = ConnectAndGetWebServerRequest(1))
                {
                    webServer.SendBeginRequest(Role.Responder, true);
                }

                //TODO: Can't we do better than this?
                System.Threading.Thread.Sleep(10);

                Assert.IsFalse(logger.ServerError);
                Assert.IsTrue(logger.ConnectionWasReceived);
                Assert.IsFalse(logger.ConnectionClosedNormally);
                //TODO: NOT working yet: Assert.IsTrue(logger.ConnectionClosedAbruptlyWithoutUrl);
            }
        }