[
{ "name": "no absence scores zero", "args": [[]], "expect": { "spells": 0, "days": 0, "score": 0 } },
{ "name": "one ten-day spell scores 10", "args": [[10]], "expect": { "spells": 1, "days": 10, "score": 10 } },
{ "name": "five two-day spells score 250", "args": [[2, 2, 2, 2, 2]], "expect": { "spells": 5, "days": 10, "score": 250 } },
{ "name": "ten one-day spells score 1000: same days, a hundred times the score", "args": [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]], "expect": { "spells": 10, "days": 10, "score": 1000 } },
{ "name": "mixed spells", "args": [[3, 2, 1]], "expect": { "spells": 3, "days": 6, "score": 54 } },
{ "name": "a single day off", "args": [[1]], "expect": { "spells": 1, "days": 1, "score": 1 } },
{ "name": "a long-term absence plus a short one", "args": [[60, 1]], "expect": { "spells": 2, "days": 61, "score": 244 } },
{ "name": "a zero-day spell is an error", "args": [[2, 0]], "expectError": "at least one whole day" },
{ "name": "a negative spell is an error", "args": [[-1]], "expectError": "at least one whole day" },
{ "name": "a half-day spell is an error", "args": [[1.5]], "expectError": "at least one whole day" }
]