using Microsoft.VisualStudio.TestTools.UnitTesting; using System; namespace WSUniversalLib.UnitTest { [TestClass] public class UnitTest { /// /// Метод возвращает требуемый результат при всех правильных данных. /// [TestMethod] public void GetQuantityForProduct_CorrectInput() { Assert.AreEqual(114147, Calculation.GetQuantityForProduct(3, 1, 15, 20, 45)); } /// /// Метод возвращает требуемый результат при неправильном типе продукции. /// [TestMethod] public void GetQuantityForProduct_IncorrectInputProduct() { Assert.AreEqual(-1, Calculation.GetQuantityForProduct(0, 1, 15, 20, 45)); } /// /// Метод возвращает требуемый результат при неправильном типе продукции. /// [TestMethod] public void GetQuantityForProduct_IncorrectInputMaterial() { Assert.AreEqual(-1, Calculation.GetQuantityForProduct(3, 0, 15, 20, 45)); } /// /// Проверка, что метод возвращает целочисленное значение. /// [TestMethod] public void GetQuantityForProduct_IsInt() { Assert.IsInstanceOfType(Calculation.GetQuantityForProduct(3, 1, 15, 20, 45), typeof(int)); } /// /// Проверка, что метод округляет в большую сторону. /// [TestMethod] public void GetQuantityForProduct_Round() { Assert.IsTrue(Calculation.GetQuantityForProduct(3, 1, 15, 20, 45) > 114146.4); } /// /// Проверка, что вознкиает исключение, если ввести число продукции <= 0 при правильных типах. /// [TestMethod] public void GetQuantityForProduct_ExceptionInvalidCount() { Assert.ThrowsException(()=> Calculation.GetQuantityForProduct(3, 1, 0, 20, 45)); } /// /// Проверка, что вознкиает исключение, если ввести ширину <= 0 при правильных типах. /// [TestMethod] public void GetQuantityForProduct_ExceptionInvalidWidth() { Assert.ThrowsException(()=> Calculation.GetQuantityForProduct(3, 1, 15, -20, 45)); } /// /// Проверка, что вознкиает исключение, если ввестидлину <= 0 при правильных типах. /// [TestMethod] public void GetQuantityForProduct_ExceptionInvalidLength() { Assert.ThrowsException(()=> Calculation.GetQuantityForProduct(3, 1, 15, 20, -45)); } /// /// Проверка, что вознкиает исключение, если ввести все параметры <= 0 при правильных типах. /// [TestMethod] public void GetQuantityForProduct_ExceptionInvalidParametrWithoutType() { Assert.ThrowsException(()=> Calculation.GetQuantityForProduct(3, 1, 0, -20, -45)); } /// /// Проверка, что вознкиает исключение, если ввести все параметры <= 0 при неправильных типах. /// [TestMethod] public void GetQuantityForProduct_ExceptionWithAllInvalidParametr() { Assert.ThrowsException(()=> Calculation.GetQuantityForProduct(5, 6, 0, -20, -45)); } } }