public void RenderImage_AlternativeQuotationMarks_RendersCorrectHtml()
        {
            //Arrange
            var expected = "<img src=\"~/media/Images/Carousel/carousel-example.ashx?h=126&amp;w=240\" alt=\"someAlt\" width=\"380\" />";
            var scContext = Substitute.For<ISitecoreContext>();
            scContext.Config = new Config();

            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var parameters = new { Width = 380, W = 240 };
            var model = new { Image = image };

            GlassHtml.QuotationMark = "\"";

            //Act
            var result = html.RenderImage(model, x => x.Image, parameters, true, true);

            //Assert
            Assert.AreEqual(expected, result);

            //reset GlassHtml
            GlassHtml.QuotationMark = "'";

        }
        public void RenderImage_ValidImageWithParametersWidth_RendersCorrectHtmlNoWidthHeight()
        {    //Arrange
            var expected = "<img src='~/media/Images/Carousel/carousel-example.ashx?h=126&amp;w=240' alt='someAlt' />";
            var scContext = Substitute.For<ISitecoreContext>();
            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var parameters = new { Width = 380, W = 240 };
            var model = new { Image = image };

            //Act
            var result = html.RenderImage(model, x => x.Image, parameters, true, false);

            //Assert
            Assert.AreEqual(expected, result);
        }
        public void RenderImage_RendersImageWithAttributes()
        {
            GlassHtml html = new GlassHtml("master");

            //Assign
            FieldTypes.Image img = new FieldTypes.Image();
            img.Alt = "Some alt test";
            img.Src = "/cats.jpg";
            img.Class = "classy";

            NameValueCollection attrs = new NameValueCollection();
            attrs.Add("style", "allStyle");
            
            //Act
            var result = html.RenderImage(img, attrs);

            //Assert
            Assert.AreEqual("<img src='/cats.jpg' style='allStyle' class='classy' alt='Some alt test' />", result);

        }
