diff --git a/l10n_us_ar_hr_payroll/data/rules.xml b/l10n_us_ar_hr_payroll/data/rules.xml index b9b73e35..00fed6f5 100755 --- a/l10n_us_ar_hr_payroll/data/rules.xml +++ b/l10n_us_ar_hr_payroll/data/rules.xml @@ -7,7 +7,7 @@ Wage: US-AR Unemployment WAGE_US_AR_UNEMP python - result = (contract.futa_type != contract.FUTA_TYPE_BASIC and not contract.ar_w4_tax_exempt and not contract.ar_w4_texarkana_exemption) + result = (contract.futa_type != contract.FUTA_TYPE_BASIC) code rate = payslip.dict.get_rate('US_AR_UNEMP') @@ -31,7 +31,7 @@ else: ER: US-AR Unemployment ER_US_AR_UNEMP python - result = (contract.futa_type != contract.FUTA_TYPE_BASIC and not contract.ar_w4_tax_exempt and not contract.ar_w4_texarkana_exemption) + result = (contract.futa_type != contract.FUTA_TYPE_BASIC) code rate = payslip.dict.get_rate('US_AR_UNEMP') diff --git a/l10n_us_ar_hr_payroll/tests/test_us_ar_payslip_2019.py b/l10n_us_ar_hr_payroll/tests/test_us_ar_payslip_2019.py index 0468f48f..44a4a058 100755 --- a/l10n_us_ar_hr_payroll/tests/test_us_ar_payslip_2019.py +++ b/l10n_us_ar_hr_payroll/tests/test_us_ar_payslip_2019.py @@ -24,6 +24,7 @@ class TestUsARPayslip(TestUsPayslip): payslip.compute_sheet() cats = self._getCategories(payslip) + # Not exempt from rule 1 or rule 2 - unemployment wages., and actual unemployment. self.assertPayrollEqual(cats['WAGE_US_AR_UNEMP'], salary) self.assertPayrollEqual(cats['ER_US_AR_UNEMP'], cats['WAGE_US_AR_UNEMP'] * self.AR_UNEMP) @@ -32,7 +33,8 @@ class TestUsARPayslip(TestUsPayslip): # Make a new payslip, this one will have maximums remaining_AR_UNEMP_wages = self.AR_UNEMP_MAX_WAGE - salary if (self.AR_UNEMP_MAX_WAGE - 2*salary < salary) \ else salary - + # We reached the cap of 10000.0 in the first payslip. + self.assertEqual(0.0, remaining_AR_UNEMP_wages) self._log('2019 Arkansas tax second payslip weekly:') payslip = self._createPayslip(employee, '2019-02-01', '2019-02-28') payslip.compute_sheet() @@ -43,22 +45,21 @@ class TestUsARPayslip(TestUsPayslip): def test_taxes_with_state_exempt(self): salary = 50000.0 - external_wages = 10000.0 tax_exempt = True # State withholding should be zero. employee = self._createEmployee() contract = self._createContract(employee, salary, - external_wages=external_wages, struct_id=self.ref('l10n_us_ar_hr_payroll.hr_payroll_salary_structure_us_ar_employee'), - futa_type=USHrContract.FUTA_TYPE_BASIC) + ) contract.ar_w4_tax_exempt = tax_exempt + self._log('2019 Arkansas exempt tax first payslip weekly:') payslip = self._createPayslip(employee, '2019-01-01', '2019-01-31') payslip.compute_sheet() cats = self._getCategories(payslip) - self.assertPayrollEqual(cats.get('WAGE_US_AR_UNEMP', 0.0), 0.0) + self.assertPayrollEqual(cats['WAGE_US_AR_UNEMP'], self.AR_UNEMP_MAX_WAGE) self.assertPayrollEqual(cats.get('ER_US_AR_UNEMP', 0.0), cats.get('WAGE_US_AR_UNEMP', 0.0) * self.AR_UNEMP) self.assertPayrollEqual(cats.get('EE_US_AR_INC_WITHHOLD', 0.0), 0.0) @@ -74,13 +75,12 @@ class TestUsARPayslip(TestUsPayslip): struct_id=self.ref('l10n_us_ar_hr_payroll.hr_payroll_salary_structure_us_ar_employee')) contract.ar_w4_texarkana_exemption = texarkana_exemption - self._log('2019 Arkansas tax first payslip:') payslip = self._createPayslip(employee, '2019-01-01', '2019-01-31') payslip.compute_sheet() cats = self._getCategories(payslip) - self.assertPayrollEqual(cats.get('WAGE_US_AR_UNEMP', 0.0), 0.0) + self.assertPayrollEqual(cats.get('WAGE_US_AR_UNEMP', 0.0), self.AR_UNEMP_MAX_WAGE) self.assertPayrollEqual(cats.get('ER_US_AR_UNEMP', 0.0), cats.get('WAGE_US_AR_UNEMP', 0.0) * self.AR_UNEMP) process_payslip(payslip) @@ -172,7 +172,7 @@ class TestUsARPayslip(TestUsPayslip): self.assertPayrollEqual(cats['ER_US_AR_UNEMP'], remaining_AR_UNEMP_wages * self.AR_UNEMP) def test_over_fifty_thousand(self): - wages = 10000.00 + wages = 10000.00 # 10000.00 monthly is over 50,000 annually. schedule_pay = 'monthly' pay_periods = 12 additional_wh = 150.0