PasswordStrengthChekerTests.cs 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using System;
  3. using UserRegistration;
  4. namespace UserRegistration.Tests
  5. {
  6. [TestClass]
  7. public class PasswordStrengthChekerTests
  8. {
  9. [TestMethod]
  10. public void GetPasswordStrength_AllCahrs_5Points()
  11. {
  12. // arrange
  13. string password = "P2ssw0rd#";
  14. int expected = 5;
  15. // act
  16. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  17. // assert
  18. Assert.AreEqual(expected, actual);
  19. }
  20. [TestMethod]
  21. public void GetPasswordStrength_UpperCase_3Points()
  22. {
  23. // Arrange
  24. string password = "Password";
  25. int expected = 3; // верхний регистр 1, за длину строки 1, за нижний регистр 1
  26. // Act
  27. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  28. // Assert
  29. Assert.AreEqual(expected, actual);
  30. }
  31. [TestMethod]
  32. public void GetPasswordStrength_ConteinsNumber_0_4Points()
  33. {
  34. // Arrange
  35. string password = "Passw0rd";
  36. // верхний регистр 1, за длину строки 1, за нижний регистр 1
  37. // число 1
  38. int expected = 4;
  39. // Act
  40. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  41. // Assert
  42. Assert.AreEqual(expected, actual);
  43. }
  44. [TestMethod]
  45. public void GetPasswordStrength_ConteinsNumber_1_4Points()
  46. {
  47. // Arrange
  48. string password = "Passw1rd";
  49. // верхний регистр 1, за длину строки 1, за нижний регистр 1
  50. // число 1
  51. int expected = 4;
  52. // Act
  53. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  54. // Assert
  55. Assert.AreEqual(expected, actual);
  56. }
  57. // Tests for special chars
  58. [TestMethod]
  59. public void GetPasswordStrength_ContainsSpecialChar_at_5Points()
  60. {
  61. // Arrange
  62. string password = "Passw0rd@";
  63. // верхний регистр 1, за длину строки 1, за нижний регистр 1
  64. // число 1, специальный символ 1
  65. int expected = 5;
  66. // Act
  67. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  68. // Assert
  69. Assert.AreEqual(expected, actual);
  70. }
  71. [TestMethod]
  72. public void GetPasswordStrength_ContainsSpecialChar_Hash_5Points()
  73. {
  74. // Arrange
  75. string password = "Passw0rd#";
  76. // верхний регистр 1, за длину строки 1, за нижний регистр 1
  77. // число 1, специальный символ 1
  78. int expected = 5;
  79. // Act
  80. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  81. // Assert
  82. Assert.AreEqual(expected, actual);
  83. }
  84. [TestMethod]
  85. public void GetPasswordStrength_ContainsSpecialChar_Excl_5Points()
  86. {
  87. // Arrange
  88. string password = "Passw0rd!";
  89. // верхний регистр 1, за длину строки 1, за нижний регистр 1
  90. // число 1, специальный символ 1
  91. int expected = 5;
  92. // Act
  93. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  94. // Assert
  95. Assert.AreEqual(expected, actual);
  96. }
  97. [TestMethod]
  98. public void GetPasswordStrength_ContainsSpecialChar_Doll_5Points()
  99. {
  100. // Arrange
  101. string password = "Passw0rd$";
  102. // верхний регистр 1, за длину строки 1, за нижний регистр 1
  103. // число 1, специальный символ 1
  104. int expected = 5;
  105. // Act
  106. int actual = PasswordStrengthCheker.GetPasswordStrength(password);
  107. // Assert
  108. Assert.AreEqual(expected, actual);
  109. }
  110. }
  111. }