BUG: pri doesn't issue error when task does not exist.
This commit is contained in:
@@ -66,6 +66,12 @@ TODO: 4 added.
|
|||||||
TODO: 4 of 4 tasks shown
|
TODO: 4 of 4 tasks shown
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
test_todo_session 'priority error' <<EOF
|
||||||
|
>>> todo.sh pri 10 B
|
||||||
|
=== 1
|
||||||
|
TODO: No task 10.
|
||||||
|
EOF
|
||||||
|
|
||||||
cat > todo.txt <<EOF
|
cat > todo.txt <<EOF
|
||||||
(B) smell the uppercase Roses +flowers @outside
|
(B) smell the uppercase Roses +flowers @outside
|
||||||
(C) notice the sunflowers
|
(C) notice the sunflowers
|
||||||
|
|||||||
9
todo.sh
9
todo.sh
@@ -1138,7 +1138,14 @@ note: PRIORITY must be anywhere from A to Z."
|
|||||||
[[ "$item" = +([0-9]) ]] || die "$errmsg"
|
[[ "$item" = +([0-9]) ]] || die "$errmsg"
|
||||||
[[ "$newpri" = @([A-Z]) ]] || die "$errmsg"
|
[[ "$newpri" = @([A-Z]) ]] || die "$errmsg"
|
||||||
|
|
||||||
oldpri=$(sed -ne $item's/^(\(.\)) .*/\1/p' "$TODO_FILE")
|
todo=$(sed "$item!d" "$TODO_FILE")
|
||||||
|
[ -z "$todo" ] && die "TODO: No task $item."
|
||||||
|
|
||||||
|
oldpri=
|
||||||
|
if [[ "$todo" = \(?\)\ * ]]; then
|
||||||
|
oldpri=${todo:1:1}
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$oldpri" != "$newpri" ]; then
|
if [ "$oldpri" != "$newpri" ]; then
|
||||||
sed -i.bak -e $item"s/^(.) //" -e $item"s/^/($newpri) /" "$TODO_FILE"
|
sed -i.bak -e $item"s/^(.) //" -e $item"s/^/($newpri) /" "$TODO_FILE"
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user