コード例 #1
0
        public void ShouldSaveTagsIntoDatabase()
        {
            // Arrange
            var saver = Substitute.For <ISaver>();
            SaveIntoDatabaseService saveIntoDatabaseService = new SaveIntoDatabaseService(saver);
            string parsedTag      = "https://en.wikipedia.org/wiki/Red_fox";
            string expectedString = "Entity was successfully inserted into Database.";

            saver.Save(Arg.Is <LinkEntity>(
                           l => l.Link == parsedTag &&
                           l.IterationID == 5))
            .Returns(expectedString);
            LinkEntity linkToAdd = new LinkEntity()
            {
                IterationID = 5,
                Link        = parsedTag
            };

            // Act
            var result = saveIntoDatabaseService.SaveUrl(linkToAdd);

            // Assert
            saver.Received(1).Save(Arg.Is <LinkEntity>(
                                       l => l.Link == parsedTag &&
                                       l.IterationID == 5));
            Assert.AreEqual(expectedString, result, "Tag wasn't save into database.");
        }
コード例 #2
0
        public void ShouldExtractHtmlTags()
        {
            // Arrange
            string   baseUrl                         = "https://en.wikipedia.org";
            string   path                            = "Resources/test.html";
            string   expectedString                  = "https://en.wikipedia.org/wiki/Red_fox";
            string   notExpectedString               = "https://vk.com/gingerfoxday";
            int      iterationId                     = 5;
            ISaver   saver                           = Substitute.For <ISaver>();
            ICleaner cleaner                         = Substitute.For <ICleaner>();
            SaveIntoDatabaseService saveService      = new SaveIntoDatabaseService(saver);
            DeleteFileService       deleteService    = new DeleteFileService(cleaner);
            ParsePageService        parsePageService = new ParsePageService(saveService, deleteService);

            // Act
            var result = parsePageService.Parse(path, baseUrl, iterationId);

            // Assert
            Assert.IsTrue(result.Contains(expectedString), "File has been parsed wrong!");
            Assert.IsFalse(result.Contains(notExpectedString), "File has been parsed wrong!");
        }