public void GetListOfAddedAssignmentsAndCheckAreEqualLikeModels()
        {
            //Arrange
            Assignment assignment1 = new Assignment()
            {
                Id          = 66,
                Name        = "test",
                Description = "unit"
            };

            Assignment assignment2 = new Assignment()
            {
                Id          = 67,
                Name        = "test1",
                Description = "unit1"
            };

            var options = new DbContextOptionsBuilder <Context>()
                          .UseInMemoryDatabase(databaseName: "UsersDirectoryMVC")
                          .Options;

            using (var context = new Context(options))
            {
                //Act
                var assignmentRepository = new AssignmentRepository(context);
                assignmentRepository.AddAssignment(assignment1);
                assignmentRepository.AddAssignment(assignment2);

                var listOfAssignments = assignmentRepository.GetAllActiveAssignments();

                //Assert
                listOfAssignments.FirstOrDefault(e => e.Id == 66).Should().Equals(assignment1);
                listOfAssignments.FirstOrDefault(e => e.Id == 67).Should().Equals(assignment2);
            }
        }
        public void CheckAssignmentExistAfterDelete()
        {
            //Arrange
            Assignment assignment1 = new Assignment()
            {
                Id          = 66,
                Name        = "test",
                Description = "unit"
            };
            Assignment assignment2 = new Assignment()
            {
                Id          = 77,
                Name        = "test",
                Description = "unit"
            };

            var options = new DbContextOptionsBuilder <Context>()
                          .UseInMemoryDatabase(databaseName: "UsersDirectoryMVC")
                          .Options;

            using (var context = new Context(options))
            {
                //Act
                var assignmentRepository = new AssignmentRepository(context);
                assignmentRepository.AddAssignment(assignment1);
                assignmentRepository.AddAssignment(assignment2);
                assignmentRepository.DeleteAssignment(66);
                var gerAssignment1 = assignmentRepository.GetAssignment(66);
                var gerAssignment2 = assignmentRepository.GetAssignment(77);
                //Assert
                gerAssignment1.Should().BeNull();
                gerAssignment2.Should().Equals(assignment2);
            }
        }
        public void ShouldUpdateAssignmentNameAnDescription()
        {
            //Arrange
            Assignment assignment = new Assignment()
            {
                Id          = 66,
                Name        = "test",
                Description = "unit"
            };

            Assignment updatedAssignment = new Assignment()
            {
                Id          = 66,
                Name        = "test1",
                Description = "unit1"
            };

            var options = new DbContextOptionsBuilder <Context>()
                          .UseInMemoryDatabase(databaseName: "UsersDirectoryMVC")
                          .Options;

            using (var context = new Context(options))
            {
                //Act
                var assignmentRepository = new AssignmentRepository(context);
                assignmentRepository.AddAssignment(assignment);
            }

            using (var context = new Context(options))
            {
                //Act
                var assignmentRepository = new AssignmentRepository(context);
                //
                assignmentRepository.UpdateAssignment(updatedAssignment);
                var assignmentToCheckAfterUpdate = assignmentRepository.GetAssignment(66);

                //Assert
                assignmentToCheckAfterUpdate.Should().NotBeNull();
                assignmentToCheckAfterUpdate.Name.Should().Equals(updatedAssignment.Name);
                assignmentToCheckAfterUpdate.Description.Should().Equals(updatedAssignment.Description);
            }
        }
        public void CheckAssignmentIdExistAfterAdd()
        {
            //Arrange
            Assignment assignment = new Assignment()
            {
                Id          = 66,
                Name        = "test",
                Description = "unit"
            };

            var options = new DbContextOptionsBuilder <Context>()
                          .UseInMemoryDatabase(databaseName: "UsersDirectoryMVC")
                          .Options;

            using (var context = new Context(options))
            {
                //Act
                var assignmentRepository = new AssignmentRepository(context);
                var assignmentResult     = assignmentRepository.AddAssignment(assignment);

                //Assert
                assignmentResult.Should().Equals(assignment.Id);
            }
        }