public void RemoveVersion_TheProductHasOnlyOneVersion_RemovesTheVersionAndTheProductAndWritesThisToLog() { //Arrange string productName = "productName"; Version removableVersion = CreateNewVersion("1.1.1"); CurrentProductRepository.AddVersion(productName, removableVersion); //Act CurrentProductRepository.RemoveVersion(productName, removableVersion.ProductVersion); //Assert Product potentiallyRemovedProduct = new Product(productName); potentiallyRemovedProduct.InitializeLatestVersion(removableVersion); bool isRemovedVersionExistInRepository = IsThereVersion(productName, removableVersion); bool isRemovedProductExistInRepository = IsThereProduct(potentiallyRemovedProduct); string expectedMessage = $"Продукт {productName} успешно удален"; string actualMessage = _lastMessageFromLog; Assert.False(isRemovedVersionExistInRepository); Assert.False(isRemovedProductExistInRepository); Assert.AreEqual(expectedMessage, actualMessage); }
public void RemoveVersion_TheProductHasMoreThanOneVersion_RemovesTheVersionAndWritesThisToLog() { //Arrange string productName = "productName"; Version firstVersion = CreateNewVersion("1.1.1"); Version removableVersion = CreateNewVersion("1.1.2"); CurrentProductRepository.AddVersion(productName, firstVersion); CurrentProductRepository.AddVersion(productName, removableVersion); Product product = CurrentProductRepository.GetProducts().FirstOrDefault(); //Act CurrentProductRepository.RemoveVersion(productName, removableVersion.ProductVersion); //Assert bool productStillExistsInRepository = IsThereProduct(product); bool isRemovedVersionExistInRepository = IsThereVersion(productName, removableVersion); string expectedMessage = $"Версия {removableVersion.ProductVersion} продукта {productName} успешно удалена"; string actualMessage = _lastMessageFromLog; Assert.True(productStillExistsInRepository); Assert.False(isRemovedVersionExistInRepository); Assert.AreEqual(expectedMessage, actualMessage); }
public void RemoveVersion_RemovableVersionNotFoundInRepository_ReturnsFalseAndWriteToLogAboutNonExistentRemovableVersion() { //Arrange string productName = "productName"; Version removableVersion = CreateNewVersion("1.1.1"); //Act bool IsRemovableVersionRemovedFromRepository = CurrentProductRepository .RemoveVersion(productName, removableVersion.ProductVersion); //Assert string expectedMessage = "Удаляемой версии продукта не существует!"; string actualMessage = _lastMessageFromLog; Assert.AreEqual(expectedMessage, actualMessage); Assert.False(IsRemovableVersionRemovedFromRepository); }