diff --git a/l10n_us_hr_payroll/data/state/hi_hawaii.xml b/l10n_us_hr_payroll/data/state/hi_hawaii.xml
index 470c5239..e5011794 100644
--- a/l10n_us_hr_payroll/data/state/hi_hawaii.xml
+++ b/l10n_us_hr_payroll/data/state/hi_hawaii.xml
@@ -33,10 +33,10 @@
-
+
5.2
-
+
diff --git a/l10n_us_hr_payroll/data/state/wa_washington.xml b/l10n_us_hr_payroll/data/state/wa_washington.xml
index 53a4e491..528b4caf 100644
--- a/l10n_us_hr_payroll/data/state/wa_washington.xml
+++ b/l10n_us_hr_payroll/data/state/wa_washington.xml
@@ -202,8 +202,7 @@
python
result = is_us_state(payslip, 'WA') and payslip.contract_id.us_payroll_config_value('workers_comp_ee_code') and worked_days.WORK100 and worked_days.WORK100.number_of_hours and payslip.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_er_code'))
code
- result, result_rate = worked_days.WORK100.number_of_hours,
- -payslip.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_er_code'))
+ result, result_rate = worked_days.WORK100.number_of_hours, -payslip.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_er_code'))
@@ -218,9 +217,7 @@
python
result = is_us_state(payslip, 'WA') and payslip.contract_id.us_payroll_config_value('workers_comp_ee_code') and worked_days.WORK100 and worked_days.WORK100.number_of_hours and payslip.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_ee_code'))
code
- result, result_rate = worked_days.WORK100.number_of_hours,
- -payslip.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_ee_code'))
-
+ result, result_rate = worked_days.WORK100.number_of_hours, -payslip.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_ee_code'))
diff --git a/l10n_us_hr_payroll/tests/test_special.py b/l10n_us_hr_payroll/tests/test_special.py
index 688761ec..3c7334b6 100644
--- a/l10n_us_hr_payroll/tests/test_special.py
+++ b/l10n_us_hr_payroll/tests/test_special.py
@@ -7,7 +7,7 @@ class TestSpecial(TestUsPayslip):
employee = self._createEmployee()
# so the schedule_pay is now on the Structure...
contract = self._createContract(employee, wage=salary, schedule_pay='semi-monthly')
- payslip = self._createPayslip(employee, '2019-01-01', '2019-01-14')
+ payslip = self._createPayslip(employee, '2020-01-01', '2020-01-14')
payslip.compute_sheet()
def test_payslip_sum_behavior(self):
@@ -28,8 +28,8 @@ class TestSpecial(TestUsPayslip):
'condition_python': 'result = 1',
'amount_select': 'code',
'amount_python_compute': '''
-ytd_category = payslip.sum_category('test_sum_behavior', '2020-01-01', '2021-01-01')
-ytd_rule = payslip.sum('test_sum_behavior', '2020-01-01', '2021-01-01')
+ytd_category = payslip.sum_category('test_sum_behavior', '2021-01-01', '2022-01-01')
+ytd_rule = payslip.sum('test_sum_behavior', '2021-01-01', '2022-01-01')
result = 0.0
if ytd_category != ytd_rule:
# error
@@ -42,7 +42,7 @@ elif ytd_rule == 0.0:
salary = 80000.0
employee = self._createEmployee()
contract = self._createContract(employee, wage=salary, schedule_pay='bi-weekly')
- payslip = self._createPayslip(employee, '2019-12-30', '2020-01-12')
+ payslip = self._createPayslip(employee, '2020-12-30', '2021-01-12')
payslip.compute_sheet()
cats = self._getCategories(payslip)
self.assertEqual(cats['test_sum_behavior'], 1.0)
@@ -51,7 +51,7 @@ elif ytd_rule == 0.0:
# Basic date_from behavior.
self.env['ir.config_parameter'].set_param('hr_payroll.payslip.sum_behavior', 'date_from')
# The the date_from on the last payslip will not be found
- payslip = self._createPayslip(employee, '2020-01-13', '2020-01-27')
+ payslip = self._createPayslip(employee, '2021-01-13', '2021-01-27')
payslip.compute_sheet()
cats = self._getCategories(payslip)
self.assertEqual(cats['test_sum_behavior'], 1.0)
@@ -59,7 +59,7 @@ elif ytd_rule == 0.0:
# date_to behavior.
self.env['ir.config_parameter'].set_param('hr_payroll.payslip.sum_behavior', 'date_to')
# The date_to on the last payslip is found
- payslip = self._createPayslip(employee, '2020-01-13', '2020-01-27')
+ payslip = self._createPayslip(employee, '2021-01-13', '2021-01-27')
payslip.compute_sheet()
cats = self._getCategories(payslip)
self.assertEqual(cats['test_sum_behavior'], 0.0)
@@ -104,14 +104,14 @@ result += payslip.sum_category('ALW', str(year) + '-01-01', str(year+1) + '-01-0
salary = 80000.0
employee = self._createEmployee()
contract = self._createContract(employee, wage=salary, schedule_pay='bi-weekly')
- payslip = self._createPayslip(employee, '2020-01-01', '2020-01-14')
+ payslip = self._createPayslip(employee, '2021-01-01', '2021-01-14')
payslip.compute_sheet()
cats = self._getCategories(payslip)
rules = self._getRules(payslip)
self.assertEqual(rules['RECURSION_TEST'], 200.0)
process_payslip(payslip)
- payslip = self._createPayslip(employee, '2020-01-15', '2020-01-27')
+ payslip = self._createPayslip(employee, '2021-01-15', '2021-01-27')
payslip.compute_sheet()
cats = self._getCategories(payslip)
rules = self._getRules(payslip)
diff --git a/l10n_us_hr_payroll/tests/test_us_al_alabama_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_al_alabama_payslip_2021.py
index 382f679a..56376094 100644
--- a/l10n_us_hr_payroll/tests/test_us_al_alabama_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_al_alabama_payslip_2021.py
@@ -29,8 +29,8 @@ class TestUsALPayslip(TestUsPayslip):
def test_2021_taxes_example(self):
self._test_er_suta('AL', self.AL_UNEMP, date(2021, 1, 1), wage_base=self.AL_UNEMP_MAX_WAGE)
- self._test_sit(10000.0, 'S', False, 0.0, 1.0, 'weekly', date(2021, 1, 1), 349.08)
- self._test_sit(850.0, 'M', False, 0.0, 2.0, 'weekly', date(2021, 1, 1), 29.98)
- self._test_sit(5000.0, 'H', False, 0.0, 2.0, 'bi-weekly', date(2021, 1, 1), 191.15)
- self._test_sit(20000.0, 'MS', False, 2.0, 0, 'monthly', date(2021, 1, 1), 757.6)
+ self._test_sit(10000.0, 'S', False, 0.0, 1.0, 'weekly', date(2021, 1, 1), 349.37)
+ self._test_sit(850.0, 'M', False, 0.0, 2.0, 'weekly', date(2021, 1, 1), 30.00)
+ self._test_sit(5000.0, 'H', False, 0.0, 2.0, 'bi-weekly', date(2021, 1, 1), 191.33)
+ self._test_sit(20000.0, 'MS', False, 2.0, 0, 'monthly', date(2021, 1, 1), 758.86)
self._test_sit(5500.0, '', True, 2.0, 150, 'weekly', date(2021, 1, 1), 0.00)
diff --git a/l10n_us_hr_payroll/tests/test_us_de_delaware_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_de_delaware_payslip_2021.py
index 55ae8983..ad8b2453 100755
--- a/l10n_us_hr_payroll/tests/test_us_de_delaware_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_de_delaware_payslip_2021.py
@@ -30,7 +30,7 @@ class TestUsDEPayslip(TestUsPayslip):
def test_2021_taxes_example(self):
self._test_er_suta('DE', self.DE_UNEMP, date(2021, 1, 1), wage_base=self.DE_UNEMP_MAX_WAGE)
- self._test_sit(480.77, 'single', 0.0, 1.0, 'weekly', date(2021, 1, 1), 13.84)
+ self._test_sit(480.77, 'single', 0.0, 1.0, 'weekly', date(2021, 1, 1), 13.88)
self._test_sit(5000.0, 'single', 0.0, 2.0, 'monthly', date(2021, 1, 1), 211.93)
self._test_sit(5000.0, 'single', 10.0, 1.0, 'monthly', date(2021, 1, 1), 231.1)
self._test_sit(20000.0, 'married', 0.0, 3.0, 'quarterly', date(2021, 1, 1), 876.0)
diff --git a/l10n_us_hr_payroll/tests/test_us_ia_iowa_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_ia_iowa_payslip_2021.py
index df169186..396acfe4 100755
--- a/l10n_us_hr_payroll/tests/test_us_ia_iowa_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_ia_iowa_payslip_2021.py
@@ -29,8 +29,8 @@ class TestUsIAPayslip(TestUsPayslip):
def test_2021_taxes_example(self):
self._test_er_suta('IA', self.IA_UNEMP, date(2021, 1, 1), wage_base=self.IA_UNEMP_MAX_WAGE)
- self._test_sit(2100.0, False, 0.0, 3.0, 'bi-weekly', date(2021, 1, 1), 79.13)
+ self._test_sit(2100.0, False, 0.0, 3.0, 'bi-weekly', date(2021, 1, 1), 79.31)
self._test_sit(3000.0, True, 10.0, 1.0, 'bi-weekly', date(2021, 1, 1), 0.00)
self._test_sit(300.0, False, 0.0, 1.0, 'weekly', date(2021, 1, 1), 6.14)
- self._test_sit(5000.0, False, 0.0, 1.0, 'monthly', date(2021, 1, 1), 217.60)
- self._test_sit(7500.0, False, 10.0, 2.0, 'semi-monthly', date(2021, 1, 1), 420.87)
+ self._test_sit(5000.0, False, 0.0, 1.0, 'monthly', date(2021, 1, 1), 218.06)
+ self._test_sit(7500.0, False, 10.0, 2.0, 'semi-monthly', date(2021, 1, 1), 421.71)
diff --git a/l10n_us_hr_payroll/tests/test_us_me_maine_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_me_maine_payslip_2021.py
index 5bd17991..2324b278 100644
--- a/l10n_us_hr_payroll/tests/test_us_me_maine_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_me_maine_payslip_2021.py
@@ -33,9 +33,6 @@ class TestUsMEPayslip(TestUsPayslip):
# todo: not calculating correctly according to https://www.maine.gov/revenue/sites/maine.gov.revenue/files/inline-files/21_wh_tab_instr_1.pdf
# See examples on page 7
- import pydevd_pycharm
- pydevd_pycharm.settrace('192.168.1.134', port=6900, stdoutToServer=True, stderrToServer=True)
-
self._test_er_suta('ME', self.ME_UNEMP, date(2021, 1, 1), wage_base=self.ME_UNEMP_MAX_WAGE)
self._test_sit(300.0, 'single', 0.0, False, 2, 'weekly', date(2021, 1, 1), 0.0)
self._test_sit(1800.0, 'single', 0.0, False, 2, 'bi-weekly', date(2021, 1, 1), 6.00)
diff --git a/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2020.py b/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2020.py
index 3dd3fd27..fe053f79 100755
--- a/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2020.py
+++ b/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2020.py
@@ -24,7 +24,7 @@ class TestUsPAPayslip(TestUsPayslip):
wage=salary,
state_id=self.get_us_state('PA'))
- self._log('2019 Pennsylvania tax first payslip:')
+ self._log('2020 Pennsylvania tax first payslip:')
payslip = self._createPayslip(employee, '2020-01-01', '2020-01-31')
payslip.compute_sheet()
cats = self._getCategories(payslip)
diff --git a/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2021.py
index 800fe972..8f11073e 100755
--- a/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2021.py
@@ -18,13 +18,13 @@ class TestUsPAPayslip(TestUsPayslip):
self._test_ee_suta('PA', self.EE_PA_UNEMP, date(2021, 1, 1))
salary = 4166.67
- wh = -127.90
+ wh = -127.92
employee = self._createEmployee()
contract = self._createContract(employee,
wage=salary,
state_id=self.get_us_state('PA'))
- self._log('2019 Pennsylvania tax first payslip:')
+ self._log('2021 Pennsylvania tax first payslip:')
payslip = self._createPayslip(employee, '2021-01-01', '2021-01-31')
payslip.compute_sheet()
cats = self._getCategories(payslip)
diff --git a/l10n_us_hr_payroll/tests/test_us_payslip_2020.py b/l10n_us_hr_payroll/tests/test_us_payslip_2020.py
index c10a230b..ea421e0d 100644
--- a/l10n_us_hr_payroll/tests/test_us_payslip_2020.py
+++ b/l10n_us_hr_payroll/tests/test_us_payslip_2020.py
@@ -40,16 +40,6 @@ class TestUsPayslip2020(TestUsPayslip):
contract = self._createContract(employee, wage=salary)
self._log(contract.read())
- self._log('2019 tax last slip')
- payslip = self._createPayslip(employee, '2019-12-01', '2019-12-31')
- payslip.compute_sheet()
- self._log(payslip.read())
- process_payslip(payslip)
-
- # Ensure amounts are there, they shouldn't be added in the next year...
- cats = self._getCategories(payslip)
- self.assertTrue(cats['ER_US_940_FUTA'], self.FUTA_MAX_WAGE * self.FUTA)
-
self._log('2020 tax first payslip:')
payslip = self._createPayslip(employee, '2020-01-01', '2020-01-31')
payslip.compute_sheet()
diff --git a/l10n_us_hr_payroll/tests/test_us_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_payslip_2021.py
index 60822b05..d3b13132 100644
--- a/l10n_us_hr_payroll/tests/test_us_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_payslip_2021.py
@@ -42,6 +42,7 @@ class TestUsPayslip2021(TestUsPayslip):
self._log('2020 tax last slip')
payslip = self._createPayslip(employee, '2020-12-01', '2020-12-31')
self.assertEqual(payslip.contract_id, contract)
+ payslip.compute_sheet()
self._log(payslip.read())
process_payslip(payslip)
@@ -52,6 +53,8 @@ class TestUsPayslip2021(TestUsPayslip):
self._log('2021 tax first payslip:')
payslip = self._createPayslip(employee, '2021-01-01', '2021-01-31')
+ payslip.compute_sheet()
+
cats = self._getCategories(payslip)
rules = self._getRules(payslip)
# Employee
@@ -71,6 +74,7 @@ class TestUsPayslip2021(TestUsPayslip):
self._log('2021 tax second payslip:')
payslip = self._createPayslip(employee, '2021-02-01', '2021-02-28')
+ payslip.compute_sheet()
cats = self._getCategories(payslip)
rules = self._getRules(payslip)
@@ -85,6 +89,7 @@ class TestUsPayslip2021(TestUsPayslip):
# Make a new payslip, this one will have reached Medicare Additional (employee only)
self._log('2021 tax third payslip:')
payslip = self._createPayslip(employee, '2021-03-01', '2021-03-31')
+ payslip.compute_sheet()
cats = self._getCategories(payslip)
rules = self._getRules(payslip)
@@ -97,6 +102,7 @@ class TestUsPayslip2021(TestUsPayslip):
self._log('2021 tax fourth payslip:')
payslip = self._createPayslip(employee, '2021-04-01', '2021-04-30')
+ payslip.compute_sheet()
cats = self._getCategories(payslip)
rules = self._getRules(payslip)
diff --git a/l10n_us_hr_payroll/tests/test_us_va_virginia_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_va_virginia_payslip_2021.py
index dc81a3ff..6a789c06 100644
--- a/l10n_us_hr_payroll/tests/test_us_va_virginia_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_va_virginia_payslip_2021.py
@@ -46,15 +46,15 @@ class TestUsVaPayslip(TestUsPayslip):
va_va4_sit_other_exemptions=va_va4_sit_other_exemptions,
state_id=self.get_us_state('VA'),
)
- payslip = self._createPayslip(employee, '2020-01-01', '2020-01-31')
+ payslip = self._createPayslip(employee, '2021-01-01', '2021-01-31')
payslip.compute_sheet()
cats = self._getCategories(payslip)
# Instead of PayrollEqual after initial first round of testing.
self.assertPayrollAlmostEqual(cats.get('EE_US_SIT', 0.0), -expected)
return payslip
- def test_2020_taxes(self):
- self._test_er_suta('VA', self.VA_UNEMP, date(2020, 1, 1), wage_base=self.VA_UNEMP_MAX_WAGE)
+ def test_2021_taxes(self):
+ self._test_er_suta('VA', self.VA_UNEMP, date(2021, 1, 1), wage_base=self.VA_UNEMP_MAX_WAGE)
salary = 5000.0
diff --git a/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py
index 180494e0..86f541bc 100755
--- a/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py
@@ -61,7 +61,7 @@ class TestUsWAPayslip(TestUsPayslip):
self._log('2021 Washington tax first payslip:')
payslip = self._createPayslip(employee, '2021-01-01', '2021-01-31')
hours_in_period = payslip.worked_days_line_ids.filtered(lambda l: l.code == 'WORK100').number_of_hours
- self.assertPayrollAlmostEqual(hours_in_period, 169) # only asserted to test algorithm
+ self.assertPayrollAlmostEqual(hours_in_period, 168.0) # only asserted to test algorithm
payslip.compute_sheet()
rules = self._getRules(payslip)