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."); }
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!"); }