コード例 #1
0
        public async void StatusCodeExceptionProcessed()
        {
            var element = Element.Create("div");

            element.On("click", () => throw new StatusCodeException(HttpStatusCode.Forbidden));
            var http = new Mock <HttpContext>();
            var post = new PostEventContext(Context.Application, http.Object)
            {
                Element    = element,
                Parameters = new EventParameters
                {
                    EventName = "click"
                }
            };
            var response = new Mock <HttpResponse>();

            response.SetupProperty(x => x.StatusCode);
            http.Setup(x => x.Response).Returns(response.Object);
            post.Http = http.Object;
            var headers = new Mock <IHeaderDictionary>();

            response.Setup(x => x.Headers).Returns(headers.Object);
            var body = new Mock <Stream>();

            response.Setup(x => x.Body).Returns(body.Object);
            await PostEventHandler.RunEventHandler(post);

            Assert.Equal((int)HttpStatusCode.Forbidden, response.Object.StatusCode);
        }
コード例 #2
0
        public async void PostEventHandlerNoElement()
        {
            var http     = new Mock <HttpContext>();
            var page     = new MyPage();
            var document = new Document(page, BaseModeController.DefaultKeepAliveInterval);
            var context  = new PostEventContext(Context.Application, http.Object)
            {
                Document   = document,
                Parameters = new EventParameters
                {
                    ElementId = "aaa"
                }
            };
            var sockets = new Mock <WebSocketManager>();

            http.Setup(x => x.WebSockets).Returns(sockets.Object);
            var response = new Mock <HttpResponse>();

            http.Setup(x => x.Response).Returns(response.Object);
            response.SetupProperty(x => x.StatusCode);
            var headers = new Mock <IHeaderDictionary>();

            response.Setup(x => x.Headers).Returns(headers.Object);
            var body = new Mock <Stream>();

            response.Setup(x => x.Body).Returns(body.Object);
            await PostEventHandler.ProcessRequestDocument(context);

            var code = response.Object.StatusCode;

            Assert.True(code == 200 || code == 0);
        }
コード例 #3
0
        public void PostGetCompletionRuns()
        {
            var page     = new MyPage();
            var document = new Mock <Document>(page, 200);
            var socket   = new Mock <WebSocket>();
            var post     = new PostEventContext(Context.Application, Context.Http)
            {
                Document = document.Object,
                Socket   = socket.Object
            };
            var task = post.GetSocketCompletion();

            Assert.NotNull(task);
            document.Verify(x => x.GetSocketCompletion(socket.Object));
        }