Suppression des constructeurs de Inquiry

pull/40/head
Clement CHIEU 1 year ago
parent b22e31d352
commit d0efe824ec

@ -5,33 +5,8 @@ namespace Entities;
public class InquiryEntity public class InquiryEntity
{ {
[Key] public int Id { get; } [Key] public int Id { get; set; }
public string Title { get; set; } public string Title { get; set; }
public string Description { get; set; } public string Description { get; set; }
public bool IsUser { get; set; } public bool IsUser { get; set; }
public InquiryEntity()
{
}
public InquiryEntity(int id)
{
Id = id;
}
public InquiryEntity(string title, string description, bool isUser)
{
Id = 0;
Title = title;
Description = description;
IsUser = isUser;
}
public InquiryEntity(int id, string title, string description, bool isUser)
{
Id = id;
Title = title;
Description = description;
IsUser = isUser;
}
} }

@ -38,7 +38,7 @@ public class InquiryDataService : IInquiryDataService
} }
var inquiries = query.ToList(); var inquiries = query.ToList();
return inquiries.Select(s => s.FromEntityToDTO()); return inquiries.Select(s => s.FromEntityToDto());
} }
public InquiryDTO GetInquiryById(int id) public InquiryDTO GetInquiryById(int id)
@ -49,7 +49,7 @@ public class InquiryDataService : IInquiryDataService
throw new ArgumentException("Impossible de trouver l'enquête", nameof(id)); throw new ArgumentException("Impossible de trouver l'enquête", nameof(id));
} }
return inquiryEntity.FromEntityToDTO(); return inquiryEntity.FromEntityToDto();
} }
public InquiryDTO GetInquiryByTitle(string title) public InquiryDTO GetInquiryByTitle(string title)
@ -60,13 +60,13 @@ public class InquiryDataService : IInquiryDataService
throw new ArgumentException("Impossible de trouver l'enquête", nameof(title)); throw new ArgumentException("Impossible de trouver l'enquête", nameof(title));
} }
return inquiryEntity.FromEntityToDTO(); return inquiryEntity.FromEntityToDto();
} }
public InquiryDTO CreateInquiry(string title, string description, bool isUser) public InquiryDTO CreateInquiry(string title, string description, bool isUser)
{ {
var newInquiryEntity = new InquiryDTO(title, description, isUser); var newInquiryEntity = new InquiryDTO(title, description, isUser);
DbContext.Inquiries.Add(newInquiryEntity.FromDTOToEntity()); DbContext.Inquiries.Add(newInquiryEntity.FromDtoToEntity());
DbContext.SaveChangesAsync(); DbContext.SaveChangesAsync();
return newInquiryEntity; return newInquiryEntity;
} }
@ -96,6 +96,6 @@ public class InquiryDataService : IInquiryDataService
updatingInquiry.Description = inquiry.Description; updatingInquiry.Description = inquiry.Description;
updatingInquiry.IsUser = inquiry.IsUser; updatingInquiry.IsUser = inquiry.IsUser;
DbContext.SaveChangesAsync(); DbContext.SaveChangesAsync();
return updatingInquiry.FromEntityToDTO(); return updatingInquiry.FromEntityToDto();
} }
} }

