public void ReturnFalse_WhenElementIsNull() { // Act var actualResult = new YouTubeVideoSanitizer().CanSanitize(null); // Assert Assert.IsFalse(actualResult); }
public void ReturnFalse_WhenIFrameHasNotSourceAttribute() { // Arrange var htmlElement = ElementFactory.CreateIFrame(); // Act var actualResult = new YouTubeVideoSanitizer().CanSanitize(htmlElement); // Assert Assert.IsFalse(actualResult); }
public void ReturnFalse_WhenHtmlElementIsNotIFrame() { // Arrange var htmlElement = ElementFactory.CreateAnchor(); // Act var actualResult = new YouTubeVideoSanitizer().CanSanitize(htmlElement); // Assert Assert.IsFalse(actualResult); }
public void ReturnAmpYouTubeElementWithAttributeDataVideoId() { // Arrange var iframe = this.CreateIFrame(); // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(VideoId, actualResult.GetAttribute("data-videoid")); }
public void ReturnAmpYouTubeElementWithAttributeLayoutEqualToFill_WhenWidthAndHeightAreNotSpecified() { // Arrange const string ExpectedResult = "fill"; var iframe = this.CreateIFrame(); // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(ExpectedResult, actualResult.GetAttribute("layout")); }
public void ReturnAmpYouTubeElement() { // Arrange const string ExpectedResult = "AMP-YOUTUBE"; var iframe = this.CreateIFrame(); // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(ExpectedResult, actualResult.TagName); }
public void ReplaceIFrameWithAmpYouTubeElement() { // Arrange var iframe = this.CreateIFrame(); var iframeParent = iframe.Parent; // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(1, iframeParent.ChildNodes.Length); Assert.AreEqual("AMP-YOUTUBE", actualResult.TagName); }
public void ReturnTrue_WhenSourceAttributeIsYouTubeDomainAndStartsWithWWW() { // Arrange var htmlElement = ElementFactory.CreateIFrame(); htmlElement.Source = "http://www.youtube.com/embed/d8fr3AdK_tQ4"; // Act var actualResult = new YouTubeVideoSanitizer().CanSanitize(htmlElement); // Assert Assert.IsTrue(actualResult); }
public void ReturnFalse_WhenSourceAttributeIsNotEmbedUrlPath() { // Arrange var htmlElement = ElementFactory.CreateIFrame(); htmlElement.Source = "http://youtube.com/not-valid/url-path"; // Act var actualResult = new YouTubeVideoSanitizer().CanSanitize(htmlElement); // Assert Assert.IsFalse(actualResult); }
public void ReturnFalse_WhenSourceAttributeIsNotYouTubeDomain() { // Arrange var htmlElement = ElementFactory.CreateIFrame(); htmlElement.Source = "mydomain.com"; // Act var actualResult = new YouTubeVideoSanitizer().CanSanitize(htmlElement); // Assert Assert.IsFalse(actualResult); }
public void ReturnAmpYouTubeElementWithAttributeLayoutEqualToFixedHeight_WhenOnlyHeighIsSpecified() { // Arrange const string ExpectedResult = "fixed-height"; var iframe = this.CreateIFrame(); iframe.DisplayHeight = 100; // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(ExpectedResult, actualResult.GetAttribute("layout")); }
public void ReturnAmpYouTubeElementWithAttributeId() { // Arrange const string ExpectedResult = "ytbPlayer"; var iframe = this.CreateIFrame(); iframe.Id = "ytbPlayer"; // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(ExpectedResult, actualResult.GetAttribute("id")); }
public void ReturnAmpYouTubeElementWithAttributeHeight() { // Arrange const string ExpectedResult = "50"; var iframe = this.CreateIFrame(); iframe.DisplayHeight = 50; // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(ExpectedResult, actualResult.GetAttribute("height")); }
public void ReturnAmpYouTubeElementWithAttributeLayoutEqualToResponsive_WhenBothWidthAndHeightAreSpecified() { // Arrange const string ExpectedResult = "responsive"; var iframe = this.CreateIFrame(); iframe.DisplayHeight = 100; iframe.DisplayWidth = 100; // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(ExpectedResult, actualResult.GetAttribute("layout")); }
public void ReturnAmpYouTubeElementWithAttributeLayoutEqualToNoDisplay_WhenTheIframeHasStyleVisibilityHidden() { // Arrange const string ExpectedResult = "nodisplay"; var iframe = this.CreateIFrame(); iframe.DisplayHeight = 100; iframe.SetAttribute("style", "visibility:hidden"); // Act var actualResult = new YouTubeVideoSanitizer().Sanitize(ElementFactory.Document, iframe); // Assert Assert.AreEqual(ExpectedResult, actualResult.GetAttribute("layout")); }