public void SetUp()
        {
            var config = Substitute.For <IConfig>();

            _sut = new TipRelatedHtmlDocument(config);

            config.WikiaDomainUrl.Returns("http://yugioh.wikia.com");
        }
Exemplo n.º 2
0
        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();
        }
Exemplo n.º 3
0
        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>());
        }