public void GetBenefitsBreaksown_CanHandleNulls()
        {
            BenefitsBreakdownModel expResult = new BenefitsBreakdownModel
            {
                SalaryPerYear      = 26,
                SalaryPerPayPeriod = 1,
                PayPeriodFrequency = "Bi-weekly"
            };

            var result = sut.GetBenefitsBreaksown(null, null);

            Assert.IsNull(result);
        }
        public async Task <BenefitsBreakdownModel> GetBenefitsCostBreakdownByEmployeeId(int employeeId)
        {
            try
            {
                if (employeeId > 0)
                {
                    IEnumerable <BenefitCostDataModel> benefitCostDataModels = await benefitsRepository.GetBenefitsCostsByEmployeeId(employeeId);

                    EmployeeSalaryDataModel employeeSalaryDataModel = await employeeRepository.GetEmployeeSalaryData(employeeId);

                    return(benefitsBreakdown.GetBenefitsBreaksown(employeeSalaryDataModel, benefitCostDataModels));
                }

                return(null);
            }
            catch (Exception ex)
            {
                await loggerRepository.Log(ex).ConfigureAwait(false);

                throw;
            }
        }