예제 #1
0
        public void ConstructorTest2()
        {
            var keeperHelper = new MockHelper();
            var styleKeeper  = new StyleKeeper(keeperHelper);

            Assert.IsNotNull(styleKeeper);
            Assert.IsNotNull(styleKeeper.Local);
            Assert.IsNotNull(styleKeeper.Embedded);

            Assert.AreEqual(styleKeeper.Local.Name, "Local");
            Assert.AreEqual(styleKeeper.Embedded.Name, "Embedded");

            Assert.IsTrue(object.ReferenceEquals(keeperHelper, styleKeeper.Helper));
        }
예제 #2
0
        public static StyleKeeper StyleKeeper(this HtmlHelper html)
        {
            if (html == null)
            {
                throw new ArgumentNullException("html");
            }

            var viewContext = html.ViewContext;
            var httpContext = viewContext.HttpContext;
            var styleKeeper = httpContext.Items[StyleKeeperKey] as StyleKeeper;

            if (styleKeeper == null)
            {
                var keeperHelper = new RequestContextHelper(viewContext.RequestContext);

                httpContext.Items[StyleKeeperKey] = styleKeeper = new StyleKeeper(keeperHelper);
            }

            return(styleKeeper);
        }
예제 #3
0
        public void ConstructorTest()
        {
            var styleKeeper = default(StyleKeeper);

            try
            {
                styleKeeper = new StyleKeeper(null);
            }
            catch (ArgumentNullException)
            {
                Assert.IsNull(styleKeeper);
                return;
            }
            catch (Exception)
            {
                Assert.Fail("Wrong exception thrown.");
            }

            Assert.Fail("No exception thrown.");
        }