72 lines
2.7 KiB
C#
72 lines
2.7 KiB
C#
using ElectricalRepairServiceContract.DataModels;
|
|
using ElectricalRepairServiceContract.Exceptions;
|
|
|
|
|
|
namespace ElectricalRepairServiceTests.DataModelsTests
|
|
{
|
|
[TestFixture]
|
|
internal class DetailsUseDataModelTest
|
|
{
|
|
[Test]
|
|
public void DetailsIdIsNullOrEmptyTest()
|
|
{
|
|
var detailsUse = CreateDataModel(null, Guid.NewGuid().ToString(), 1);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
|
|
detailsUse = CreateDataModel(string.Empty, Guid.NewGuid().ToString(), 1);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void DetailsIdIsNotGuidTest()
|
|
{
|
|
var detailsUse = CreateDataModel("invalid-id", Guid.NewGuid().ToString(), 1);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void RequestIdIsNullOrEmptyTest()
|
|
{
|
|
var detailsUse = CreateDataModel(Guid.NewGuid().ToString(), null, 1);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
|
|
detailsUse = CreateDataModel(Guid.NewGuid().ToString(), string.Empty, 1);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void RequestIdIsNotGuidTest()
|
|
{
|
|
var detailsUse = CreateDataModel(Guid.NewGuid().ToString(), "invalid-id", 1);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void CountIsZeroOrNegativeTest()
|
|
{
|
|
var detailsUse = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), -1);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
|
|
detailsUse = CreateDataModel(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), 0);
|
|
Assert.That(() => detailsUse.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void AllFieldsCorrectTest()
|
|
{
|
|
var detailsId = Guid.NewGuid().ToString();
|
|
var requestId = Guid.NewGuid().ToString();
|
|
var count = 10;
|
|
|
|
var detailsUse = CreateDataModel(detailsId, requestId, count);
|
|
|
|
Assert.That(detailsUse.DetailsId, Is.EqualTo(detailsId));
|
|
Assert.That(detailsUse.RequestId, Is.EqualTo(requestId));
|
|
Assert.That(detailsUse.Count, Is.EqualTo(count));
|
|
}
|
|
|
|
private DetailsUseDataModel CreateDataModel(string detailsId, string requestId, int count)
|
|
=> new DetailsUseDataModel(detailsId, requestId, count);
|
|
}
|
|
}
|