Files
arthur-os/test/shell.d/reminders-test.sh

35 lines
1.1 KiB
Bash

#!/bin/bash
set -euo pipefail
source "$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)/base-test.sh"
run_node_test <<'JS'
const reminders = requireFromRoot('shell/plugins/reminders/ReminderFlowModel.js')
assertEqual(reminders.validMinutes('15'), '15', 'reminders accepts positive integer minutes')
assertEqual(reminders.validMinutes(' 5 '), '5', 'reminders trims minute input')
assertEqual(reminders.validMinutes('0'), '', 'reminders rejects zero minutes')
assertEqual(reminders.validMinutes('-5'), '', 'reminders rejects negative minutes')
assertEqual(reminders.validMinutes('1.5'), '', 'reminders rejects fractional minutes')
assertEqual(reminders.validMinutes('soon'), '', 'reminders rejects non-numeric minutes')
assertDeepEqual(
reminders.reminderArgs('10', 'Check the oven'),
['10', 'Check the oven'],
'reminders builds command args with message'
)
assertDeepEqual(
reminders.reminderArgs('10', ''),
['10'],
'reminders omits empty message arg'
)
assertDeepEqual(
reminders.reminderArgs('0', 'ignored'),
[],
'reminders command args are empty for invalid minutes'
)
JS