UnitTest1.cs 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using System;
  3. using System.Linq;
  4. using RaspisKusach;
  5. namespace UnitTestProject
  6. {
  7. [TestClass]
  8. public class UnitTest1
  9. {
  10. [TestMethod]
  11. public void GetRouteDirectionTest()
  12. {
  13. Trips trip1 = cnt.db.Trips.Where(item => item.IdTrip == 1).FirstOrDefault();
  14. string expected1 = "TOMSK - OMSK";
  15. Assert.AreEqual(Functions.GetRouteDirection(trip1), expected1);
  16. Trips trip2 = cnt.db.Trips.Where(item => item.IdTrip == 2).FirstOrDefault();
  17. string expected2 = "Novosibirsk - Anapa";
  18. Assert.AreEqual(Functions.GetRouteDirection(trip2), expected2);
  19. }
  20. [TestMethod]
  21. public void GetArrivalTimeTest()
  22. {
  23. Trips trip1 = cnt.db.Trips.Where(item => item.IdTrip == 1).FirstOrDefault();
  24. Stations station1 = cnt.db.Stations.Where(item => item.IdStation == 1).FirstOrDefault();
  25. DateTime expected1 = new DateTime(2022, 08, 23, 0, 0, 0);
  26. Assert.AreEqual(Functions.GetArrivalTime(station1, trip1), expected1);
  27. Trips trip2 = cnt.db.Trips.Where(item => item.IdTrip == 2).FirstOrDefault();
  28. Stations station2 = cnt.db.Stations.Where(item => item.IdStation == 5).FirstOrDefault();
  29. DateTime expected2 = new DateTime(2022, 08, 23, 5, 00, 00);
  30. Assert.AreEqual(Functions.GetArrivalTime(station2, trip2), expected2);
  31. }
  32. [TestMethod]
  33. public void GetDepartureTimeTest()
  34. {
  35. Trips trip1 = cnt.db.Trips.Where(item => item.IdTrip == 1).FirstOrDefault();
  36. Stations station1 = cnt.db.Stations.Where(item => item.IdStation == 1).FirstOrDefault();
  37. DateTime expected1 = new DateTime(2022, 08, 23, 0, 30, 0);
  38. Assert.AreEqual(Functions.GetDepartureTime(station1, trip1), expected1);
  39. Trips trip2 = cnt.db.Trips.Where(item => item.IdTrip == 2).FirstOrDefault();
  40. Stations station2 = cnt.db.Stations.Where(item => item.IdStation == 5).FirstOrDefault();
  41. DateTime expected2 = new DateTime(2022, 08, 23, 5, 20, 00);
  42. Assert.AreEqual(Functions.GetDepartureTime(station2, trip2), expected2);
  43. }
  44. [TestMethod]
  45. public void GetDepartureStationLocationTest()
  46. {
  47. Routes route1 = cnt.db.Routes.Where(item => item.IdRoute == 1).FirstOrDefault();
  48. string expected1 = "TOMSK";
  49. Assert.AreEqual(Functions.GetDepartureStationLocation(route1), expected1);
  50. Routes route2 = cnt.db.Routes.Where(item => item.IdRoute == 2).FirstOrDefault();
  51. string expected2 = "Novosibirsk";
  52. Assert.AreEqual(Functions.GetDepartureStationLocation(route2), expected2);
  53. }
  54. [TestMethod]
  55. public void GetArrivalStationLocationTest()
  56. {
  57. Routes route1 = cnt.db.Routes.Where(item => item.IdRoute == 1).FirstOrDefault();
  58. string expected1 = "OMSK";
  59. Assert.AreEqual(Functions.GetArrivalStationLocation(route1), expected1);
  60. Routes route2 = cnt.db.Routes.Where(item => item.IdRoute == 2).FirstOrDefault();
  61. string expected2 = "Anapa";
  62. Assert.AreEqual(Functions.GetArrivalStationLocation(route2), expected2);
  63. }
  64. [TestMethod]
  65. public void GetCountAvailableSeatsTest()
  66. {
  67. Carriages carriage1 = cnt.db.Carriages.Where(item => item.IdCarriage == 1).FirstOrDefault();
  68. int expected1 = 5;
  69. Assert.AreEqual(Functions.GetCountAvailableSeats(carriage1), expected1);
  70. Carriages carriage2 = cnt.db.Carriages.Where(item => item.IdCarriage == 2).FirstOrDefault();
  71. int expected2 = 0;
  72. Assert.AreEqual(Functions.GetCountAvailableSeats(carriage2), expected2);
  73. }
  74. [TestMethod]
  75. public void GetAvailableSeatTest()
  76. {
  77. Carriages carriage1 = cnt.db.Carriages.Where(item => item.IdCarriage == 1).FirstOrDefault();
  78. int expected1 = 11;
  79. Assert.AreEqual(Functions.GetAvailableSeat(carriage1), expected1);
  80. Carriages carriage2 = cnt.db.Carriages.Where(item => item.IdCarriage == 2).FirstOrDefault();
  81. int expected2 = -1;
  82. Assert.AreEqual(Functions.GetAvailableSeat(carriage2), expected2);
  83. }
  84. [TestMethod]
  85. public void GetCarriageNumTest()
  86. {
  87. Tickets ticket1 = cnt.db.Tickets.Where(item => item.IdTicket == 1).FirstOrDefault();
  88. int expected1 = 2;
  89. Assert.AreEqual(Functions.GetCarriageNum(ticket1), expected1);
  90. Tickets ticket2 = cnt.db.Tickets.Where(item => item.IdTicket == 25).FirstOrDefault();
  91. int expected2 = 3;
  92. Assert.AreEqual(Functions.GetCarriageNum(ticket2), expected2);
  93. }
  94. [TestMethod]
  95. public void IsOnlyDigitsAndLengthCorrectTest()
  96. {
  97. string str1 = "123asq312as123 321";
  98. Assert.IsFalse(Functions.IsOnlyDigitsAndLengthCorrect(str1, 5));
  99. string str2 = "123";
  100. Assert.IsFalse(Functions.IsOnlyDigitsAndLengthCorrect(str2, 5));
  101. string str3 = "123123123";
  102. Assert.IsTrue(Functions.IsOnlyDigitsAndLengthCorrect(str3, 9));
  103. }
  104. [TestMethod]
  105. public void IsOnlyDigitsTest()
  106. {
  107. string str1 = "123asq312as123 321";
  108. Assert.IsFalse(Functions.IsOnlyDigits(str1));
  109. string str2 = "123";
  110. Assert.IsTrue(Functions.IsOnlyDigits(str2));
  111. string str3 = "12323523";
  112. Assert.IsTrue(Functions.IsOnlyDigits(str3));
  113. }
  114. [TestMethod]
  115. public void IsEmailCorrectTest()
  116. {
  117. string email1 = "imagaragmail.com";
  118. Assert.IsFalse(Functions.IsEmailCorrect(email1));
  119. string email2 = "imagara@gmail";
  120. Assert.IsFalse(Functions.IsEmailCorrect(email2));
  121. string email3 = "imagara@gmail.com";
  122. Assert.IsTrue(Functions.IsEmailCorrect(email3));
  123. }
  124. [TestMethod]
  125. public void IsHHMMTimeSpanFromStringCorrectTest()
  126. {
  127. string str1 = "10 2";
  128. Assert.IsFalse(Functions.IsHHMMTimeSpanFromStringCorrect(str1));
  129. string str2 = "10";
  130. Assert.IsFalse(Functions.IsHHMMTimeSpanFromStringCorrect(str2));
  131. string str3 = "10:20";
  132. Assert.IsTrue(Functions.IsHHMMTimeSpanFromStringCorrect(str3));
  133. string str4 = "10 20";
  134. Assert.IsTrue(Functions.IsHHMMTimeSpanFromStringCorrect(str4));
  135. }
  136. [TestMethod]
  137. public void IsEmailAlreadyTakenTest()
  138. {
  139. string email1 = "imagara@mail.ru";
  140. Assert.IsFalse(Functions.IsEmailAlreadyTaken(email1));
  141. string email2 = "testmail@gmail.com";
  142. Assert.IsFalse(Functions.IsEmailAlreadyTaken(email2));
  143. string email3 = "imagara@gmail.com";
  144. Assert.IsTrue(Functions.IsEmailAlreadyTaken(email3));
  145. }
  146. [TestMethod]
  147. public void IsLogAndPassCorrectTest()
  148. {
  149. string login1 = " ";
  150. string password1 = "Imagara";
  151. Assert.IsFalse(Functions.IsLogAndPassCorrect(login1, password1));
  152. string login2 = "Imagara";
  153. string password2 = "";
  154. Assert.IsFalse(Functions.IsLogAndPassCorrect(login2, password2));
  155. string login3 = "Imagara";
  156. string password3 = "strongPassword";
  157. Assert.IsTrue(Functions.IsLogAndPassCorrect(login3, password3));
  158. }
  159. [TestMethod]
  160. public void IsLogNotEqualPassTest()
  161. {
  162. string login1 = "Imagara";
  163. string password1 = "Imagara";
  164. Assert.IsFalse(Functions.IsLogNotEqualPass(login1, password1));
  165. string login2 = "Imagara";
  166. string password2 = "strongPassword";
  167. Assert.IsTrue(Functions.IsLogNotEqualPass(login2, password2));
  168. }
  169. [TestMethod]
  170. public void IsMinLengthCorrectTest()
  171. {
  172. string str1 = "qwe";
  173. Assert.IsFalse(Functions.IsMinLengthCorrect(str1, 5));
  174. string str2 = "";
  175. Assert.IsFalse(Functions.IsMinLengthCorrect(str2, 5));
  176. string str3 = "string";
  177. Assert.IsTrue(Functions.IsMinLengthCorrect(str3, 5));
  178. }
  179. [TestMethod]
  180. public void LoginCheckTest()
  181. {
  182. string login1 = "Imagara";
  183. string password1 = "Imagara";
  184. Assert.IsFalse(Functions.LoginCheck(login1, password1));
  185. string login2 = "Imagara";
  186. string password2 = "strongPassword";
  187. Assert.IsTrue(Functions.LoginCheck(login2, password2));
  188. }
  189. [TestMethod]
  190. public void IsLoginAlreadyTakenTest()
  191. {
  192. string login1 = "User";
  193. Assert.IsFalse(Functions.IsLoginAlreadyTaken(login1));
  194. string login2 = "Imagara";
  195. Assert.IsTrue(Functions.IsLoginAlreadyTaken(login2));
  196. }
  197. [TestMethod]
  198. public void ToUlowerTest()
  199. {
  200. string str = "артем";
  201. string expected = "Артем";
  202. Assert.AreEqual(Functions.ToUlower(str), expected);
  203. }
  204. [TestMethod]
  205. public void GetAllStationsTest()
  206. {
  207. Routes route = cnt.db.Routes.Where(item => item.IdRoute == 1).FirstOrDefault();
  208. string expected = "TOMSK-1 → TOMSK-2 → Moscow-1 → Novosibirsk-1 → OMSK";
  209. Assert.AreEqual(Functions.GetAllStations(route), expected);
  210. }
  211. [TestMethod]
  212. public void IsPhoneNumberAlreadyTakenTest()
  213. {
  214. string phoneNumber1 = "89009222950";
  215. Assert.IsFalse(Functions.IsPhoneNumberAlreadyTaken(phoneNumber1));
  216. string phoneNumber2 = "89996194949";
  217. Assert.IsTrue(Functions.IsPhoneNumberAlreadyTaken(phoneNumber2));
  218. }
  219. [TestMethod]
  220. public void PasswordEncryptTest()
  221. {
  222. string password = "strongPassword";
  223. string expected = "6EBD14D4B3ED346D6AE4CDBD41A30F8D65D58093";
  224. Assert.AreEqual(Encrypt.GetHash(password), expected);
  225. }
  226. }
  227. }