public void SetUp() { var config = Substitute.For <IConfig>(); _sut = new TipRelatedHtmlDocument(config); config.WikiaDomainUrl.Returns("http://yugioh.wikia.com"); }
public void Given_A_SemanticSearch_Url_Should_Extract_Cards_From_Url(string url) { // Arrange var htmlDocument = new HtmlWebPage().Load(url); var semanticUrl = new TipRelatedHtmlDocument(_config).GetUrl(htmlDocument); // Act var result = _sut.CardsByUrl(semanticUrl); // Assert result.Should().NotBeNullOrEmpty(); }
public void Given_A_Card_Tip_Url_Should_Extract_RelatedCards_From_Table(string url, int expected) { // Arrange var htmlDocument = new HtmlWeb().Load(url); var htmlTable = new TipRelatedHtmlDocument(_config).GetTable(htmlDocument); // Act var result = _sut.ExtractCardsFromTable(htmlTable); // Assert result.Should().HaveCount(expected); }
public void Given_A_CardTipSection_And_TipRelatedCardListTableWith_Should_Invoke_ExtractCardsFromTable(string url) { // Arrange var fixture = new Fixture { RepeatCount = 10 }; _tipRelatedCardList.ExtractCardsFromTable(Arg.Any <HtmlNode>()).Returns(fixture.Create <List <string> >()); var htmlDocument = new HtmlWeb().Load(url); var htmlTable = new TipRelatedHtmlDocument(_config).GetTable(htmlDocument); var cardTipSection = new CardTipSection(); // Act _sut.GetTipRelatedCards(cardTipSection, null, htmlTable); // Assert _tipRelatedCardList.Received(1).ExtractCardsFromTable(Arg.Any <HtmlNode>()); }
public void Given_A_CardTipSection_And_TipRelatedCardListTableWith_Should_Invoke_CardsByUrl(string url) { // Arrange var fixture = new Fixture { RepeatCount = 10 }; _semanticSearch.CardsByUrl(Arg.Any <string>()).Returns(fixture.Create <List <SemanticCard> >()); var htmlDocument = new HtmlWeb().Load(url); var htmlTable = new TipRelatedHtmlDocument(_config).GetTable(htmlDocument); var cardTipSection = new CardTipSection(); // Act _sut.GetTipRelatedCards(cardTipSection, url, htmlTable); // Assert _semanticSearch.Received(1).CardsByUrl(Arg.Any <string>()); }