summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp>2017-03-12 21:04:22 +0900
committerJun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp>2017-03-12 21:04:22 +0900
commit2ff71e84ba6e2b92261b7052721e15ce35c496ca (patch)
treee96f243bb72ba5975805eedff8f9715cf407c389
parent420fc41b7cccab7f1ee07abab2cb7c72501cf91e (diff)
downloadzsh-2ff71e84ba6e2b92261b7052721e15ce35c496ca.tar.gz
zsh-2ff71e84ba6e2b92261b7052721e15ce35c496ca.zip
40820: add a few tests of strftime, related to 40681
-rw-r--r--ChangeLog5
-rw-r--r--Test/V09datetime.ztst14
2 files changed, 17 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 9744a1ee7..5bcd69961 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-03-12 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp>
+
+ * 40820: Test/V09datetime.ztst: add a few tests of strftime,
+ related to 40681
+
2017-03-11 Barton E. Schaefer <schaefer@zsh.org>
* 40832: Src/subst.c: fix $x:P when PWD=/
diff --git a/Test/V09datetime.ztst b/Test/V09datetime.ztst
index 7905155d8..ffad96c04 100644
--- a/Test/V09datetime.ztst
+++ b/Test/V09datetime.ztst
@@ -8,19 +8,21 @@
# It's not clear this skip_extensions is correct, but the
# format in question is causing problems on Solaris.
# We'll revist this after the release.
- [[ "$(strftime %^_10B 0)" = " JANUARY" ]] || skip_extensions=1
- [[ "$(LC_TIME=ja_JP.UTF-8 strftime %OS 1)" = 一 ]] || skip_japanese=1
+ [[ "$(strftime %^_10B 0 2>/dev/null)" = " JANUARY" ]] || skip_extensions=1
+ [[ "$(LC_TIME=ja_JP.UTF-8 strftime %OS 1 2>/dev/null)" = 一 ]] || skip_japanese=1
else
ZTST_unimplemented="can't load the zsh/datetime module for testing"
fi
%test
+ strftime '' 0
strftime %y 0
strftime %Y 1000000000
strftime %x 1200000000
strftime %X 1200000001
0:basic format specifiers
+>
>70
>2001
>01/10/08
@@ -61,6 +63,8 @@
strftime '%^_10B' 0
strftime %03Ey 650000000
strftime %-Oe 0
+ # width=400 is too wide and should cause an error
+ strftime %400d 0 2> /dev/null || echo OK
)
fi
0:various extensions
@@ -68,7 +72,13 @@
> JANUARY
>090
>1
+>OK
print -r -- ${(V)"$(strftime $'%Y\0%m\0%d' 100000000)"}
0:Embedded nulls
>1973^@03^@03
+
+# We assume '%@' is not a valid format on any OSs.
+# The result can be '%@' (Linux), '@' (BSDs) or an error (Cygwin).
+ [[ $(strftime '%@' 0 2> /dev/null) == (%|)@ || $? != 0 ]]
+0:bad format specifier