diff options
author | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2017-09-07 15:20:26 +0200 |
---|---|---|
committer | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2017-09-07 15:20:26 +0200 |
commit | 91a76063d8ba4b2b0932b3dbe9e87a4e1f798540 (patch) | |
tree | 5724877d85ba944d441f74d04a956ab851823e5f | |
parent | f1a1cad93a1648942a3999f0b133fcc3e58d7a96 (diff) | |
download | org-mode-91a76063d8ba4b2b0932b3dbe9e87a4e1f798540.tar.gz |
org-duration: Fix `org-duration-to-minutes' with the empty string
* lisp/org-duration.el (org-duration-to-minutes): Accept the empty
string.
* testing/lisp/test-org-duration.el (test-org-duration/to-minutes):
Add test.
For backward compatibility with `org-duration-string-to-minutes'
accept the empty string as a duration.
-rw-r--r-- | lisp/org-duration.el | 4 | ||||
-rw-r--r-- | testing/lisp/test-org-duration.el | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/lisp/org-duration.el b/lisp/org-duration.el index 6d7770e..62afa01 100644 --- a/lisp/org-duration.el +++ b/lisp/org-duration.el @@ -272,11 +272,13 @@ When optional argument CANONICAL is non-nil, refer to When optional argument CANONICAL is non-nil, ignore `org-duration-units' and use standard time units value. -As a special case, a bare number represents minutes. +A bare number is translated into minutes. The empty string is +translated into 0.0. Return value as a float. Raise an error if duration format is not recognized." (cond + ((equal duration "") 0.0) ((numberp duration) (float duration)) ((string-match-p org-duration--h:mm-re duration) (pcase-let ((`(,hours ,minutes ,seconds) diff --git a/testing/lisp/test-org-duration.el b/testing/lisp/test-org-duration.el index 156ee59..0f9ef42 100644 --- a/testing/lisp/test-org-duration.el +++ b/testing/lisp/test-org-duration.el @@ -35,6 +35,8 @@ (should (= (org-duration-to-minutes "2") 2)) (should (= (org-duration-to-minutes "2.5") 2.5)) (should (= (org-duration-to-minutes 1) 1)) + ;; Special case: the empty string is 0.0. + (should (= (org-duration-to-minutes "") 0.0)) ;; Support custom units. (should (= 4 (let ((org-duration-units '(("longmin" . 2))) |