mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-06-26 10:54:26 +02:00
Check if end date is being set to a pending task (#3622)
check if end date is being set to a pending task -throw error if end date is being set to a pending task - add test for the bug
This commit is contained in:
parent
c00c0e941b
commit
d75ef7f197
2 changed files with 19 additions and 0 deletions
|
@ -116,6 +116,11 @@ void CmdModify::checkConsistency(Task &before, Task &after) {
|
|||
|
||||
if (before.has("recur") && (!after.has("recur") || after.get("recur") == ""))
|
||||
throw std::string("You cannot remove the recurrence from a recurring task.");
|
||||
|
||||
if ((before.getStatus() == Task::pending) && (after.getStatus() == Task::pending) &&
|
||||
(after.get("end") != ""))
|
||||
throw format("Could not modify task {1}. You cannot set an end date on a pending task.",
|
||||
before.identifier(true));
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
|
|
@ -56,6 +56,20 @@ class TestBug1763(TestCase):
|
|||
self.assertIn("Modified 0 tasks.", out)
|
||||
|
||||
|
||||
class TestBug3584(TestCase):
|
||||
def setUp(self):
|
||||
self.t = Task()
|
||||
|
||||
def test_mod_pending_task_end_date(self):
|
||||
"""Adding end date for a pending task throws an error"""
|
||||
self.t("add foo")
|
||||
code, out, err = self.t.runError("1 modify end:1d")
|
||||
self.assertIn(
|
||||
"Could not modify task 1. You cannot set an end date on a pending task.",
|
||||
err,
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
from simpletap import TAPTestRunner
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue