Suppression des constructeurs de SolutionEntity

pull/40/head
Clement CHIEU 1 year ago
parent c4dd76334d
commit 9202afb4e6

@ -12,42 +12,14 @@ public class SolutionEntity
[Required]
public int OwnerId { get; set; }
public InquiryEntity? Owner { get; set; }
public string? MurdererFirstName { get; set; }
public string? MurdererLastName { get; set; }
public string? MurderPlace { get; set; }
public string? MurderWeapon { get; set; }
public string? Explaination { get; set; }
public string MurdererFirstName { get; set; }
public string MurdererLastName { get; set; }
public string MurderPlace { get; set; }
public string MurderWeapon { get; set; }
public string Explaination { get; set; }
public SolutionEntity() { }
public SolutionEntity(int ownerId)
{
OwnerId = ownerId;
}
public SolutionEntity(int ownerId, InquiryEntity? owner, string murdererFirstName, string murdererLastName, string murderPlace, string murderWeapon, string explaination)
{
OwnerId = ownerId;
Owner = owner;
MurdererFirstName = murdererFirstName;
MurdererLastName = murdererLastName;
MurderPlace = murderPlace;
MurderWeapon = murderWeapon;
Explaination = explaination;
}
public SolutionEntity(InquiryEntity? owner, string murdererFirstName, string murdererLastName, string murderPlace, string murderWeapon, string explaination)
{
Owner = owner;
MurdererFirstName = murdererFirstName;
MurdererLastName = murdererLastName;
MurderPlace = murderPlace;
MurderWeapon = murderWeapon;
Explaination = explaination;
}
public SolutionEntity(int ownerId, string murdererFirstName, string murdererLastName, string murderPlace, string murderWeapon, string explanation)
{
OwnerId = ownerId;
MurdererFirstName = murdererFirstName;
MurdererLastName = murdererLastName;
MurderPlace = murderPlace;
MurderWeapon = murderWeapon;
Explaination = explanation;
}
}

@ -6,7 +6,7 @@ namespace Shared.Mapper;
public static class SolutionMapper
{
public static Solution FromDTOToModel(this SolutionDTO dto)
public static Solution FromDtoToModel(this SolutionDTO dto)
{
return new Solution(dto.OwnerId, dto.MurdererFirstName, dto.MurdererLastName, dto.MurderPlace, dto.MurderWeapon,
dto.Explanation);
@ -18,13 +18,13 @@ public static class SolutionMapper
entity.MurderWeapon, entity.Explaination);
}
public static SolutionDTO FromModelToDTO(this Solution model)
public static SolutionDTO FromModelToDto(this Solution model)
{
return new SolutionDTO(model.OwnerId, model.MurdererFirstName, model.MurdererLastName, model.MurderPlace,
model.MurderWeapon, model.Explanation);
}
public static SolutionDTO FromEntityToDTO(this SolutionEntity entity)
public static SolutionDTO FromEntityToDto(this SolutionEntity entity)
{
return new SolutionDTO(entity.OwnerId, entity.MurdererFirstName, entity.MurdererLastName, entity.MurderPlace,
entity.MurderWeapon, entity.Explaination);
@ -32,21 +32,35 @@ public static class SolutionMapper
public static SolutionEntity FromModelToEntity(this Solution model)
{
return new SolutionEntity(model.OwnerId, new InquiryEntity
return new SolutionEntity
{
OwnerId = model.OwnerId,
Owner = new InquiryEntity
{
Id = model.OwnerId
},
model.MurdererFirstName,
model.MurdererLastName, model.MurderPlace, model.MurderWeapon, model.Explanation);
MurdererFirstName = model.MurdererFirstName,
MurdererLastName = model.MurdererLastName,
MurderPlace = model.MurderPlace,
MurderWeapon = model.MurderWeapon,
Explaination = model.Explanation
};
}
public static SolutionEntity FromDTOToEntity(this SolutionDTO dto)
public static SolutionEntity FromDtoToEntity(this SolutionDTO dto)
{
return new SolutionEntity(dto.OwnerId, new InquiryEntity
return new SolutionEntity
{
OwnerId = dto.OwnerId,
Owner = new InquiryEntity
{
Id = dto.OwnerId
},
dto.MurdererFirstName,
dto.MurdererLastName, dto.MurderPlace, dto.MurderWeapon, dto.Explanation);
MurdererFirstName = dto.MurdererFirstName,
MurdererLastName = dto.MurdererLastName,
MurderPlace = dto.MurderPlace,
MurderWeapon = dto.MurderWeapon,
Explaination = dto.Explanation
};
}
}

