Ejemplo n.º 1
0
        public void ValidateEicEiWithFilingStatusAsSingle()
        {
            //Persist Personal Info
            var primaryTaxPayer = IT_PersonalInfo.CreatePrimaryTaxPayer(FilingStatus.Single);

            primaryTaxPayer.Person.HasClaimedAsDependent = true;
            primaryTaxPayer.Person.DateOfBirth           = DateTime.Now;
            var expectedPrimaryTaxpayer = mPersonalInfoRepository.PersistPrimaryTaxPayer(primaryTaxPayer, mUserId, mUserDataId);

            //Persist W2
            var expectedWages = IT_W2Repository.CreateW2(EmploymentType.RegularW2Wages, OwnerType.PrimaryTaxPayer);

            expectedWages.FederalTaxWithholdingAmount = 15000.00;
            mTaxReturnData.TaxData    = JsonConvert.SerializeObject(expectedWages);
            mTaxReturnData.UserDataId = expectedPrimaryTaxpayer.Item1;
            mW2Data = mW2Repository.PersistW2TaxReturnData(mUserId, mTaxReturnData);

            //Get EIC
            mUserDTO.UserDataId = mW2Data.UserDataId;
            mUserDTO.UserId     = mUserId;
            var eic       = mEarnedIncomeCreditRepository.GetEarnedIncomeCredit(mUserDTO);
            var actualEic = (IEnumerable <ErrorMessage>)eic.Item4;

            var actualEI13ErrorMessage = actualEic.FirstOrDefault(x => x.ErrorCode == Constants.EIC_INFO_TAXPAYER_CLAIM_DEPENDENT);

            Assert.IsNotNull(actualEI13ErrorMessage.ErrorText);
            var actualEI15ErrorMessage = actualEic.FirstOrDefault(x => x.ErrorCode == Constants.EIC_INFO_TAXPAYER_AGE_LIMIT);

            Assert.IsNotNull(actualEI15ErrorMessage.ErrorText);
        }
