UnitTest1.cs 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using System;
  3. using WSUniversalLib;
  4. namespace UnitTestProject1
  5. {
  6. [TestClass]
  7. public class UnitTest1
  8. {
  9. #region Простые тесты
  10. /// <summary>
  11. /// Проверка возвращаемого значения метода на соотвествие эталонному №1
  12. /// </summary>
  13. [TestMethod]
  14. public void CheakOnEqualEthalonNumber_1()
  15. {
  16. Assert.AreEqual(114147, Calculation.GetQuantityForProduct(3, 1, 15, 20, 45));
  17. }
  18. /// <summary>
  19. /// Проверка возвращаемого значения метода на соотвествие эталонному №2
  20. /// </summary>
  21. [TestMethod]
  22. public void CheakOnEqualEthalonNumber_2()
  23. {
  24. Assert.AreEqual(101464, Calculation.GetQuantityForProduct(3, 1, 15, 20, 40));
  25. }
  26. /// <summary>
  27. /// Проверка возвращаемого значения метода на соотвествие эталонному №3
  28. /// </summary>
  29. [TestMethod]
  30. public void CheakOnEqualEthalonNumber_3()
  31. {
  32. Assert.AreEqual(88781, Calculation.GetQuantityForProduct(3, 1, 15, 20, 35));
  33. }
  34. /// <summary>
  35. /// Проверка возвращаемого значения метода на соотвествие эталонному №4
  36. /// </summary>
  37. [TestMethod]
  38. public void CheakOnEqualEthalonNumber_4()
  39. {
  40. Assert.AreEqual(75962, Calculation.GetQuantityForProduct(3, 2, 15, 20, 30));
  41. }
  42. /// <summary>
  43. /// Проверка возвращаемого значения метода на соотвествие эталонному №5
  44. /// </summary>
  45. [TestMethod]
  46. public void CheakOnEqualEthalonNumber_5()
  47. {
  48. Assert.AreEqual(14868, Calculation.GetQuantityForProduct(1, 2, 15, 20, 45));
  49. }
  50. /// <summary>
  51. /// Проверка возвращаемого значения метода на соотвествие эталонному №6
  52. /// </summary>
  53. [TestMethod]
  54. public void CheakOnEqualEthalonNumber_6()
  55. {
  56. Assert.AreEqual(33791, Calculation.GetQuantityForProduct(2, 2, 15, 20, 45));
  57. }
  58. /// <summary>
  59. /// Проверка возвращаемого функцией значение на неравенство нулю
  60. /// </summary>
  61. [TestMethod]
  62. public void CheakOnNotNullResult()
  63. {
  64. Assert.IsNotNull(Calculation.GetQuantityForProduct(3, 1, 15, 20, 45));
  65. }
  66. /// <summary>
  67. /// Проверка возвращаемого функцией значение на соответсвие int типу
  68. /// </summary>
  69. [TestMethod]
  70. public void CheakOnIsInstanceOfTypeInt()
  71. {
  72. Assert.IsInstanceOfType(Calculation.GetQuantityForProduct(3, 1, 15, 20, 45), typeof(int));
  73. }
  74. /// <summary>
  75. /// Проверка на возврат функцией -1 при неправильном типе продукта
  76. /// </summary>
  77. [TestMethod]
  78. public void CheakOnIsTrueEqualEthalonNumber_1()
  79. {
  80. Assert.IsTrue(Calculation.GetQuantityForProduct(4, 1, 15, 20, 45) == -1);
  81. }
  82. /// <summary>
  83. /// Проверка на возврат функцией -1 при неправильном типе материала
  84. /// </summary>
  85. [TestMethod]
  86. public void CheakOnIsTrueEqualEthalonNumber_2()
  87. {
  88. Assert.IsTrue(Calculation.GetQuantityForProduct(3, 3, 15, 20, 40) == -1);
  89. }
  90. #endregion
  91. #region Сложные тесты
  92. /// <summary>
  93. /// Проверка исключения при количестве меньше 0
  94. /// </summary>
  95. [TestMethod]
  96. public void CheakOnArgumentExceptionWhenCountSmallerThen0()
  97. {
  98. Assert.ThrowsException<ArgumentException>(() => Calculation.GetQuantityForProduct(3, 3, -1, 20, 40));
  99. }
  100. /// <summary>
  101. /// Проверка исключения при ширине меньше 0
  102. /// </summary>
  103. [TestMethod]
  104. public void CheakOnArgumentExceptionWhenWidthSmallerThen0()
  105. {
  106. Assert.ThrowsException<ArgumentException>(() => Calculation.GetQuantityForProduct(3, 3, 2, -4, 40));
  107. }
  108. /// <summary>
  109. /// Проверка исключения при длинне меньше 0
  110. /// </summary>
  111. [TestMethod]
  112. public void CheakOnArgumentExceptionWhenLenghSmallerThen0()
  113. {
  114. Assert.ThrowsException<ArgumentException>(() => Calculation.GetQuantityForProduct(3, 3, 2, 20, -40));
  115. }
  116. #endregion
  117. }
  118. }