@ -107,9 +107,33 @@ public class StubbedContext : UserDbContext
});
modelBuilder.Entity<SolutionEntity>().HasData(
new SolutionEntity(1, "Maxime", "Sapountzis", "La cuisine", "Le couteau", "Parce que c'est Maxime"),
new SolutionEntity(2, "Johnny", "Ratton", "La cuisine", "Le couteau", "Parce que il est ra****"),
new SolutionEntity(3, "Erwan", "Menager", "La salle de bain", "L'arachide", "Parce que c'est Erwan"));
new SolutionEntity
{
OwnerId = 1,
MurdererFirstName = "Maxime",
MurdererLastName = "Sapountzis",
MurderPlace = "La cuisine",
MurderWeapon = "Le couteau",
Explaination = "Parce que c'est Maxime"
},
new SolutionEntity
{
OwnerId = 2,
MurdererFirstName = "Johnny",
MurdererLastName = "Ratton",
MurderPlace = "La cuisine",
MurderWeapon = "Le couteau",
Explaination = "Parce que il est fou"
},
new SolutionEntity
{
OwnerId = 3,
MurdererFirstName = "Erwan",
MurdererLastName = "Menager",
MurderPlace = "La salle de bain",
MurderWeapon = "L'arachide",
Explaination = "Parce que c'est Erwan"
});
modelBuilder.Entity<InquiryEntity>().HasData(
new InquiryEntity

@ -1,16 +1,16 @@
using Entities;
namespace TestEF;
namespace TestEF.EntitiesTests;
public class TestSolutionEntity
{
private const string _murdererFirstName = "John";
private const string _murdererLastName = "Doe";
private const string _murderPlace = "WhiteHouse";
private const string _murderWeapon = "Nuclear Bomb";
private const string _explaination = "This is an explaination";
private const int _inquiryId = 42;
private static InquiryEntity _inquiry = new InquiryEntity();
private const string MurdererFirstName = "John";
private const string MurdererLastName = "Doe";
private const string MurderPlace = "WhiteHouse";
private const string MurderWeapon = "Nuclear Bomb";
private const string Explaination = "This is an explaination";
private const int InquiryId = 42;
private static readonly InquiryEntity Inquiry = new();
[Fact]
public void TestDefaultConstructor()
@ -28,8 +28,11 @@ public class TestSolutionEntity
[Fact]
public void TestConstructorWithOnlyId()
{
SolutionEntity solution = new SolutionEntity(_inquiryId);
Assert.Equal(_inquiryId, solution.OwnerId);
SolutionEntity solution = new SolutionEntity
{
OwnerId = InquiryId
};
Assert.Equal(InquiryId, solution.OwnerId);
Assert.Null(solution.Owner);
Assert.Null(solution.MurdererFirstName);
Assert.Null(solution.MurdererLastName);
@ -41,29 +44,46 @@ public class TestSolutionEntity
[Fact]
public void TestConstructorWithoutOwnerId()
{
SolutionEntity solution = new SolutionEntity(_inquiry, _murdererFirstName, _murdererLastName, _murderPlace,
_murderWeapon, _explaination);
SolutionEntity solution = new SolutionEntity
{
Owner = Inquiry,
MurdererFirstName = MurdererFirstName,
MurdererLastName = MurdererLastName,
MurderPlace = MurderPlace,
MurderWeapon = MurderWeapon,
Explaination = Explaination
};
Assert.Equal(0, solution.OwnerId);
Assert.Equal(_inquiry, solution.Owner);
Assert.Equal(_murdererFirstName, solution.MurdererFirstName);
Assert.Equal(_murdererLastName, solution.MurdererLastName);
Assert.Equal(_murderPlace, solution.MurderPlace);
Assert.Equal(_murderWeapon, solution.MurderWeapon);
Assert.Equal(_explaination, solution.Explaination);
Assert.Equal(Inquiry, solution.Owner);
Assert.Equal(MurdererFirstName, solution.MurdererFirstName);
Assert.Equal(MurdererLastName, solution.MurdererLastName);
Assert.Equal(MurderPlace, solution.MurderPlace);
Assert.Equal(MurderWeapon, solution.MurderWeapon);
Assert.Equal(Explaination, solution.Explaination);
}
[Fact]
public void TestConstructorWithAllAttributes()
{
SolutionEntity solution = new SolutionEntity(_inquiryId, _inquiry, _murdererFirstName, _murdererLastName,
_murderPlace, _murderWeapon, _explaination);
Assert.Equal(_inquiryId, solution.OwnerId);
Assert.Equal(_inquiry, solution.Owner);
Assert.Equal(_murdererFirstName, solution.MurdererFirstName);
Assert.Equal(_murdererLastName, solution.MurdererLastName);
Assert.Equal(_murderPlace, solution.MurderPlace);
Assert.Equal(_murderWeapon, solution.MurderWeapon);
Assert.Equal(_explaination, solution.Explaination);
SolutionEntity solution = new SolutionEntity
{
OwnerId = InquiryId,
Owner = Inquiry,
MurdererFirstName = MurdererFirstName,
MurdererLastName = MurdererLastName,
MurderPlace = MurderPlace,
MurderWeapon = MurderWeapon,
Explaination = Explaination
};
Assert.Equal(InquiryId, solution.OwnerId);
Assert.Equal(Inquiry, solution.Owner);
Assert.Equal(MurdererFirstName, solution.MurdererFirstName);
Assert.Equal(MurdererLastName, solution.MurdererLastName);
Assert.Equal(MurderPlace, solution.MurderPlace);
Assert.Equal(MurderWeapon, solution.MurderWeapon);
Assert.Equal(Explaination, solution.Explaination);
}
[Fact]
@ -78,8 +98,15 @@ public class TestSolutionEntity
const string explanation = "This is an explanation";
// Act
var solutionEntity = new SolutionEntity(ownerId, murdererFirstName, murdererLastName, murderPlace, murderWeapon,
explanation);
var solutionEntity = new SolutionEntity
{
OwnerId = ownerId,
MurdererFirstName = murdererFirstName,
MurdererLastName = murdererLastName,
MurderPlace = murderPlace,
MurderWeapon = murderWeapon,
Explaination = explanation
};
// Assert
Assert.Equal(ownerId, solutionEntity.OwnerId);

Loading…
Cancel
Save