@ -6,7 +6,7 @@ namespace Shared.Mapper;
public static class InquiryMapper public static class InquiryMapper
{ {
public static Inquiry FromDTOToModel(this InquiryDTO inqDto) public static Inquiry FromDtoToModel(this InquiryDTO inqDto)
{ {
return new Inquiry(inqDto.Id, inqDto.Title, inqDto.Description, inqDto.IsUser); return new Inquiry(inqDto.Id, inqDto.Title, inqDto.Description, inqDto.IsUser);
} }
@ -19,20 +19,32 @@ public static class InquiryMapper
public static InquiryEntity FromModelToEntity(this Inquiry inq) public static InquiryEntity FromModelToEntity(this Inquiry inq)
{ {
return new InquiryEntity(inq.Id, inq.Title, inq.Description, inq.IsUser); return new InquiryEntity
{
Id = inq.Id,
Title = inq.Title,
Description = inq.Description,
IsUser = inq.IsUser
};
} }
public static InquiryEntity FromDTOToEntity(this InquiryDTO inqDto) public static InquiryEntity FromDtoToEntity(this InquiryDTO inqDto)
{ {
return new InquiryEntity(inqDto.Id, inqDto.Title, inqDto.Description, inqDto.IsUser); return new InquiryEntity
{
Id = inqDto.Id,
Title = inqDto.Title,
Description = inqDto.Description,
IsUser = inqDto.IsUser
};
} }
public static InquiryDTO FromModelToDTO(this Inquiry inq) public static InquiryDTO FromModelToDto(this Inquiry inq)
{ {
return new InquiryDTO(inq.Id, inq.Title, inq.Description, inq.IsUser); return new InquiryDTO(inq.Id, inq.Title, inq.Description, inq.IsUser);
} }
public static InquiryDTO FromEntityToDTO(this InquiryEntity inqEntity) public static InquiryDTO FromEntityToDto(this InquiryEntity inqEntity)
{ {
return new InquiryDTO(inqEntity.Id, inqEntity.Title, inqEntity.Description, inqEntity.IsUser); return new InquiryDTO(inqEntity.Id, inqEntity.Title, inqEntity.Description, inqEntity.IsUser);
} }

@ -28,13 +28,21 @@ public static class NotepadMapper
public static NotepadEntity FromDTOToEntity(this NotepadDTO dto) public static NotepadEntity FromDTOToEntity(this NotepadDTO dto)
{ {
return new NotepadEntity(dto.Id, new UserEntity(dto.UserId), dto.UserId, new InquiryEntity(dto.InquiryId), return new NotepadEntity(dto.Id, new UserEntity(dto.UserId), dto.UserId,
new InquiryEntity
{
Id = dto.InquiryId
},
dto.Notes); dto.Notes);
} }
public static NotepadEntity FromModelToEntity(this Notepad not) public static NotepadEntity FromModelToEntity(this Notepad not)
{ {
return new NotepadEntity(not.Id, new UserEntity(not.UserId), not.UserId, new InquiryEntity(not.InquiryId), return new NotepadEntity(not.Id, new UserEntity(not.UserId), not.UserId,
new InquiryEntity
{
Id = not.InquiryId
},
not.Notes); not.Notes);
} }
} }

@ -32,13 +32,21 @@ public static class SolutionMapper
public static SolutionEntity FromModelToEntity(this Solution model) public static SolutionEntity FromModelToEntity(this Solution model)
{ {
return new SolutionEntity(model.OwnerId, new InquiryEntity(model.OwnerId), model.MurdererFirstName, return new SolutionEntity(model.OwnerId, new InquiryEntity
{
Id = model.OwnerId
},
model.MurdererFirstName,
model.MurdererLastName, model.MurderPlace, model.MurderWeapon, model.Explanation); model.MurdererLastName, model.MurderPlace, model.MurderWeapon, model.Explanation);
} }
public static SolutionEntity FromDTOToEntity(this SolutionDTO dto) public static SolutionEntity FromDTOToEntity(this SolutionDTO dto)
{ {
return new SolutionEntity(dto.OwnerId, new InquiryEntity(dto.OwnerId), dto.MurdererFirstName, return new SolutionEntity(dto.OwnerId, new InquiryEntity
{
Id = dto.OwnerId
},
dto.MurdererFirstName,
dto.MurdererLastName, dto.MurderPlace, dto.MurderWeapon, dto.Explanation); dto.MurdererLastName, dto.MurderPlace, dto.MurderWeapon, dto.Explanation);
} }
} }

@ -29,12 +29,20 @@ public static class SuccessMapper
public static SuccessEntity FromDTOToEntity(this SuccessDTO dto) public static SuccessEntity FromDTOToEntity(this SuccessDTO dto)
{ {
return new SuccessEntity(dto.UserId, new UserEntity(dto.UserId), dto.InquiryId, return new SuccessEntity(dto.UserId, new UserEntity(dto.UserId), dto.InquiryId,
new InquiryEntity(dto.InquiryId), dto.IsFinished); new InquiryEntity
{
Id = dto.InquiryId
},
dto.IsFinished);
} }
public static SuccessEntity FromModelToEntity(this Success suc) public static SuccessEntity FromModelToEntity(this Success suc)
{ {
return new SuccessEntity(suc.UserId, new UserEntity(suc.UserId), suc.InquiryId, return new SuccessEntity(suc.UserId, new UserEntity(suc.UserId), suc.InquiryId,
new InquiryEntity(suc.InquiryId), suc.IsFinished); new InquiryEntity
{
Id = suc.InquiryId
},
suc.IsFinished);
} }
} }

