public void FindEntitiesTest() { AvitoEntity[] entities = new HtmlXPathTemplateFinder <AvitoEntity>( new HtmlXPathTemplateReader( File.ReadAllText(Constants.AvitoXPathTemplateFile), new HtmlTemplateOptions( tabulator: " ", Environment.NewLine)), new JsonEntityFactory <AvitoEntity>(), new HtmlXPathTemplateFinderOptions(trimValues: true, readTemplateOnInit: true)) .FindEntities(File.ReadAllText(Constants.AvitoHtmlFile)) .ToArray(); entities.Length.Should().Be(50); for (int i = 0; i < entities.Length; i++) { var entity = entities[i]; entity.url.Should().NotBeNullOrEmpty(); entity.img.Should().NotBeNullOrEmpty(); entity.price.Should().NotBeNullOrEmpty(); entity.title.Should().NotBeNullOrEmpty(); entity.category.Should().NotBeNullOrEmpty(); entity.address.Should().NotBeNullOrEmpty(); entity.date.Should().NotBeNullOrEmpty(); } VerifyAnEntity(entities.First()); }
public void FindEntitiesTest() { string[] entities = new HtmlXPathTemplateFinder <string>( new HtmlXPathTemplateReader( File.ReadAllText(Constants.TestXPathTemplateFile), new HtmlTemplateOptions( tabulator: "\t", Environment.NewLine)), new NopEntityFactory(), new HtmlXPathTemplateFinderOptions(trimValues: true, readTemplateOnInit: true, skipEmptyEntities: true)) .FindEntities(File.ReadAllText(Constants.HtmlFile)) .ToArray(); entities.Length.Should().Be(2); entities[0].Should().Be("{\r\n\t\"innerText\": \"1\",\r\n\t\"attribute\": \"one\",\r\n}"); entities[1].Should().Be("{\r\n\t\"innerText\": \"4\",\r\n\t\"attribute\": \"four\",\r\n}"); }