73 lines
2.7 KiB
C#
73 lines
2.7 KiB
C#
using ElectricalRepairServiceContract.DataModels;
|
|
using ElectricalRepairServiceContract.Exceptions;
|
|
using NUnit.Framework;
|
|
using System;
|
|
|
|
namespace ElectricalRepairServiceTests.DataModelsTests
|
|
{
|
|
[TestFixture]
|
|
internal class EmploeeDataModelTest
|
|
{
|
|
[Test]
|
|
public void IdIsNullOrEmptyTest()
|
|
{
|
|
var employee = CreateDataModel(null, "ValidName", Guid.NewGuid().ToString());
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
|
|
employee = CreateDataModel(string.Empty, "ValidName", Guid.NewGuid().ToString());
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void IdIsNotGuidTest()
|
|
{
|
|
var employee = CreateDataModel("invalid-id", "ValidName", Guid.NewGuid().ToString());
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void NameIsNullOrEmptyTest()
|
|
{
|
|
var employee = CreateDataModel(Guid.NewGuid().ToString(), null, Guid.NewGuid().ToString());
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
|
|
employee = CreateDataModel(Guid.NewGuid().ToString(), string.Empty, Guid.NewGuid().ToString());
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void PostIdIsNullOrEmptyTest()
|
|
{
|
|
var employee = CreateDataModel(Guid.NewGuid().ToString(), "ValidName", null);
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
|
|
employee = CreateDataModel(Guid.NewGuid().ToString(), "ValidName", string.Empty);
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void PostIdIsNotGuidTest()
|
|
{
|
|
var employee = CreateDataModel(Guid.NewGuid().ToString(), "ValidName", "invalid-post-id");
|
|
Assert.That(() => employee.Validate(), Throws.TypeOf<ValidationException>());
|
|
}
|
|
|
|
[Test]
|
|
public void AllFieldsCorrectTest()
|
|
{
|
|
var id = Guid.NewGuid().ToString();
|
|
var name = "ValidName";
|
|
var postId = Guid.NewGuid().ToString();
|
|
|
|
var employee = CreateDataModel(id, name, postId);
|
|
|
|
Assert.That(employee.Id, Is.EqualTo(id));
|
|
Assert.That(employee.Name, Is.EqualTo(name));
|
|
Assert.That(employee.PostId, Is.EqualTo(postId));
|
|
}
|
|
|
|
private EmploeeDataModel CreateDataModel(string id, string name, string postId)
|
|
=> new EmploeeDataModel(id, name, postId);
|
|
}
|
|
}
|