Enhancement - Duration

- Durations can now parse '3 wks', '1 wk', '1w', and similar for yrs,
  qtrs, mths, wks, days.
- Added unit tests.
This commit is contained in:
Paul Beckingham 2010-06-26 21:47:52 -04:00
parent 05fd9278a6
commit 1f8f4c631d
3 changed files with 262 additions and 88 deletions

View file

@ -75,61 +75,61 @@ Confirmed:
=cut
my $output = qx{../task rc:period.rc add daily due:tomorrow recur:daily};
unlike ($output, qr/was not recignized/, 'recur:daily');
unlike ($output, qr/was not recognized/, 'recur:daily');
$output = qx{../task rc:period.rc add day due:tomorrow recur:day};
unlike ($output, qr/was not recignized/, 'recur:day');
unlike ($output, qr/was not recognized/, 'recur:day');
$output = qx{../task rc:period.rc add weekly due:tomorrow recur:weekly};
unlike ($output, qr/was not recignized/, 'recur:weekly');
unlike ($output, qr/was not recognized/, 'recur:weekly');
$output = qx{../task rc:period.rc add sennight due:tomorrow recur:sennight};
unlike ($output, qr/was not recignized/, 'recur:sennight');
unlike ($output, qr/was not recognized/, 'recur:sennight');
$output = qx{../task rc:period.rc add biweekly due:tomorrow recur:biweekly};
unlike ($output, qr/was not recignized/, 'recur:biweekly');
unlike ($output, qr/was not recognized/, 'recur:biweekly');
$output = qx{../task rc:period.rc add fortnight due:tomorrow recur:fortnight};
unlike ($output, qr/was not recignized/, 'recur:fortnight');
unlike ($output, qr/was not recognized/, 'recur:fortnight');
$output = qx{../task rc:period.rc add monthly due:tomorrow recur:monthly};
unlike ($output, qr/was not recignized/, 'recur:monthly');
unlike ($output, qr/was not recognized/, 'recur:monthly');
$output = qx{../task rc:period.rc add quarterly due:tomorrow recur:quarterly};
unlike ($output, qr/was not recignized/, 'recur:quarterly');
unlike ($output, qr/was not recognized/, 'recur:quarterly');
$output = qx{../task rc:period.rc add semiannual due:tomorrow recur:semiannual};
unlike ($output, qr/was not recignized/, 'recur:semiannual');
unlike ($output, qr/was not recognized/, 'recur:semiannual');
$output = qx{../task rc:period.rc add bimonthly due:tomorrow recur:bimonthly};
unlike ($output, qr/was not recignized/, 'recur:bimonthly');
unlike ($output, qr/was not recognized/, 'recur:bimonthly');
$output = qx{../task rc:period.rc add biannual due:tomorrow recur:biannual};
unlike ($output, qr/was not recignized/, 'recur:biannual');
unlike ($output, qr/was not recognized/, 'recur:biannual');
$output = qx{../task rc:period.rc add biyearly due:tomorrow recur:biyearly};
unlike ($output, qr/was not recignized/, 'recur:biyearly');
unlike ($output, qr/was not recognized/, 'recur:biyearly');
$output = qx{../task rc:period.rc add annual due:tomorrow recur:annual};
unlike ($output, qr/was not recignized/, 'recur:annual');
unlike ($output, qr/was not recognized/, 'recur:annual');
$output = qx{../task rc:period.rc add yearly due:tomorrow recur:yearly};
unlike ($output, qr/was not recignized/, 'recur:yearly');
unlike ($output, qr/was not recognized/, 'recur:yearly');
$output = qx{../task rc:period.rc add 2d due:tomorrow recur:2d};
unlike ($output, qr/was not recignized/, 'recur:2m');
unlike ($output, qr/was not recognized/, 'recur:2d');
$output = qx{../task rc:period.rc add 2w due:tomorrow recur:2w};
unlike ($output, qr/was not recignized/, 'recur:2q');
unlike ($output, qr/was not recognized/, 'recur:2w');
$output = qx{../task rc:period.rc add 2m due:tomorrow recur:2m};
unlike ($output, qr/was not recignized/, 'recur:2d');
$output = qx{../task rc:period.rc add 2m due:tomorrow recur:2mo};
unlike ($output, qr/was not recognized/, 'recur:2m');
$output = qx{../task rc:period.rc add 2q due:tomorrow recur:2q};
unlike ($output, qr/was not recignized/, 'recur:2w');
unlike ($output, qr/was not recognized/, 'recur:2q');
$output = qx{../task rc:period.rc add 2y due:tomorrow recur:2y};
unlike ($output, qr/was not recignized/, 'recur:2y');
unlike ($output, qr/was not recognized/, 'recur:2y');
# Verify that the recurring task instances get created. One of each.
$output = qx{../task rc:period.rc list};