diff --git a/PapaCarloProject/PapaCarloContracts/DataModels/BuyerDataModel.cs b/PapaCarloProject/PapaCarloContracts/DataModels/BuyerDataModel.cs deleted file mode 100644 index d5c719b..0000000 --- a/PapaCarloProject/PapaCarloContracts/DataModels/BuyerDataModel.cs +++ /dev/null @@ -1,34 +0,0 @@ -using PapaCarloContracts.Extensions; -using PapaCarloContracts.infrastructure; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Numerics; -using System.Text; -using System.Text.RegularExpressions; -using System.Threading.Tasks; -using static System.Runtime.InteropServices.JavaScript.JSType; -using System.Xml; -using PapaCarloContracts.Exceptions; - -namespace PapaCarloContracts.DataModels; - -public class BuyerDataModel(string id, string fio, string phoneNumber) : IValidation -{ - public string Id { get; private set; } = id; - public string FIO { get; private set; } = fio; - public string PhoneNumber { get; private set; } = phoneNumber; - public void Validate() - { - if (Id.IsEmpty()) - throw new ValidationException("Field Id is empty"); - if (!Id.IsGuid()) - throw new ValidationException("The value in the field Id is not a unique identifier"); - if (FIO.IsEmpty()) - throw new ValidationException("Field FIO is empty"); - if (PhoneNumber.IsEmpty()) - throw new ValidationException("Field PhoneNumber is empty"); - if (!Regex.IsMatch(PhoneNumber, @"^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\-]?)?[\d\- ]{7,10}$")) - throw new ValidationException("Field PhoneNumber is not a phone number"); - } -} diff --git a/PapaCarloProject/PapaCarloContracts/DataModels/PostDataModel.cs b/PapaCarloProject/PapaCarloContracts/DataModels/PostDataModel.cs index f78486d..8bc28a3 100644 --- a/PapaCarloProject/PapaCarloContracts/DataModels/PostDataModel.cs +++ b/PapaCarloProject/PapaCarloContracts/DataModels/PostDataModel.cs @@ -10,7 +10,7 @@ using System.Threading.Tasks; namespace PapaCarloContracts.DataModels; -public class PostDataModel(string id, string postId, string postName, PostType postType, double salary, bool isActual, DateTime changeDate) : IValidation +public class PostDataModel(string id, string postId, string postName, PostType postType,bool isActual, DateTime changeDate) : IValidation { public string Id { get; private set; } = id; @@ -20,7 +20,6 @@ public class PostDataModel(string id, string postId, string postName, PostType p public PostType PostType { get; private set; } = postType; - public double Salary { get; private set; } = salary; public bool IsActual { get; private set; } = isActual; @@ -46,7 +45,5 @@ public class PostDataModel(string id, string postId, string postName, PostType p if (PostType == PostType.None) throw new ValidationException("Field PostType is empty"); - if (Salary <= 0) - throw new ValidationException("Field Salary is empty"); } } diff --git a/PapaCarloProject/PapaCarloContracts/DataModels/ProductDataModel.cs b/PapaCarloProject/PapaCarloContracts/DataModels/ProductDataModel.cs index 9fc1f26..6a1271b 100644 --- a/PapaCarloProject/PapaCarloContracts/DataModels/ProductDataModel.cs +++ b/PapaCarloProject/PapaCarloContracts/DataModels/ProductDataModel.cs @@ -10,7 +10,7 @@ using System.Threading.Tasks; namespace PapaCarloContracts.DataModels; -public class ProductDataModel(string id, string productName, ProductType productType, string blankId, double price, bool isDeleted) : IValidation +public class ProductDataModel(string id, string productName, ProductType productType, double price, bool isDeleted) : IValidation { public string Id { get; private set; } = id; @@ -18,7 +18,6 @@ public class ProductDataModel(string id, string productName, ProductType product public ProductType ProductType { get; private set; } = productType; - public string BlankId { get; private set; } = blankId; public double Price { get; private set; } = price; @@ -38,12 +37,6 @@ public class ProductDataModel(string id, string productName, ProductType product if (ProductType == ProductType.None) throw new ValidationException("Field ProductType is empty"); - if (BlankId.IsEmpty()) - throw new ValidationException("Field ManufacturerId is empty"); - - if (!BlankId.IsGuid()) - throw new ValidationException("The value in the field ManufacturerId is not a unique identifier"); - if (Price <= 0) throw new ValidationException("Field Price is less than or equal to 0"); } diff --git a/PapaCarloProject/PapaCarloTests/DataModelsTests/BuyerDataModelTests.cs b/PapaCarloProject/PapaCarloTests/DataModelsTests/BuyerDataModelTests.cs deleted file mode 100644 index 0cdca45..0000000 --- a/PapaCarloProject/PapaCarloTests/DataModelsTests/BuyerDataModelTests.cs +++ /dev/null @@ -1,74 +0,0 @@ -using PapaCarloContracts.DataModels; -using PapaCarloContracts.Exceptions; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace PapaCarloTests.DataModelsTests; - -[TestFixture] -internal class BuyerDataModelTests -{ - [Test] - public void IdIsNullOrEmptyTest() - { - var buyer = CreateDataModel(null, "fio", "number"); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - buyer = CreateDataModel(string.Empty, "fio", "number"); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - } - - [Test] - public void IdIsNotGuidTest() - { - var buyer = CreateDataModel("id", "fio", "number"); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - } - - [Test] - public void FIOIsNullOrEmptyTest() - { - var buyer = CreateDataModel(Guid.NewGuid().ToString(), null, "number"); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - buyer = CreateDataModel(Guid.NewGuid().ToString(), string.Empty, "number"); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - } - - [Test] - public void PhoneNumberIsNullOrEmptyTest() - { - var buyer = CreateDataModel(Guid.NewGuid().ToString(), "fio", null); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - buyer = CreateDataModel(Guid.NewGuid().ToString(), "fio", string.Empty); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - } - - [Test] - public void PhoneNumberIsIncorrectTest() - { - var buyer = CreateDataModel(Guid.NewGuid().ToString(), "fio", "777"); - Assert.That(() => buyer.Validate(), Throws.TypeOf()); - } - - [Test] - public void AllFieldsIsCorrectTest() - { - var buyerId = Guid.NewGuid().ToString(); - var fio = "Fio"; - var phoneNumber = "+7-777-777-77-77"; - var buyer = CreateDataModel(buyerId, fio, phoneNumber); - Assert.That(() => buyer.Validate(), Throws.Nothing); - Assert.Multiple(() => - { - Assert.That(buyer.Id, Is.EqualTo(buyerId)); - Assert.That(buyer.FIO, Is.EqualTo(fio)); - Assert.That(buyer.PhoneNumber, Is.EqualTo(phoneNumber)); - }); - } - - private static BuyerDataModel CreateDataModel(string? id, string? fio, string? phoneNumber) => - new(id, fio, phoneNumber); - -} diff --git a/PapaCarloProject/PapaCarloTests/DataModelsTests/PostDataModelTests.cs b/PapaCarloProject/PapaCarloTests/DataModelsTests/PostDataModelTests.cs index 5f001d5..327b864 100644 --- a/PapaCarloProject/PapaCarloTests/DataModelsTests/PostDataModelTests.cs +++ b/PapaCarloProject/PapaCarloTests/DataModelsTests/PostDataModelTests.cs @@ -15,57 +15,48 @@ internal class PostDataModelTests [Test] public void IdIsNullOrEmptyTest() { - var post = CreateDataModel(null, Guid.NewGuid().ToString(), "name", PostType.Carpenter, 10, true, DateTime.UtcNow); + var post = CreateDataModel(null, Guid.NewGuid().ToString(), "name", PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => post.Validate(), Throws.TypeOf()); - post = CreateDataModel(string.Empty, Guid.NewGuid().ToString(), "name", PostType.Carpenter, 10, true, DateTime.UtcNow); + post = CreateDataModel(string.Empty, Guid.NewGuid().ToString(), "name", PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => post.Validate(), Throws.TypeOf()); } [Test] public void IdIsNotGuidTest() { - var post = CreateDataModel("id", Guid.NewGuid().ToString(), "name", PostType.Carpenter, 10, true, DateTime.UtcNow); + var post = CreateDataModel("id", Guid.NewGuid().ToString(), "name", PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => post.Validate(), Throws.TypeOf()); } [Test] public void PostIdIsNullEmptyTest() { - var post = CreateDataModel(Guid.NewGuid().ToString(), null, "name", PostType.Carpenter, 10, true, DateTime.UtcNow); + var post = CreateDataModel(Guid.NewGuid().ToString(), null, "name", PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => post.Validate(), Throws.TypeOf()); - post = CreateDataModel(Guid.NewGuid().ToString(), string.Empty, "name", PostType.Carpenter, 10, true, DateTime.UtcNow); + post = CreateDataModel(Guid.NewGuid().ToString(), string.Empty, "name", PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => post.Validate(), Throws.TypeOf()); } [Test] public void PostIdIsNotGuidTest() { - var post = CreateDataModel(Guid.NewGuid().ToString(), "postId", "name", PostType.Carpenter, 10, true, DateTime.UtcNow); + var post = CreateDataModel(Guid.NewGuid().ToString(), "postId", "name", PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => post.Validate(), Throws.TypeOf()); } [Test] public void PostNameIsEmptyTest() { - var manufacturer = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), null, PostType.Carpenter, 10, true, DateTime.UtcNow); + var manufacturer = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), null, PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => manufacturer.Validate(), Throws.TypeOf()); - manufacturer = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), string.Empty, PostType.Carpenter, 10, true, DateTime.UtcNow); + manufacturer = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), string.Empty, PostType.Carpenter, true, DateTime.UtcNow); Assert.That(() => manufacturer.Validate(), Throws.TypeOf()); } [Test] public void PostTypeIsNoneTest() { - var post = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), "name", PostType.None, 10, true, DateTime.UtcNow); - Assert.That(() => post.Validate(), Throws.TypeOf()); - } - - [Test] - public void SalaryIsLessOrZeroTest() - { - var post = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), "name", PostType.Carpenter, 0, true, DateTime.UtcNow); - Assert.That(() => post.Validate(), Throws.TypeOf()); - post = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), "name", PostType.Carpenter, -10, true, DateTime.UtcNow); + var post = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), "name", PostType.None, true, DateTime.UtcNow); Assert.That(() => post.Validate(), Throws.TypeOf()); } @@ -76,10 +67,9 @@ internal class PostDataModelTests var postPostId = Guid.NewGuid().ToString(); var postName = "name"; var postType = PostType.Carpenter; - var salary = 10; var isActual = false; var changeDate = DateTime.UtcNow.AddDays(-1); - var post = CreateDataModel(postId, postPostId, postName, postType, salary, isActual, changeDate); + var post = CreateDataModel(postId, postPostId, postName, postType,isActual, changeDate); Assert.That(() => post.Validate(), Throws.Nothing); Assert.Multiple(() => { @@ -87,12 +77,11 @@ internal class PostDataModelTests Assert.That(post.PostId, Is.EqualTo(postPostId)); Assert.That(post.PostName, Is.EqualTo(postName)); Assert.That(post.PostType, Is.EqualTo(postType)); - Assert.That(post.Salary, Is.EqualTo(salary)); Assert.That(post.IsActual, Is.EqualTo(isActual)); Assert.That(post.ChangeDate, Is.EqualTo(changeDate)); }); } - private static PostDataModel CreateDataModel(string? id, string? postId, string? postName, PostType postType, double salary, bool isActual, DateTime changeDate) => - new(id, postId, postName, postType, salary, isActual, changeDate); + private static PostDataModel CreateDataModel(string? id, string? postId, string? postName, PostType postType, bool isActual, DateTime changeDate) => + new(id, postId, postName, postType, isActual, changeDate); } diff --git a/PapaCarloProject/PapaCarloTests/DataModelsTests/ProductDataModelTests.cs b/PapaCarloProject/PapaCarloTests/DataModelsTests/ProductDataModelTests.cs index 4d70c16..8d4e683 100644 --- a/PapaCarloProject/PapaCarloTests/DataModelsTests/ProductDataModelTests.cs +++ b/PapaCarloProject/PapaCarloTests/DataModelsTests/ProductDataModelTests.cs @@ -15,57 +15,42 @@ internal class ProductDataModelTests [Test] public void IdIsNullOrEmptyTest() { - var product = CreateDataModel(null, "name", ProductType.Furniture, Guid.NewGuid().ToString(), 10, false); + var product = CreateDataModel(null, "name", ProductType.Furniture, 10, false); Assert.That(() => product.Validate(), Throws.TypeOf()); - product = CreateDataModel(string.Empty, "name", ProductType.Furniture, Guid.NewGuid().ToString(), 10, false); + product = CreateDataModel(string.Empty, "name", ProductType.Furniture, 10, false); Assert.That(() => product.Validate(), Throws.TypeOf()); } [Test] public void IdIsNotGuidTest() { - var product = CreateDataModel("id", "name", ProductType.Furniture, Guid.NewGuid().ToString(), 10, false); + var product = CreateDataModel("id", "name", ProductType.Furniture, 10, false); Assert.That(() => product.Validate(), Throws.TypeOf()); } [Test] public void ProductNameIsEmptyTest() { - var product = CreateDataModel(Guid.NewGuid().ToString(), null, ProductType.Furniture, Guid.NewGuid().ToString(), 10, false); + var product = CreateDataModel(Guid.NewGuid().ToString(), null, ProductType.Furniture, 10, false); Assert.That(() => product.Validate(), Throws.TypeOf()); - product = CreateDataModel(Guid.NewGuid().ToString(), string.Empty, ProductType.Furniture, Guid.NewGuid().ToString(), 10, false); + product = CreateDataModel(Guid.NewGuid().ToString(), string.Empty, ProductType.Furniture, 10, false); Assert.That(() => product.Validate(), Throws.TypeOf()); } [Test] public void ProductTypeIsNoneTest() { - var product = CreateDataModel(Guid.NewGuid().ToString(), null, ProductType.None, Guid.NewGuid().ToString(), 10, false); + var product = CreateDataModel(Guid.NewGuid().ToString(), null, ProductType.None, 10, false); Assert.That(() => product.Validate(), Throws.TypeOf()); } - [Test] - public void BlankIdIsNullOrEmptyTest() - { - var product = CreateDataModel(Guid.NewGuid().ToString(), "name", ProductType.Furniture, null, 10, false); - Assert.That(() => product.Validate(), Throws.TypeOf()); - product = CreateDataModel(Guid.NewGuid().ToString(), "name", ProductType.Furniture, string.Empty, 10, false); - Assert.That(() => product.Validate(), Throws.TypeOf()); - } - - [Test] - public void BlankIdIsNotGuidTest() - { - var product = CreateDataModel(Guid.NewGuid().ToString(), "name", ProductType.Furniture, "blankId", 10, false); - Assert.That(() => product.Validate(), Throws.TypeOf()); - } [Test] public void PriceIsLessOrZeroTest() { - var product = CreateDataModel(Guid.NewGuid().ToString(), "name", ProductType.Furniture, Guid.NewGuid().ToString(), 0, false); + var product = CreateDataModel(Guid.NewGuid().ToString(), "name", ProductType.Furniture, 0, false); Assert.That(() => product.Validate(), Throws.TypeOf()); - product = CreateDataModel(Guid.NewGuid().ToString(), "name", ProductType.Furniture, Guid.NewGuid().ToString(), -10, false); + product = CreateDataModel(Guid.NewGuid().ToString(), "name", ProductType.Furniture, -10, false); Assert.That(() => product.Validate(), Throws.TypeOf()); } @@ -75,22 +60,20 @@ internal class ProductDataModelTests var productId = Guid.NewGuid().ToString(); var productName = "name"; var productType = ProductType.Furniture; - var productBlankId = Guid.NewGuid().ToString(); var productPrice = 10; var productIsDelete = false; - var product = CreateDataModel(productId, productName, productType, productBlankId, productPrice, productIsDelete); + var product = CreateDataModel(productId, productName, productType, productPrice, productIsDelete); Assert.That(() => product.Validate(), Throws.Nothing); Assert.Multiple(() => { Assert.That(product.Id, Is.EqualTo(productId)); Assert.That(product.ProductName, Is.EqualTo(productName)); Assert.That(product.ProductType, Is.EqualTo(productType)); - Assert.That(product.BlankId, Is.EqualTo(productBlankId)); Assert.That(product.Price, Is.EqualTo(productPrice)); Assert.That(product.IsDeleted, Is.EqualTo(productIsDelete)); }); } - private static ProductDataModel CreateDataModel(string? id, string? productName, ProductType productType, string? blankId, double price, bool isDeleted) => - new(id, productName, productType, blankId, price, isDeleted); + private static ProductDataModel CreateDataModel(string? id, string? productName, ProductType productType, double price, bool isDeleted) => + new(id, productName, productType, price, isDeleted); }