Ejemplo n.º 2
0
        public void GetCreditSummary()
        {
            //Persist Personal Info
            var primaryTaxPayer         = IT_PersonalInfo.CreatePrimaryTaxPayer(FilingStatus.Single);
            var expectedPrimaryTaxpayer = mPersonalInfoRepository.PersistPrimaryTaxPayer(primaryTaxPayer, mUserId, mUserDataId);

            //Persist W2
            var expectedWages = IT_W2Repository.CreateW2(EmploymentType.RegularW2Wages, OwnerType.PrimaryTaxPayer);

            expectedWages.WagesAmount = 10000.00;
            mTaxReturnData.TaxData    = JsonConvert.SerializeObject(expectedWages);
            mTaxReturnData.UserDataId = expectedPrimaryTaxpayer.Item1;
            var expectedWagesData = mW2Repository.PersistW2TaxReturnData(mUserId, mTaxReturnData);

            //Persist EIC
            var expectedEic = CreateEIC();

            expectedEic.HasValidSSN            = true;
            expectedEic.IsInUSMorethanHalfYear = true;
            mTaxReturnData.TaxData             = JsonConvert.SerializeObject(expectedEic);
            mTaxReturnData.UserDataId          = expectedWagesData.UserDataId;
            var expectedEicUserDataId = mEarnedIncomeCreditRepository.PersitEarnedIncomeCredit(mUserId, mTaxReturnData, mYear);

            //Get EIC
            mUserDTO.UserDataId = expectedEicUserDataId;
            mUserDTO.UserId     = mUserId;
            var actualeic = mEarnedIncomeCreditRepository.GetCreditSummary(mUserDTO);

            Assert.IsTrue(actualeic.EICEligibility);
        }
        public void TaxableIncomeGreatherthanLakhDollars()
        {
            //Persist Personal Info
            const long mUserDataId             = 0L;
            var        primaryTaxPayer         = IT_PersonalInfo.CreatePrimaryTaxPayer(FilingStatus.Single);
            var        expectedPrimaryTaxpayer = mPersonalInfoRepository.PersistPrimaryTaxPayer(primaryTaxPayer, mUserId, mUserDataId);

            //Persist W2
            var wages = IT_W2Repository.CreateW2(EmploymentType.RegularW2Wages, OwnerType.PrimaryTaxPayer);

            wages.WagesAmount         = 41812.00;
            mTaxReturnData.TaxData    = JsonConvert.SerializeObject(wages);
            mTaxReturnData.UserDataId = expectedPrimaryTaxpayer.Item1;
            var expectedWages = mW2Repository.PersistW2TaxReturnData(mUserId, mTaxReturnData);

            //Persist Interest Income INT
            var expectedForm1099INT = IT_InterestIncomeForm1099INTRepository.CreateForm1099INT(OwnerType.PrimaryTaxPayer);

            expectedForm1099INT.InterestIncome = 100000.00;
            mTaxReturnData.UserDataId          = expectedWages.UserDataId;
            mTaxReturnData.TaxData             = JsonConvert.SerializeObject(expectedForm1099INT);
            mUserData.userId        = mUserId;
            mUserData.TaxReturnData = JsonConvert.SerializeObject(mTaxReturnData);
            var expectedUserData = mInterestIncomeRepository.PersistTaxReturnForm1099INTData(mUserData);

            //Persist Form 1099G
            var expectedForm1099G = IT_UnemploymentRepository.CreateForm1099G();

            expectedForm1099G.UnEmploymentCompensation = 1580.00;
            mTaxReturnData.TaxData    = JsonConvert.SerializeObject(expectedForm1099G);
            mTaxReturnData.UserDataId = expectedUserData.UserDataId;
            var expectedForm1099GData = mUnemploymentRepository.CreateAndPersistUnemployment(mUserId, mTaxReturnData);

            //Persist Taxes and Wrap Up
            var expectedTaxesAndWrapUp = CreateTaxesAndWrapWithoutData();

            mTaxReturnData.TaxData    = JsonConvert.SerializeObject(expectedTaxesAndWrapUp);
            mTaxReturnData.UserDataId = expectedForm1099GData.UserDataId;
            var expectedTaxesAndWrapUpData = mTaxesAndWrapUpRepository.PersistTaxesAndWrapUpData(mUserId, mTaxReturnData);
            var userDTO = new UserDTO()
            {
                UserId = mUserId, UserDataId = expectedTaxesAndWrapUpData.Item1
            };

            //Get Taxes and Wrap Up
            var actualTaxesAndWrapUp = mTaxesAndWrapUpRepository.GetFederalTaxSummary(userDTO);

            BusinessObject.Tax1040 actualTaxesAndWrapUpData = Utilities.GetTaxObjectByUserIdAndUserDataId(mUserId, expectedTaxesAndWrapUpData.Item1);
            Assert.IsTrue(actualTaxesAndWrapUpData.ErrorMessages.Any(er => er.ErrorCode.Equals("TaxesAndWrapUp_ER5")));
        }
