public void CreateComment_ShouldReturnXml_WhenCommentProvided() { // Arrange var comment = new FacebookComment { Id = "id", CreatedTime = DateTime.Parse("2017-03-21 00:03:00"), Message = "message", From = new FacebookCommentUser { Id = "userid", Name = "username" } }; var formatter = new DisqusCommentsFormatter(); // Act var result = formatter.CreateComment(comment); // Assert result.Descendants(_wp + "comment_id").FirstOrDefault().Value.Should().Be("id"); result.Descendants(_wp + "comment_author").FirstOrDefault().Value.Should().Be("username"); result.Descendants(_wp + "comment_date_gmt").FirstOrDefault().Value.Should().Be("2017-03-21 00:03:00"); result.Descendants(_wp + "comment_approved").FirstOrDefault().Value.Should().Be("1"); }
public void CreateComment_ShouldThrowArgumentNullException_WhenCommentIsNull() { // Arrange var formatter = new DisqusCommentsFormatter(); // Act Action action = () => formatter.CreateComment(null); // Assert action.ShouldThrow <ArgumentNullException>(); }
public void CreateCommentsList_ShouldReturnEmptyList_WhenEmptyListProvided() { // Arrange var formatter = new DisqusCommentsFormatter(); // Act var result = formatter.CreateCommentsList(new List <FacebookComment>()); // Assert result.Should().BeEmpty(); }
public void ConvertCommentsIntoXml_ShouldThrowArgumentNullException_WhenPageUrlIsNull() { // Arrange var formatter = new DisqusCommentsFormatter(); // Act Action action = () => formatter.ConvertCommentsIntoXml(new List <FacebookComment>(), "title", null, "pageId"); // Assert action.ShouldThrow <ArgumentNullException>(); }
public void ConvertCommentsIntoXml_ShouldThrowArgumentNullException_WhenCommentsIsNull() { // Arrange var formatter = new DisqusCommentsFormatter(); // Act Action action = () => formatter.ConvertCommentsIntoXml(null, "title", new Uri("https://ignas.me"), "pageId"); // Assert action.ShouldThrow <ArgumentNullException>(); }
public void CreateComment_ShouldAddZeroParentId_WhenParentIdNotProvided() { // Arrange var comment = new FacebookComment { Message = string.Empty, From = new FacebookCommentUser() }; var formatter = new DisqusCommentsFormatter(); // Act var result = formatter.CreateComment(comment); // Assert result.Descendants(_wp + "comment_parent").FirstOrDefault().Value.Should().Be("0"); }
public void ConvertCommentsIntoXml_ShouldReturnXml_WhenCommentProvided() { // Arrange XNamespace dsq = "http://www.disqus.com/"; XNamespace content = "http://purl.org/rss/1.0/modules/content/"; var formatter = new DisqusCommentsFormatter(); // Act var result = formatter.ConvertCommentsIntoXml(new List <FacebookComment>(), "title", new Uri("https://ignas.me/"), "id"); // Assert result.Descendants("title").FirstOrDefault().Value.Should().Be("title"); result.Descendants("link").FirstOrDefault().Value.Should().Be("https://ignas.me/"); result.Descendants(_wp + "post_date_gmt").FirstOrDefault().Value.Should().Be(string.Empty); result.Descendants(_wp + "comment_status").FirstOrDefault().Value.Should().Be("open"); result.Descendants(dsq + "thread_identifier").FirstOrDefault().Value.Should().Be("id"); result.Descendants(content + "encoded").FirstOrDefault().Value.Should().Be(string.Empty); }
public void CreateCommentsList_ShouldReturnOneComment_WhenOneCommentProvided() { // Arrange var list = new List <FacebookComment> { new FacebookComment { Message = string.Empty, Children = null, From = new FacebookCommentUser() } }; var formatter = new DisqusCommentsFormatter(); // Act var result = formatter.CreateCommentsList(list); // Assert result.Should().HaveCount(1); result.FirstOrDefault().Should().NotBeNull(); }