Example #4
0
        public void RenderImage_MatchesSitecoreOutput_Issue133_Test3()
        {
            //Assign
            string targetPath = "/sitecore/content/Tests/GlassHtml/RenderImage/Target";

            var db = Sitecore.Configuration.Factory.GetDatabase("master");
            var context = Context.Create(Utilities.CreateStandardResolver());
            context.Load(new SitecoreAttributeConfigurationLoader("Glass.Mapper.Sc.Integration"));
            var service = new SitecoreContext(db);

            var html = new GlassHtml(service);


            string fieldValue = "<image mediaid=\"{D897833C-1F53-4FAE-B54B-BB5B11B8F851}\" mediapath=\"/Files/20121222_001405\" src=\"~/media/D897833C1F534FAEB54BBB5B11B8F851.ashx\" hspace=\"15\" vspace=\"20\" />";

            var item = db.GetItem(targetPath);
            var field = item.Fields["Image"];

            using (new ItemEditing(item, true))
            {
                field.Value = fieldValue;
            }

            var model = service.GetItem<StubClassWithImage>(targetPath);


            var scControl = new Sitecore.Web.UI.WebControls.Image();
            scControl.Item = item;
            scControl.Field = "Image";
            scControl.Parameters = "width=200&as=true";

            var doc = new XmlDocument();
            doc.LoadXml("<site name='GetHomeItem' virtualFolder='/' physicalFolder='/' rootPath='/sitecore/content/Tests/SitecoreContext/GetHomeItem' startItem='/Target1' database='master' domain='extranet' allowDebug='true' cacheHtml='true' htmlCacheSize='10MB' registryCacheSize='0' viewStateCacheSize='0' xslCacheSize='5MB' filteredItemsCacheSize='2MB' enablePreview='true' enableWebEdit='true' enableDebugger='true' disableClientData='false' />");

            var siteContext = new SiteContextStub(
                new SiteInfo(
                    doc.FirstChild
                    )
                );

            siteContext.SetDisplayMode(DisplayMode.Normal);

            Sitecore.Context.Site = siteContext;

            StringBuilder sb = new StringBuilder();
            HtmlTextWriter writer = new HtmlTextWriter(new StringWriter(sb));
            //Act
            scControl.RenderControl(writer);
            var scResult = sb.ToString();
            var result = html.RenderImage(model, x => x.Image, new { width = 200 });

            //Assert
            Assert.AreEqual(result, scResult);


        }
        public void RenderImage_RemoveHeightWidthAttributes_RendersCorrectHtml()
        {
            //Arrange
            var expected =
                "<img src='~/media/Images/Carousel/carousel-example.ashx?h=210&amp;w=400' vspace='15' hspace='10' border='9' alt='someAlt' />";
            var scContext = Substitute.For<ISitecoreContext>();
            scContext.Config = new Config();

            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.HSpace = 10;
            image.VSpace = 15;
            image.Border = "9";
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var model = new { Image = image };
            var parameters = new { w = 400 };
            //Act
            var result = html.RenderImage(model, x => x.Image, parameters, true, false);

            //Assert
            Assert.AreEqual(expected, result);
        }
        public void RenderImage_ValidImageWithLanguageParameterOverride_RendersCorrectHtmlWithParameterLanguage()
        {
            //Arrange
            var expected =
                "<img src='~/media/Images/Carousel/carousel-example.ashx?h=210&amp;la=en&amp;w=400' width='200' vspace='15' height='105' hspace='10' border='9' alt='someAlt' />";
            var scContext = Substitute.For<ISitecoreContext>();
            scContext.Config = new Config();

            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.HSpace = 10;
            image.VSpace = 15;
            image.Border = "9";
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            image.Language = LanguageManager.GetLanguage("af-ZA");
            var model = new { Image = image };
            var parameters = new { w = 400, la="en" };
            //Act
            var result = html.RenderImage(model, x => x.Image, parameters, true, true);

            //Assert
            Assert.AreEqual(expected, result);
        }
        public void RenderImage_ValidImageWithClass_RendersCorrectHtml()
        {
            //Arrange
            var expected = "<img src='~/media/Images/Carousel/carousel-example.ashx?h=105&amp;w=200' alt='someAlt' height='105' class='AClass' width='200' />";
            var scContext = Substitute.For<ISitecoreContext>();
            scContext.Config = new Config();

            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.Class = "AClass";
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var model = new { Image = image };

            //Act
            var result = html.RenderImage(model, x => x.Image, null, true, true);

            //Assert
            Assert.AreEqual(expected, result);
        }
        public void RenderImage_MaxWidthWhereWidthIsBelowMaxWidth_RendersCorrectHtml()
        {
            //Arrange
            var expected = "<img src='~/media/Images/Carousel/carousel-example.ashx?mw=300&amp;h=105&amp;as=True&amp;w=200' alt='someAlt' />";
            var scContext = Substitute.For<ISitecoreContext>();
            scContext.Config = new Config();

            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var parameters = new { mw = 300, As = true };
            var model = new { Image = image };

            //Act
            var result = html.RenderImage(model, x => x.Image, parameters, true, false);

            //Assert
            Assert.AreEqual(expected, result);
        }
Example #9
0
 /// <summary>
 /// Renders an image allowing simple page editor support
 /// </summary>
 /// <typeparam name="T">The model type</typeparam>
 /// <param name="model">The model that contains the image field</param>
 /// <param name="field">A lambda expression to the image field, should be of type Glass.Mapper.Sc.Fields.Image</param>
 /// <param name="parameters">Image parameters, e.g. width, height</param>
 /// <param name="isEditable">Indicates if the field should be editable</param>
 /// <returns></returns>
 public virtual HtmlString RenderImage <T>(T target, Expression <Func <T, object> > field,
                                           object parameters = null,
                                           bool isEditable   = false)
 {
     return(new HtmlString(GlassHtml.RenderImage <T>(target, field, parameters, isEditable)));
 }
Example #10
0
 /// <summary>
 /// Renders an image allowing simple page editor support
 /// </summary>
 /// <typeparam name="T">The model type</typeparam>
 /// <param name="target">The model with the field</param>
 /// <param name="field">A lambda expression to the image field, should be of type Glass.Mapper.Sc.Fields.Image</param>
 /// <param name="parameters">Image parameters, e.g. width, height</param>
 /// <param name="isEditable">Indicates if the field should be editable</param>
 /// <returns></returns>
 public virtual IEncodedString RenderImage <T>(T target, Expression <Func <T, object> > field,
                                               ImageParameters parameters = null,
                                               bool isEditable            = false)
 {
     return(GlassHtml.RenderImage(target, field, parameters, isEditable));
 }
 /// <summary>
 /// Renders the image.
 /// </summary>
 /// <param name="image">The image.</param>
 /// <param name="attributes">The attributes.</param>
 /// <returns>IEncodedString.</returns>
 public IEncodedString RenderImage(Image image, NameValueCollection attributes)
 {
     return(GlassHtml.RenderImage(image, attributes));
 }
 /// <summary>
 /// Renders the image.
 /// </summary>
 /// <param name="image">The image.</param>
 /// <returns>IEncodedString.</returns>
 public IEncodedString RenderImage(Image image)
 {
     return(GlassHtml.RenderImage(image));
 }