@ -62,8 +62,26 @@ public class StubbedContext : UserDbContext
new SolutionEntity(3, "Erwan", "Menager", "La salle de bain", "L'arachide", "Parce que c'est Erwan")); new SolutionEntity(3, "Erwan", "Menager", "La salle de bain", "L'arachide", "Parce que c'est Erwan"));
modelBuilder.Entity<InquiryEntity>().HasData( modelBuilder.Entity<InquiryEntity>().HasData(
new InquiryEntity(1, "L'enquête de la carotte", "La description de l'inquiry1", true), new InquiryEntity
new InquiryEntity(2, "L'enquête sur les orang outan", "The new description", false), {
new InquiryEntity(3, "L'enquête sur les parapluies", "Il pleuvait", false)); Id = 1,
Title = "L'enquête de la carotte",
Description = "La description de l'inquiry1",
IsUser = true
},
new InquiryEntity
{
Id = 2,
Title = "L'enquête sur les orang outan",
Description = "The new description",
IsUser = false
},
new InquiryEntity
{
Id = 3,
Title = "L'enquête sur les parapluies",
Description = "Il pleuvait",
IsUser = false
});
} }
} }

@ -173,10 +173,12 @@ using (var db = new StubbedContext(options))
// Ajout d'une enquete // Ajout d'une enquete
Console.WriteLine("\nAjout de la nouvelle enquete"); Console.WriteLine("\nAjout de la nouvelle enquete");
var newInquiry = new InquiryEntity( var newInquiry = new InquiryEntity
"La nouvelle enquete", {
"La description de la nouvelle enquete", Title = "La nouvelle enquete",
true); Description = "La description de la nouvelle enquete",
IsUser = true
};
if (!inquiries.Any(inquiry => inquiry.Title == newInquiry.Title)) if (!inquiries.Any(inquiry => inquiry.Title == newInquiry.Title))
{ {
inquiries.Add(newInquiry); inquiries.Add(newInquiry);

@ -4,15 +4,15 @@ namespace TestEF.EntitiesTests;
public class TestInquiryEntity public class TestInquiryEntity
{ {
private const int _id = 42; private const int Id = 42;
private const string _title = "Title"; private const string Title = "Title";
private const string _description = "_description"; private const string Description = "_description";
private const bool _isUser = true; private const bool IsUser = true;
[Fact] [Fact]
public void TestDefaultConstructor() public void TestDefaultConstructor()
{ {
InquiryEntity inquiry = new InquiryEntity(); var inquiry = new InquiryEntity();
Assert.Equal(0, inquiry.Id); Assert.Equal(0, inquiry.Id);
Assert.Null(inquiry.Title); Assert.Null(inquiry.Title);
Assert.Null(inquiry.Description); Assert.Null(inquiry.Description);
@ -22,8 +22,11 @@ public class TestInquiryEntity
[Fact] [Fact]
public void TestConstructorWithOnlyId() public void TestConstructorWithOnlyId()
{ {
InquiryEntity inquiry = new InquiryEntity(_id); var inquiry = new InquiryEntity
Assert.Equal(_id, inquiry.Id); {
Id = Id
};
Assert.Equal(Id, inquiry.Id);
Assert.Null(inquiry.Title); Assert.Null(inquiry.Title);
Assert.Null(inquiry.Description); Assert.Null(inquiry.Description);
Assert.False(inquiry.IsUser); Assert.False(inquiry.IsUser);
@ -32,20 +35,31 @@ public class TestInquiryEntity
[Fact] [Fact]
public void TestConstructorWithoutId() public void TestConstructorWithoutId()
{ {
InquiryEntity inquiry = new InquiryEntity(_title,_description,_isUser); var inquiry = new InquiryEntity
{
Title = Title,
Description = Description,
IsUser = IsUser
};
Assert.Equal(0, inquiry.Id); Assert.Equal(0, inquiry.Id);
Assert.Equal(_title,inquiry.Title); Assert.Equal(Title, inquiry.Title);
Assert.Equal(_description,inquiry.Description); Assert.Equal(Description, inquiry.Description);
Assert.True(inquiry.IsUser); Assert.True(inquiry.IsUser);
} }
[Fact] [Fact]
public void TestConstructorWithAllAttributes() public void TestConstructorWithAllAttributes()
{ {
InquiryEntity inquiry = new InquiryEntity(_id,_title,_description,_isUser); var inquiry = new InquiryEntity
Assert.Equal(_id, inquiry.Id); {
Assert.Equal(_title,inquiry.Title); Id = Id,
Assert.Equal(_description,inquiry.Description); Title = Title,
Description = Description,
IsUser = IsUser
};
Assert.Equal(Id, inquiry.Id);
Assert.Equal(Title, inquiry.Title);
Assert.Equal(Description, inquiry.Description);
Assert.True(inquiry.IsUser); Assert.True(inquiry.IsUser);
} }
} }
Loading…
Cancel
Save