Ejemplo n.º 4
0
        public void ValidateEicBR3BR5BR6BR7()
        {
            //Persist Personal Info
            var primaryTaxPayer         = IT_PersonalInfo.CreatePrimaryTaxPayer(FilingStatus.Single);
            var expectedPrimaryTaxpayer = mPersonalInfoRepository.PersistPrimaryTaxPayer(primaryTaxPayer, mUserId, mUserDataId);

            //Persist W2
            var wages = IT_W2Repository.CreateW2(EmploymentType.RegularW2Wages, OwnerType.PrimaryTaxPayer);

            wages.FederalTaxWithholdingAmount = 10000.00;
            mTaxReturnData.TaxData            = JsonConvert.SerializeObject(wages);
            mTaxReturnData.UserDataId         = expectedPrimaryTaxpayer.Item1;
            var expectedWages = mW2Repository.PersistW2TaxReturnData(mUserId, mTaxReturnData);


            //Persist EIC
            var expectedEic = CreateEIC();

            expectedEic.HasValidSSN                          = false;
            expectedEic.IsInUSMorethanHalfYear               = false;
            expectedEic.HasClaimedAsQualifyingChild          = true;
            expectedEic.HasReceivedIRSNoticeOnEICNotEligible = true;
            mTaxReturnData.TaxData    = JsonConvert.SerializeObject(expectedEic);
            mTaxReturnData.UserDataId = expectedWages.UserDataId;
            var expectedEicUserDataId = mEarnedIncomeCreditRepository.PersitEarnedIncomeCredit(mUserId, mTaxReturnData, mYear);

            //Get EIC
            mUserDTO.UserDataId = expectedEicUserDataId;
            mUserDTO.UserId     = mUserId;
            BusinessObject.Tax1040 actualEicData = Utilities.GetTaxObjectByUserIdAndUserDataId(mUserDTO.UserId,
                                                                                               mUserDTO.UserDataId);

            // When "You & your Spouse(MFJ) have a valid SSN that allows you to work" check box not checked
            Assert.IsTrue(actualEicData.ErrorMessages.Any(er => er.ErrorCode.Equals("EarnedIncomeCredit_BR3")));
            // when "You & your Spouse (MFJ) lived in  the United States for more than half of the year(2014)" check box not checked
            Assert.IsTrue(actualEicData.ErrorMessages.Any(er => er.ErrorCode.Equals("EarnedIncomeCredit_BR5")));
            // When "You are claimed as Qualified Child in another person's tax return" check box not chenked
            Assert.IsTrue(actualEicData.ErrorMessages.Any(er => er.ErrorCode.Equals("EarnedIncomeCredit_BR6")));
            // When "You received notice from IRS as 'Not to Claim EIC" check box not chenked
            Assert.IsTrue(actualEicData.ErrorMessages.Any(er => er.ErrorCode.Equals("EarnedIncomeCredit_BR7")));
        }
Ejemplo n.º 5
0
        public void ValidateEicEiWithFilingStatusAsMFJ()
        {
            // var hasEligibilityDiagnostics = false;
            //Persist Primary Taxpayer
            var primaryTaxPayer = IT_PersonalInfo.CreatePrimaryTaxPayer(FilingStatus.MarriedFilingJointly);

            primaryTaxPayer.Person.HasClaimedAsDependent = true;
            primaryTaxPayer.Person.DateOfBirth           = DateTime.Now;
            var expectedPrimaryTaxpayer = mPersonalInfoRepository.PersistPrimaryTaxPayer(primaryTaxPayer, mUserId, mUserDataId);

            //Persist Spouse
            var spouse = IT_PersonalInfo.CreateAndPersistSpouse(mUserId, expectedPrimaryTaxpayer.Item1);

            spouse.Person.HasClaimedAsDependent = true;
            spouse.Person.DateOfBirth           = DateTime.Now;
            var expectedSpouse = mPersonalInfoRepository.PersistSpouse(spouse, mUserId, expectedPrimaryTaxpayer.Item1);

            //Persist Wages Object
            var w2 = IT_W2Repository.CreateW2(EmploymentType.RegularW2Wages, OwnerType.PrimaryTaxPayer);

            w2.FederalTaxWithholdingAmount = 15000.00;
            mTaxReturnData.TaxData         = JsonConvert.SerializeObject(w2);
            mTaxReturnData.UserDataId      = expectedSpouse.Item1;
            mW2Data = mW2Repository.PersistW2TaxReturnData(mUserId, mTaxReturnData);

            //Get EIC
            mUserDTO.UserDataId = mW2Data.UserDataId;
            mUserDTO.UserId     = mUserId;

            var eic       = mEarnedIncomeCreditRepository.GetEarnedIncomeCredit(mUserDTO);
            var actualEic = (IEnumerable <ErrorMessage>)eic.Item4;

            var actualEI13ErrorMessage = actualEic.FirstOrDefault(x => x.ErrorCode == Constants.EIC_INFO_TAXPAYER_SPOUSE_CLAIM_DEPENDENT);

            Assert.IsNotNull(actualEI13ErrorMessage.ErrorText);
            var actualEI15ErrorMessage = actualEic.FirstOrDefault(x => x.ErrorCode == Constants.EIC_INFO_TAXPAYER_SPOUSE_AGE_LIMIT);

            Assert.IsNotNull(actualEI15ErrorMessage.ErrorText);
        }