[
{
"name": "£1,000 a month: £230.76, rounded down from £230.769",
"args": [
{
"minor": 100000,
"currency": "GBP"
},
"monthly"
],
"expect": {
"minor": 23076,
"currency": "GBP"
}
},
{
"name": "£240 a week (the guidance's example): exactly £240",
"args": [
{
"minor": 24000,
"currency": "GBP"
},
"weekly"
],
"expect": {
"minor": 24000,
"currency": "GBP"
}
},
{
"name": "£1,300 a month is exactly £300 a week",
"args": [
{
"minor": 130000,
"currency": "GBP"
},
"monthly"
],
"expect": {
"minor": 30000,
"currency": "GBP"
}
},
{
"name": "£26,000 a year is exactly £500 a week",
"args": [
{
"minor": 2600000,
"currency": "GBP"
},
"annual"
],
"expect": {
"minor": 50000,
"currency": "GBP"
}
},
{
"name": "£25,999.99 a year rounds down to £499.99",
"args": [
{
"minor": 2599999,
"currency": "GBP"
},
"annual"
],
"expect": {
"minor": 49999,
"currency": "GBP"
}
},
{
"name": "not a quarter of the monthly rent: £1,500 a month is £346.15, not £375",
"args": [
{
"minor": 150000,
"currency": "GBP"
},
"monthly"
],
"expect": {
"minor": 34615,
"currency": "GBP"
}
},
{
"name": "a penny a month rounds down to nothing",
"args": [
{
"minor": 1,
"currency": "GBP"
},
"monthly"
],
"expect": {
"minor": 0,
"currency": "GBP"
}
},
{
"name": "zero rent",
"args": [
{
"minor": 0,
"currency": "GBP"
},
"weekly"
],
"expect": {
"minor": 0,
"currency": "GBP"
}
},
{
"name": "rent in euros is refused",
"args": [
{
"minor": 100000,
"currency": "EUR"
},
"monthly"
],
"expectError": "rent must be in GBP"
},
{
"name": "negative rent is refused",
"args": [
{
"minor": -100,
"currency": "GBP"
},
"monthly"
],
"expectError": "rent must not be negative"
},
{
"name": "an unknown rent period is refused",
"args": [
{
"minor": 100000,
"currency": "GBP"
},
"quarterly"
],
"expectError": "unknown rent period"
}
]