public void RenderImage_AlternativeQuotationMarks_RendersCorrectHtml() { //Arrange var expected = "<img src=\"~/media/Images/Carousel/carousel-example.ashx?h=126&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&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); }
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&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&la=en&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&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&h=105&as=True&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); }
/// <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))); }
/// <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)); }
/// <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))); }
/// <summary> /// Renders the image. /// </summary> /// <param name="image">The image.</param> /// <returns>RawString.</returns> public RawString RenderImage(Image image) { return(_glassHtml.RenderImage(image).RawString()); }
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&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); }
public void RenderImage_ValidImageWithWidthAndStretcj_RendersCorrectHtml() { //Arrange var expected = "<img src='~/media/Images/Carousel/carousel-example.ashx?w=900&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); }
/// <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)); }