diff --git a/Controllers/TicketsController.cs b/Controllers/TicketsController.cs index c61ce5b..17dac2c 100644 --- a/Controllers/TicketsController.cs +++ b/Controllers/TicketsController.cs @@ -131,7 +131,7 @@ namespace TicketManager.Controllers // .Include(p => p.Edits) // .Include(p => p.Notes) // .Include(p => p.Files) - .Include(p => p.Creator) + // .Include(p => p.Creator) ; } diff --git a/Models/Project.cs b/Models/Project.cs index edc57eb..acebe5f 100644 --- a/Models/Project.cs +++ b/Models/Project.cs @@ -89,6 +89,7 @@ namespace TicketManager.Models UserId = user.Id }; this.Assignments.Add(newAssign); + user.Assignments.Add(newAssign); } } diff --git a/Models/Ticket.cs b/Models/Ticket.cs index 29c5e01..abd1ede 100644 --- a/Models/Ticket.cs +++ b/Models/Ticket.cs @@ -30,12 +30,12 @@ namespace TicketManager.Models public Category Category { get; set; } = Category.Undefined; [Display(Name = "Created By")] - public AppUser Creator { get; set; } + // public AppUser Creator { get; set; } public Guid CreatorId { get; set; } [Display(Name = "Project")] public Project Project { get; set; } - public int ProjectId { get; set; } + // public int ProjectId { get; set; } public List Notes = new List(); public List Edits = new List(); diff --git a/README.md b/README.md index 58a57d0..d37ede2 100644 --- a/README.md +++ b/README.md @@ -44,3 +44,4 @@ - setMembers & removeMembers from project api not working - Write a query class to refactor code and optimize perf on get queries (AsNoTracking) - repository + strategy to decouple controllers from DbContext. Easier testing +- update assignments automatically from context diff --git a/Tests/TicketManager.Tests/UnitTests/TicketModelTests.cs b/Tests/TicketManager.Tests/UnitTests/TicketModelTests.cs new file mode 100644 index 0000000..5aee016 --- /dev/null +++ b/Tests/TicketManager.Tests/UnitTests/TicketModelTests.cs @@ -0,0 +1,36 @@ +using Xunit; +using TicketManager.Models; + +namespace TicketManager.Tests +{ + public class TicketModelTests + { + [Fact] + public void GetAssignees_Returns2() + { + Project project = new Project(); + Ticket ticket = new Ticket() { Project = project }; + AppUser user = new AppUser(); + AppUser user1 = new AppUser(); + Assignment assignment = new Assignment() + { + User = user, + Project = project + }; + project.Assignments.Add(assignment); + user.Assignments.Add(assignment); + + Assignment assignment1 = new Assignment() + { + User = user1, + Project = project + }; + project.Assignments.Add(assignment); + user.Assignments.Add(assignment); + + Assert.Equal(2, ticket.GetAssignees().Count); + } + + + } +}