public void CanUpdateExistingApplicant_ExpectSuccess()
        {
            //Arrange
            int    id         = 6;
            string firstName  = "David_1_UpdatedAgain";
            string middleName = "Michael";
            string lastname   = "OBrien";

            IUnitOfWork          context    = new BackgroundCheckContext();
            IApplicantRepository repository = new EFApplicantRepository(context);
            var applicant = repository.FindById(id);

            applicant.FirstName = firstName;
            Applicant updatedApplicant = null;

            //Act
            try
            {
                repository.Save(applicant);
                context.Commit();
                updatedApplicant = repository.FindById(id);
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.Write(ex.Message);
                System.Diagnostics.Debug.Write(ex.StackTrace);
            }

            //Assert
            Assert.IsNotNull(updatedApplicant);
            Assert.AreEqual(updatedApplicant.FirstName, firstName);
            Assert.AreEqual(updatedApplicant.MiddleName, middleName);
            Assert.AreEqual(updatedApplicant.LastName, lastname);
        }
        public void CanUpdateApplicantEmploymentHistory_ExpectSuccess()
        {
            //Arrange
            int    applicantId = 7;
            double newSalary   = 125000;

            IUnitOfWork          context    = new BackgroundCheckContext();
            IApplicantRepository repository = new EFApplicantRepository(context);

            Applicant applicant        = repository.FindById(applicantId);
            Applicant updatedApplicant = null;

            if (applicant != null)
            {
                if (applicant.EmploymentHistory[0] != null)
                {
                    applicant.EmploymentHistory[0].Salary = newSalary;
                }
            }

            try
            {
                //Act
                repository.Save(applicant);
                context.Commit();
                updatedApplicant = applicant = repository.FindById(applicantId);
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.Write(ex.Message);
                System.Diagnostics.Debug.Write(ex.StackTrace);
            }

            //Assert
            Assert.IsNotNull(updatedApplicant);
            Assert.AreEqual(updatedApplicant.EmploymentHistory[0].Salary, newSalary);
        }