예제 #1
0
        public override void SetUp()
        {
            ViewEngines.Engines.Clear();

            _viewEngine = new StubViewEngine(this);

            var mockContext = new Mock<HttpContextBase>();
            var mockHttpRequest = new Mock<HttpRequestBase>();
            var mockHttpResponse = new Mock<HttpResponseBase>();

            Output = new StringWriter();

            ViewEngines.Engines.Add(_viewEngine);

            mockHttpRequest.Setup(req => req.MapPath(It.IsAny<string>()))
                .Returns<string>(FakeServerMapPath);
            mockHttpResponse.Setup(rsp => rsp.Output).Returns(Output);
            mockContext.Setup(ctx => ctx.Response).Returns(mockHttpResponse.Object);
            mockContext.Setup(ctx => ctx.Request).Returns(mockHttpRequest.Object);

            var routeData = new RouteData();
            routeData.Values.Add("controller", "Mock");

            _controllerContext = new ControllerContext(mockContext.Object, routeData, new Mock<ControllerBase>().Object);
        }
예제 #2
0
        public void SetUp(string controllerName, string areaName, string viewName)
        {
            Init(new ViewRequest()
            {
                ViewFolder = controllerName, GroupFolder = areaName, ViewName = viewName
            });

            _view = new StubView();

            var viewEngine = new StubViewEngine(
                (v, l) =>
            {
                _views   = v;
                _layouts = l;
                return(new ViewEngineResult(_view, null));
            },
                v =>
            {
                _views = v;
                return(true);
            });

            var viewEngines = new List <IViewEngine>();

            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            viewEngines.Add(viewEngine);
        }
예제 #3
0
        public override void SetUp()
        {
            ViewEngines.Engines.Clear();

            _viewEngine = new StubViewEngine(this);

            var mockContext      = new Mock <HttpContextBase>();
            var mockHttpRequest  = new Mock <HttpRequestBase>();
            var mockHttpResponse = new Mock <HttpResponseBase>();

            Output = new StringWriter();

            ViewEngines.Engines.Add(_viewEngine);

            mockHttpRequest.Setup(req => req.MapPath(It.IsAny <string>()))
            .Returns <string>(FakeServerMapPath);
            mockHttpResponse.Setup(rsp => rsp.Output).Returns(Output);
            mockContext.Setup(ctx => ctx.Response).Returns(mockHttpResponse.Object);
            mockContext.Setup(ctx => ctx.Request).Returns(mockHttpRequest.Object);

            var routeData = new RouteData();

            routeData.Values.Add("controller", "Mock");

            _controllerContext = new ControllerContext(mockContext.Object, routeData, new Mock <ControllerBase>().Object);
        }
예제 #4
0
        public void Render_WithPartialName_ThrowsIfViewDoesNotExist()
        {
            // does not return view instance
            var viewEngine  = new StubViewEngine((v, l) => new ViewEngineResult(new [] { "location" }), null);
            var viewEngines = new List <IViewEngine>();

            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            viewEngines.Add(viewEngine);
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            helper.Render("name");
        }
예제 #5
0
        public void Exists_ForNonExistingView_ReturnsFalse()
        {
            SetUp("home", null, "viewName");
            var viewEngine = new StubViewEngine((v, l) => new ViewEngineResult(), (v) => false);
            var viewEngines = new List<IViewEngine>();
            viewEngines.Add(viewEngine);
            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            bool result = helper.Exists("name");

            Assert.IsFalse(result);
        }
예제 #6
0
        public void Exists_ForNonExistingView_ReturnsFalse()
        {
            SetUp("home", null, "viewName");
            var viewEngine  = new StubViewEngine((v, l) => new ViewEngineResult(new[] { "location" }), (v) => false);
            var viewEngines = new List <IViewEngine>();

            viewEngines.Add(viewEngine);
            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            var model  = new Customer();
            var helper = new PartialHelper <Customer>(_helperContext, model, new Dictionary <string, object>());

            bool result = helper.Exists("name");

            Assert.IsFalse(result);
        }
예제 #7
0
        public void SetUp(string controllerName, string areaName, string viewName)
        {
            Init(new ViewRequest() { ViewFolder = controllerName, GroupFolder = areaName, ViewName = viewName });

            _view = new StubView();

            var viewEngine = new StubViewEngine(
                (v, l) =>
                    {
                        _views = v;
                        _layouts = l;
                        return new ViewEngineResult(_view, null);
                    },
                v =>
                    {
                        _views = v;
                        return true;
                    });

            var viewEngines = new List<IViewEngine>();
            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            viewEngines.Add(viewEngine);
        }
예제 #8
0
        public void Render_WithPartialName_ThrowsIfViewDoesNotExist()
        {
            // does not return view instance
            var viewEngine = new StubViewEngine((v, l) => new ViewEngineResult(), null);
            var viewEngines = new List<IViewEngine>();
            _serviceRegistry._viewRendererService.ViewEngines = viewEngines;
            viewEngines.Add(viewEngine);
            var model = new Customer();
            var helper = new PartialHelper<Customer>(_helperContext, model, new Dictionary<string, object>());

            helper.Render("name");
        }