33 lines
1.3 KiB
EmacsLisp
33 lines
1.3 KiB
EmacsLisp
;;; taskwarrior-test.el --- Taskwarrior test suite -*- lexical-binding: t; -*-
|
|
|
|
;; Copyright (C) 2019-2020 Patrick Winter
|
|
;;
|
|
;; License: GPLv3
|
|
|
|
;;; Commentary:
|
|
|
|
;;; Code:
|
|
|
|
(require 'taskwarrior)
|
|
|
|
(ert-deftest taskwarrior-add-task ()
|
|
"Ensure that special characters such as quotes and parens are properly escaped when adding new tasks"
|
|
(let* ((task-id (taskwarrior--add "project:ert +emacs \"Write test suite for taskwarrior.el (using ERT)\""))
|
|
(task (taskwarrior-export-task task-id)))
|
|
(should (string= (alist-get 'project task) "ert"))
|
|
(should (string= (aref (alist-get 'tags task) 0) "emacs"))
|
|
(should (string= (alist-get 'description task) "Write test suite for taskwarrior.el (using ERT)"))))
|
|
|
|
(ert-deftest taskwarrior-parse-task-id ()
|
|
(should (string= (taskwarrior--parse-created-task-id "Created task 9.") "9"))
|
|
(should (string= (taskwarrior--parse-created-task-id "Created task 1000.") "1000"))
|
|
(should (string= (taskwarrior--parse-created-task-id "Some invalid input") nil)))
|
|
|
|
(ert-deftest taskwarrior--parse-date ()
|
|
(should (string= (taskwarrior--parse-date "20191108T225959Z") "08-11-2019"))
|
|
(should (string= (taskwarrior--parse-date "20191108T225959Z" :date) "08-11-2019"))
|
|
(should (string= (taskwarrior--parse-date "20191108T225959Z" :datetime) "08-11-2019 22:59:59")))
|
|
|
|
|
|
(provide 'taskwarrior-test)
|
|
;;; taskwarrior-test.el ends here
|