ui: 'string->duration' supports hours and seconds.
* guix/ui.scm (string->duration): Add seconds and hours. * tests/ui.scm ("duration, 1 second"): New test.
This commit is contained in:
parent
2eca2d6267
commit
638c5b7939
10
guix/ui.scm
10
guix/ui.scm
|
@ -968,7 +968,15 @@ following patterns: \"1d\", \"1w\", \"1m\"."
|
||||||
(make-time time-duration 0
|
(make-time time-duration 0
|
||||||
(* 3600 hours (string->number (match:substring match 1)))))
|
(* 3600 hours (string->number (match:substring match 1)))))
|
||||||
|
|
||||||
(cond ((string-match "^([0-9]+)d$" str)
|
(cond ((string-match "^([0-9]+)s$" str)
|
||||||
|
=>
|
||||||
|
(lambda (match)
|
||||||
|
(make-time time-duration 0
|
||||||
|
(string->number (match:substring match 1)))))
|
||||||
|
((string-match "^([0-9]+)h$" str)
|
||||||
|
(lambda (match)
|
||||||
|
(hours->duration 1 match)))
|
||||||
|
((string-match "^([0-9]+)d$" str)
|
||||||
=>
|
=>
|
||||||
(lambda (match)
|
(lambda (match)
|
||||||
(hours->duration 24 match)))
|
(hours->duration 24 match)))
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -189,6 +189,10 @@ Second line" 24))
|
||||||
(string->duration "1m")
|
(string->duration "1m")
|
||||||
(string->duration "30d"))
|
(string->duration "30d"))
|
||||||
|
|
||||||
|
(test-equal "duration, 1 second"
|
||||||
|
(make-time time-duration 0 1)
|
||||||
|
(string->duration "1s"))
|
||||||
|
|
||||||
(test-equal "duration, integer"
|
(test-equal "duration, integer"
|
||||||
#f
|
#f
|
||||||
(string->duration "1"))
|
(string->duration "1"))
|
||||||
|
|
Loading…
Reference in New Issue