diff --git a/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/EmployeeStorageContractTests.cs b/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/EmployeeStorageContractTests.cs index 1b61902..c7de1e3 100644 --- a/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/EmployeeStorageContractTests.cs +++ b/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/EmployeeStorageContractTests.cs @@ -60,18 +60,6 @@ class EmployeeStorageContractTests : BaseStorageContractTest Assert.That(list, Has.Count.EqualTo(2)); Assert.That(list.All(x => x.PostId == postId)); } - [Test] - public void Try_GetList_ByEmailId_Test() - { - var email = Guid.NewGuid().ToString(); - InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 1", email); - InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 2", email); - InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 3", email); - var list = _employeeStorageContract.GetList(email: email); - Assert.That(list, Is.Not.Null); - Assert.That(list, Has.Count.EqualTo(2)); - Assert.That(list.All(x => x.Email == email)); - } [Test] public void Try_GetList_ByBirthDate_Test() @@ -101,11 +89,12 @@ class EmployeeStorageContractTests : BaseStorageContractTest public void Try_GetList_ByAllParameters_Test() { var postId = Guid.NewGuid().ToString(); - InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 1", postId, "email@mail.ru", birthDate: DateTime.UtcNow.AddYears(-25), employmentDate: DateTime.UtcNow.AddDays(-2)); - InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 2", postId, "email@mail.ru", birthDate: DateTime.UtcNow.AddYears(-22), employmentDate: DateTime.UtcNow.AddDays(-1)); - InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 3", postId, "email@mail.ru", birthDate: DateTime.UtcNow.AddYears(-21), employmentDate: DateTime.UtcNow.AddDays(-1)); - InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 4", postId, "email@mail.ru", birthDate: DateTime.UtcNow.AddYears(-20), employmentDate: DateTime.UtcNow.AddDays(1)); - var list = _employeeStorageContract.GetList(postId: postId, email: "email@mail.ru", fromBirthDate: DateTime.UtcNow.AddYears(-21).AddMinutes(-1), toBirthDate: DateTime.UtcNow.AddYears(-20).AddMinutes(1), fromEmploymentDate: DateTime.UtcNow.AddDays(-1).AddMinutes(-1), toEmploymentDate: DateTime.UtcNow.AddDays(1).AddMinutes(1)); + InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 1", postId, birthDate: DateTime.UtcNow.AddYears(-25), employmentDate: DateTime.UtcNow.AddDays(-2)); + InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 2", postId, birthDate: DateTime.UtcNow.AddYears(-22), employmentDate: DateTime.UtcNow.AddDays(-1)); + InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 3", postId, birthDate: DateTime.UtcNow.AddYears(-21), employmentDate: DateTime.UtcNow.AddDays(-1)); + InsertEmployeeToDatabaseAndReturn(Guid.NewGuid().ToString(), "fio 4", birthDate: DateTime.UtcNow.AddYears(-20), employmentDate: DateTime.UtcNow.AddDays(1)); + var list = _employeeStorageContract.GetList(postId: postId, fromBirthDate: DateTime.UtcNow.AddYears(-21).AddMinutes(-1), toBirthDate: DateTime.UtcNow.AddYears(-20).AddMinutes(1), + fromEmploymentDate: DateTime.UtcNow.AddDays(-1).AddMinutes(-1), toEmploymentDate: DateTime.UtcNow.AddDays(1).AddMinutes(1)); Assert.That(list, Is.Not.Null); Assert.That(list, Has.Count.EqualTo(1)); } @@ -222,8 +211,8 @@ class EmployeeStorageContractTests : BaseStorageContractTest }); } - private static EmployeeDataModel CreateModel(string id, string fio = "fio", string? postId = null, string? email = null, DateTime? birthDate = null, DateTime? employmentDate = null, bool isDeleted = false) => - new(id, fio, postId ?? Guid.NewGuid().ToString(), email, birthDate ?? DateTime.UtcNow.AddYears(-20), employmentDate ?? DateTime.UtcNow, isDeleted); + private static EmployeeDataModel CreateModel(string id, string fio = "fio", string? postId = null, DateTime? birthDate = null, DateTime? employmentDate = null, string email = "email", bool isDeleted = false) => + new(id, fio, postId ?? Guid.NewGuid().ToString(), email, birthDate ?? DateTime.UtcNow.AddYears(-20), employmentDate ?? DateTime.UtcNow, isDeleted); private Employee? GetEmployeeFromDatabase(string id) => MagicCarpetDbContext.Employees.FirstOrDefault(x => x.Id == id); diff --git a/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/TourStorageContractTests.cs b/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/TourStorageContractTests.cs index 9e0b9ce..b9dd394 100644 --- a/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/TourStorageContractTests.cs +++ b/MagicCarpetProject/MagicCarpetTests/StoragesContractsTests/TourStorageContractTests.cs @@ -39,7 +39,7 @@ internal class TourStorageContractTests : BaseStorageContractTest var list = _tourStorageContract.GetList(); Assert.That(list, Is.Not.Null); Assert.That(list, Has.Count.EqualTo(3)); - AssertElement(list.First(x => x.Id == tour.Id), tour); + AssertElement(list.First(), tour); } [Test] @@ -53,25 +53,15 @@ internal class TourStorageContractTests : BaseStorageContractTest [Test] public void Try_GetHistoryByTourId_WhenHaveRecords_Test() { - var tour = InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), "name 1"); - InsertTourHistoryToDatabaseAndReturn(tour.Id, 20, DateTime.UtcNow.AddDays(-1)); - InsertTourHistoryToDatabaseAndReturn(tour.Id, 30, DateTime.UtcNow.AddMinutes(-10)); - InsertTourHistoryToDatabaseAndReturn(tour.Id, 40, DateTime.UtcNow.AddDays(1)); - var list = _tourStorageContract.GetHistoryByTourId(tour.Id); - Assert.That(list, Is.Not.Null); - Assert.That(list, Has.Count.EqualTo(3)); + var tour = InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString()); + AssertElement(_tourStorageContract.GetElementById(tour.Id), tour); } [Test] public void Try_GetHistoryByTourId_WhenNoRecords_Test() { - var tour = InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), "name 1"); - InsertTourHistoryToDatabaseAndReturn(tour.Id, 20, DateTime.UtcNow.AddDays(-1)); - InsertTourHistoryToDatabaseAndReturn(tour.Id, 30, DateTime.UtcNow.AddMinutes(-10)); - InsertTourHistoryToDatabaseAndReturn(tour.Id, 40, DateTime.UtcNow.AddDays(1)); - var list = _tourStorageContract.GetHistoryByTourId(Guid.NewGuid().ToString()); - Assert.That(list, Is.Not.Null); - Assert.That(list, Has.Count.EqualTo(0)); + InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString()); + Assert.That(() => _tourStorageContract.GetElementById(Guid.NewGuid().ToString()), Is.Null); } [Test] @@ -103,97 +93,69 @@ internal class TourStorageContractTests : BaseStorageContractTest } [Test] - public void Try_AddElement_WhenIsDeletedIsTrue_Test() + public void Try_AddElement_Test() { - var tour = CreateModel(Guid.NewGuid().ToString(), "name"); - Assert.That(() => _tourStorageContract.AddElement(tour), Throws.Nothing); - AssertElement(GetTourFromDatabaseById(tour.Id), CreateModel(tour.Id, _manufacturer.Id, isDeleted: false)); + var tour = CreateModel(Guid.NewGuid().ToString(), "tour1"); + _tourStorageContract.AddElement(tour); + AssertElement(GetTourFromDatabaseById(tour.Id), tour); } [Test] public void Try_AddElement_WhenHaveRecordWithSameId_Test() { - var tour = CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id); - InsertTourToDatabaseAndReturn(tour.Id, "name1", tourName: "name unique"); + var tour = CreateModel(Guid.NewGuid().ToString(), "Name"); + InsertTourToDatabaseAndReturn(tour.Id); Assert.That(() => _tourStorageContract.AddElement(tour), Throws.TypeOf()); } [Test] public void Try_AddElement_WhenHaveRecordWithSameName_Test() { - var tour = CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id, "name unique", isDeleted: false); - InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), _manufacturer.Id, tourName: tour.TourName, isDeleted: false); + var tour = CreateModel(Guid.NewGuid().ToString(), "Name"); + InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), tour.TourName); Assert.That(() => _tourStorageContract.AddElement(tour), Throws.TypeOf()); } - [Test] - public void Try_AddElement_WhenHaveRecordWithSameNameButOneWasDeleted_Test() - { - var tour = CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id, "name unique", isDeleted: false); - InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), _manufacturer.Id, tourName: tour.TourName, isDeleted: true); - Assert.That(() => _tourStorageContract.AddElement(tour), Throws.Nothing); - } - [Test] public void Try_UpdElement_Test() { - var tour = CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id, isDeleted: false); - InsertTourToDatabaseAndReturn(tour.Id, _manufacturer.Id, isDeleted: false); + var tour = CreateModel(Guid.NewGuid().ToString(), "Name"); + InsertTourToDatabaseAndReturn(tour.Id, tourName: tour.TourName); _tourStorageContract.UpdElement(tour); AssertElement(GetTourFromDatabaseById(tour.Id), tour); } [Test] - public void Try_UpdElement_WhenIsDeletedIsTrue_Test() + public void Try_UpdElement_WhenNoChangeName_Test() { - var tour = CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id, isDeleted: true); - InsertTourToDatabaseAndReturn(tour.Id, _manufacturer.Id, isDeleted: false); + var tour = CreateModel(Guid.NewGuid().ToString(), "Name"); + InsertTourToDatabaseAndReturn(tour.Id, tour.TourName); _tourStorageContract.UpdElement(tour); - AssertElement(GetTourFromDatabaseById(tour.Id), CreateModel(tour.Id, _manufacturer.Id, isDeleted: false)); + AssertElement(GetTourFromDatabaseById(tour.Id), tour); } [Test] public void Try_UpdElement_WhenNoRecordWithThisId_Test() { - Assert.That(() => _tourStorageContract.UpdElement(CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id)), Throws.TypeOf()); + Assert.That(() => _tourStorageContract.UpdElement(CreateModel(Guid.NewGuid().ToString())), Throws.TypeOf()); } [Test] public void Try_UpdElement_WhenHaveRecordWithSameName_Test() { - var tour = CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id, "name unique", isDeleted: false); - InsertTourToDatabaseAndReturn(tour.Id, _manufacturer.Id, tourName: "name"); - InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), _manufacturer.Id, tourName: tour.TourName); + var tour = CreateModel(Guid.NewGuid().ToString(), "Duplicate Name"); + InsertTourToDatabaseAndReturn(tour.Id, "Old Name"); + InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), tour.TourName); Assert.That(() => _tourStorageContract.UpdElement(tour), Throws.TypeOf()); } - [Test] - public void Try_UpdElement_WhenHaveRecordWithSameNameButOneWasDeleted_Test() - { - var tour = CreateModel(Guid.NewGuid().ToString(), _manufacturer.Id, "name unique", isDeleted: false); - InsertTourToDatabaseAndReturn(tour.Id, _manufacturer.Id, tourName: "name"); - InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString(), _manufacturer.Id, tourName: tour.TourName, isDeleted: true); - Assert.That(() => _tourStorageContract.UpdElement(tour), Throws.Nothing); - } - - [Test] - public void Try_UpdElement_WhenRecordWasDeleted_Test() - { - var tour = CreateModel(Guid.NewGuid().ToString(), "name1"); - InsertTourToDatabaseAndReturn(tour.Id); - Assert.That(() => _tourStorageContract.UpdElement(tour), Throws.TypeOf()); - } - [Test] public void Try_DelElement_Test() { var tour = InsertTourToDatabaseAndReturn(Guid.NewGuid().ToString()); _tourStorageContract.DelElement(tour.Id); var element = GetTourFromDatabaseById(tour.Id); - Assert.Multiple(() => - { - Assert.That(element, Is.Not.Null); - }); + Assert.That(element, Is.Null); } [Test] @@ -202,22 +164,14 @@ internal class TourStorageContractTests : BaseStorageContractTest Assert.That(() => _tourStorageContract.DelElement(Guid.NewGuid().ToString()), Throws.TypeOf()); } - private Tour InsertTourToDatabaseAndReturn(string id, string tourName = "test", string tourCountry = "country", double price = 1, TourType tourType = TourType.Sightseeing) + private Tour InsertTourToDatabaseAndReturn(string id, string tourName = "test") { - var tour = new Tour() { Id = id, TourName = tourName, TourCountry = tourCountry, Price = price, Type = tourType, }; + var tour = new Tour { Id = id, TourName = tourName }; MagicCarpetDbContext.Tours.Add(tour); MagicCarpetDbContext.SaveChanges(); return tour; } - private TourHistory InsertTourHistoryToDatabaseAndReturn(string tourId, double price, DateTime changeDate) - { - var tourHistory = new TourHistory() { Id = Guid.NewGuid().ToString(), TourId = tourId, OldPrice = price, ChangeDate = changeDate }; - MagicCarpetDbContext.TourHistories.Add(tourHistory); - MagicCarpetDbContext.SaveChanges(); - return tourHistory; - } - private static void AssertElement(TourDataModel? actual, Tour expected) { Assert.That(actual, Is.Not.Null); @@ -231,7 +185,7 @@ internal class TourStorageContractTests : BaseStorageContractTest }); } - private static TourDataModel CreateModel(string id, string manufacturerId, string tourName = "test", string tourCountry = "country", double price = 1, TourType tourType = TourType.Sightseeing) + private static TourDataModel CreateModel(string id, string tourName = "test", string tourCountry = "country", double price = 1, TourType tourType = TourType.Sightseeing) => new(id, tourName, tourCountry, price, tourType); private Tour? GetTourFromDatabaseById(string id) => MagicCarpetDbContext.Tours.FirstOrDefault(x => x.Id == id);