public void Process(Item item) { if (!string.IsNullOrEmpty(item.Content)) { item.Content = this.RemoveFrames(item.Content); } }
public void Process(Item item) { if (!string.IsNullOrEmpty(item.Content)) { item.Content = this.TrimContent(item.Content); } }
public void Given_1000_Simbol_Limit_All_Content_Is_Returned() { var limit = 1000; var item = new Item { Content = Content }; new HtmlProcessor(limit).Process(item); Assert.AreEqual(Content, item.Content); }
public void Process(Item item) { lock (this.lockingObject) { using (var indexService = new IndexService(this.indexWriter)) { indexService.IndexEntity(item, new ItemIndexDefinition()); } } }
public void Process(Item item) { if (item.Tags != null) { item.Tags = item.Tags .Select(t => t.ToLowerInvariant()) .Where(t => !t.Equals("ltnet")) .ToArray(); } }
public void Given_Not_Valid_First_Tag_All_Content_Is_Returned() { var limit = 25; var content = "GitHub for Windows - <a href=\"https://t.co/4cE6M3co\">https://github.com/blog/1127-github-for-windows</a> <a href=\"http://search.twitter.com/search?q=%23github\" title=\"#github\" class=\" \">#github</a> <a href=\"http://search.twitter.com/search?q=%23git\" title=\"#git\" class=\" \">#git</a> <em><a href=\"http://search.twitter.com/search?q=%23ltnet\" \">#ltnet</a></em>"; var item = new Item { Content = content }; new HtmlProcessor(limit).Process(item); Assert.AreEqual(content, item.Content); }
public void Given_Not_Valid_Tag_After_Paragraph_It_Is_Handled() { var content = "<p>This is just </p> <ul> <li>paragraph</li> </ul>"; var item = new Item { Content = content }; new HtmlProcessor().Process(item); Assert.AreEqual("<p>This is just [...]</p>", item.Content); }
public void Given_25_Simbol_Limit_Only_First_Para_Is_Returned() { var limit = 25; var processedContent = "<p>This is first para with <a href=\"#\">a link</a>[...]</p>"; var item = new Item { Content = Content }; new HtmlProcessor(limit).Process(item); Assert.AreEqual(processedContent, item.Content); }
public void Given_Tweet_With_No_Frames_Content_Is_Returned() { var content = "ITishnikai #7 jau online!"; var item = new Item { Content = content }; new FacebookProcessor().Process(item); Assert.AreEqual(content, item.Content); }
public void Given_Tweet_With_Non_Facebook_Frame_Content_Is_Returned() { var content = "ITishnikai #7 jau online! <iframe height=\"355\" marginheight=\"0\" src=\"http://www.slideshare.net/slideshow/embed_code/9593236?rel=0\" frameborder=\"0\" width=\"425\" marginwidth=\"0\" scrolling=\"no\"></iframe>"; var item = new Item { Content = content }; new FacebookProcessor().Process(item); Assert.AreEqual(content, item.Content); }
public void Given_50_Simbol_Limit_First_Two_Paragraphs_Are_Returned() { var limit = 50; var processedContent = "<p>This is first para with <a href=\"#\">a link</a></p>" + "<p>This is second para with <ul><li>unordered</li><li>list</li></ul>[...]</p>"; var item = new Item { Content = Content }; new HtmlProcessor(limit).Process(item); Assert.AreEqual(processedContent, item.Content); }
public void Given_ltnet_Tag_It_Is_Remvoed() { var tagsBeforeProcessing = new[] { "ASP.NET MVC", "ltnet" }; var tagsAfterProcessing = new[] { "asp.net mvc" }; var item = new Item { Tags = tagsBeforeProcessing }; new TagsProcessor().Process(item); CollectionAssert.AreEquivalent(tagsAfterProcessing, item.Tags); }
public void Given_Tweet_With_Facebook_Frame_Content_Is_Returned() { var contentBeforeProcessing = "ITishnikai #7 jau online! <p><iframe src=\"http://www.facebook.com/plugins/like.php?locale=lt_LT&href=http%3A%2F%2Fsergejus.blogas.lt%2Fitishnikai-11-it-darbo-interviu-1605.html&layout=button_count&show_faces=true&width=150&action=like&colorscheme=light&height=25\" scrolling=\"no\" frameborder=\"0\" style=\"border:none; overflow:hidden; width:150px; height:25px;\" allowTransparency=\"true\"></iframe> </p>"; var contentAfterProcessing = "ITishnikai #7 jau online! <p> </p>"; var item = new Item { Content = contentBeforeProcessing }; new FacebookProcessor().Process(item); Assert.AreEqual(contentAfterProcessing, item.Content); }
public void Given_Tags_With_Mixed_Casing_After_Processing_All_Tags_Are_Lower_Case() { var tagsBeforeProcessing = new[] { "ASP.NET MVC" }; var tagsAfterProcessing = new[] { "asp.net mvc" }; var item = new Item { Tags = tagsBeforeProcessing }; new TagsProcessor().Process(item); CollectionAssert.AreEquivalent(tagsAfterProcessing, item.Tags); }
public StreamItem MapFrom(Item item) { return new StreamItem { Id = item.Id, Url = item.Url, Published = item.Published.ToString("MMM dd HH:mm:ss"), AuthorName = item.AuthorName, AuthorUri = item.AuthorUri, AuthorImage = item.AuthorImage ?? "http://placehold.it/48x48", Title = item.Title, Content = this.contentFormatter.Format(item.Content), Tags = item.Tags, ItemType = item.ItemType.ToString().ToLower() }; }
public void Given_Item_Should_Add_To_Index() { var writer = new MemoryIndexWriter(true); var processor = new LuceneProcessor(writer); var item = new Item { Url = "http://dotnetgroup.lt", Tags = new[] { "c#", "dotnet" }, Content = "<b>sample content</b>", Title = "title", AuthorName = "author" }; processor.Process(item); var searcher = new MemoryIndexSearcher(writer.Directory, readOnly: false); var searchService = new SearchService(searcher); var results = searchService.SearchIndex(new MatchAllDocsQuery()).Results; Assert.AreEqual(1, results.Count()); }
public void Given_Text_Node_Between_Element_Nodes_It_Is_Processed() { var content = "<p>This is just </p> <p>paragraph</p>"; var processedContent = "<p>This is just </p><p>paragraph</p>"; var item = new Item { Content = content }; new HtmlProcessor().Process(item); Assert.AreEqual(processedContent, item.Content); }
public void Given_Text_Has_Already_Been_Process_Original_Content_Is_Returned() { var limit = 10; var content = "<p>This text has already been processed[...]</p>"; var item = new Item { Content = content }; new HtmlProcessor(limit).Process(item); Assert.AreEqual(content, item.Content); }