Example #13
0
 /// <summary>
 /// Renders an image allowing simple page editor support
 /// </summary>
 /// <typeparam name="T">The model type</typeparam>
 /// <param name="model">The model that contains the image field</param>
 /// <param name="field">A lambda expression to the image field, should be of type Glass.Mapper.Sc.Fields.Image</param>
 /// <param name="parameters">Image parameters, e.g. width, height</param>
 /// <param name="isEditable">Indicates if the field should be editable</param>
 /// <returns></returns>
 public virtual HtmlString RenderImage(Expression <Func <TModel, object> > field,
                                       ImageParameters parameters = null,
                                       bool isEditable            = false)
 {
     return(new HtmlString(GlassHtml.RenderImage(Model, field, parameters, isEditable)));
 }
Example #14
0
 /// <summary>
 /// Renders the image.
 /// </summary>
 /// <param name="image">The image.</param>
 /// <returns>RawString.</returns>
 public RawString RenderImage(Image image)
 {
     return(_glassHtml.RenderImage(image).RawString());
 }
Example #15
0
        public void RenderImage_ValidImageWithBorderHSpaceVSpace_RendersCorrectHtml()
        {
            //Arrange
            var expected = "<img src='~/media/Images/Carousel/carousel-example.ashx' alt='someAlt' border='9' hspace='10' vspace='15' />";
            var scContext = Substitute.For<ISitecoreContext>();
            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.HSpace = 10;
            image.VSpace = 15;
            image.Border = "9";
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var model = new { Image = image };

            //Act
            var result = html.RenderImage(model, x => x.Image, null, true);

            //Assert
            Assert.AreEqual(expected, result);
        }
        public void RenderImage_ValidImageWithParametersHeight_RendersCorrectHtml()
        {
            //Arrange
            var expected = "<img src='~/media/Images/Carousel/carousel-example.ashx?h=450&amp;w=600' alt='someAlt' height='450' />";
            var scContext = Substitute.For<ISitecoreContext>();
            var html = new GlassHtml(scContext);
            scContext.Config = new Config();

            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 150;
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var parameters = new  { Height = 450, H=450};
            var model = new { Image = image };

            //Act
            var result = html.RenderImage(model, x => x.Image, parameters, true, true);

            //Assert
            Assert.AreEqual(expected, result);
        }
Example #17
0
        public void RenderImage_ValidImageWithWidthAndStretcj_RendersCorrectHtml()
        {
            //Arrange
            var expected = "<img src='~/media/Images/Carousel/carousel-example.ashx?w=900&amp;as=True' alt='someAlt' width='900' />";
            var scContext = Substitute.For<ISitecoreContext>();
            var html = new GlassHtml(scContext);
            var image = new Fields.Image();
            image.Alt = "someAlt";
            image.Width = 200;
            image.Height = 105;
            image.Src = "~/media/Images/Carousel/carousel-example.ashx";
            var parameters = new ImageParameters { Width = 900, AllowStretch = true};
            var model = new { Image = image };

            //Act
            var result = html.RenderImage(model, x => x.Image, parameters, true);

            //Assert
            Assert.AreEqual(expected, result);
        }
Example #18
0
 /// <summary>
 /// Renders an image allowing simple page editor support
 /// </summary>
 /// <param name="field">A lambda expression to the image field, should be of type Glass.Mapper.Sc.Fields.Image</param>
 /// <param name="parameters">Image parameters, e.g. width, height</param>
 /// <param name="isEditable">Indicates if the field should be editable</param>
 /// <returns></returns>
 public virtual IEncodedString RenderImage(Expression <Func <TModel, object> > field, object attributes = null, bool isEditable = false)
 {
     return(GlassHtml.RenderImage(Model, field, attributes, isEditable));
 }