public async Task SrcSetShouldBePresentIfThereAreSources() { //Arrange var clientMock = new Mock <IContentfulClient>(); var tagHelper = new ContentfulImageTagHelper(clientMock.Object); tagHelper.Asset = new Core.Models.Asset() { File = new Core.Models.File() { Url = "https://robertlinde.se" } }; var context = new TagHelperContext(new TagHelperAttributeList(), new Dictionary <object, object>(), "test"); var output = new TagHelperOutput("img", new TagHelperAttributeList(), async(b, c) => { var childSource = new ContentfulSource(clientMock.Object); childSource.Width = 500; await childSource.ProcessAsync(context, new TagHelperOutput("div", new TagHelperAttributeList(), (x, y) => { return(null); })); var tagHelperContent = new DefaultTagHelperContent(); tagHelperContent.SetContent(string.Empty); return(tagHelperContent); }); //Act await tagHelper.ProcessAsync(context, output); //Assert Assert.Equal("https://robertlinde.se", tagHelper.Url); Assert.Equal("https://robertlinde.se?w=500 500w", output.Attributes["srcset"].Value); }
public async Task SourceSizeShouldNotBeOverriddenWhenSet() { //Arrange var clientMock = new Mock <IContentfulClient>(); var tagHelper = new ContentfulSource(clientMock.Object); tagHelper.Asset = new Core.Models.Asset() { File = new Core.Models.File() { Url = "https://robertlinde.se" } }; tagHelper.Width = 500; tagHelper.Size = "200w"; var context = new TagHelperContext(new TagHelperAttributeList(), new Dictionary <object, object>(), "test"); context.Items.Add("sources", new List <string>()); context.Items.Add("defaults", null); var output = new TagHelperOutput("div", new TagHelperAttributeList(), (b, c) => { var tagHelperContent = new DefaultTagHelperContent(); tagHelperContent.SetContent(string.Empty); return(Task.FromResult <TagHelperContent>(tagHelperContent)); }); //Act await tagHelper.ProcessAsync(context, output); //Assert Assert.Equal("https://robertlinde.se", tagHelper.Url); Assert.Equal("200w", tagHelper.Size); }