[
{ "name": "under a month's service: no statutory notice either way", "args": ["2026-09-01", "2026-09-23"], "expect": { "serviceYears": 0, "employerWeeks": 0, "employeeWeeks": 0 } },
{ "name": "one day short of a month", "args": ["2026-08-25", "2026-09-23"], "expect": { "serviceYears": 0, "employerWeeks": 0, "employeeWeeks": 0 } },
{ "name": "exactly one month: one week each way", "args": ["2026-08-24", "2026-09-23"], "expect": { "serviceYears": 0, "employerWeeks": 1, "employeeWeeks": 1 } },
{ "name": "a day short of two years is still one week", "args": ["2024-01-01", "2025-12-30"], "expect": { "serviceYears": 1, "employerWeeks": 1, "employeeWeeks": 1 } },
{ "name": "two years on the anniversary: two weeks", "args": ["2024-01-01", "2025-12-31"], "expect": { "serviceYears": 2, "employerWeeks": 2, "employeeWeeks": 1 } },
{ "name": "six completed years: six weeks", "args": ["2020-03-15", "2026-09-23"], "expect": { "serviceYears": 6, "employerWeeks": 6, "employeeWeeks": 1 } },
{ "name": "a day short of twelve years is eleven weeks", "args": ["2014-04-01", "2026-03-30"], "expect": { "serviceYears": 11, "employerWeeks": 11, "employeeWeeks": 1 } },
{ "name": "twelve years: twelve weeks", "args": ["2014-04-01", "2026-03-31"], "expect": { "serviceYears": 12, "employerWeeks": 12, "employeeWeeks": 1 } },
{ "name": "thirty years is capped at twelve weeks", "args": ["1996-01-01", "2026-01-01"], "expect": { "serviceYears": 30, "employerWeeks": 12, "employeeWeeks": 1 } },
{ "name": "notice before the start date is an error", "args": ["2026-09-23", "2026-09-01"], "expectError": "is before startDate" }
]