123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- unset LANG
- unset LANGUAGE
- unset LC_TIME
- unset LC_ALL
- dt=`busybox date -d 1:2 +%T`
- test x"$dt" = x"01:02:00"
- dt=`busybox date -d 1:2:3 +%T`
- test x"$dt" = x"01:02:03"
- host_date=/bin/date
- # date (GNU coreutils) 6.10 reports:
- # date: invalid date '1.2-3:4'
- # busybox 1.11.0.svn date reports:
- # date: invalid date '1/2 3:4'
- # TODO: (1) compare with strings, not "host date"
- # (2) implement d/m[/y] hh:mm[:ss] fmt in date applet
- #hdt=`$host_date -d '1/2 3:4'`
- #dt=`busybox date -d 1.2-3:4`
- #test x"$hdt" = x"$dt"
- #hdt=`$host_date -d '1/2 3:4:5'`
- #dt=`busybox date -d 1.2-3:4:5`
- #test x"$hdt" = x"$dt"
- #hdt=`$host_date -d '1/2/1999 3:4'`
- #dt=`busybox date -d 1999.1.2-3:4`
- #test x"$hdt" = x"$dt"
- #hdt=`$host_date -d '1/2/1999 3:4:5'`
- #dt=`busybox date -d 1999.1.2-3:4:5`
- #test x"$hdt" = x"$dt"
- hdt=`$host_date -d '1999-1-2 3:4:5'`
- dt=`busybox date -d '1999-1-2 3:4:5'`
- test x"$hdt" = x"$dt"
- # Avoiding using week day in this evaluation, as it's mostly different every year
- # date (GNU coreutils) 6.10 reports:
- # date: invalid date '01231133'
- #dt=`busybox date -d 01231133 +%c`
- #dt=`echo "$dt" | cut -b5-19`
- #test x"$dt" = x"Jan 23 11:33:00"
- # date (GNU coreutils) 6.10 reports:
- # date: invalid date '012311332000'
- dt=`busybox date -d 200001231133 +%c`
- test x"$dt" = x"Sun Jan 23 11:33:00 2000"
- # date (GNU coreutils) 6.10 reports:
- # date: invalid date '012311332000'
- dt=`busybox date -d 200001231133.30 +%c`
- test x"$dt" = x"Sun Jan 23 11:33:30 2000"
- lcbbd="LC_ALL=C busybox date"
- wd=$(eval $lcbbd +%a) # weekday name
- mn=$(eval $lcbbd +%b) # month name
- dm=$(eval $lcbbd +%e) # day of month, space padded
- h=$(eval $lcbbd +%H) # hour, zero padded
- m=$(eval $lcbbd +%M) # minute, zero padded
- s=$(eval $lcbbd +%S) # second, zero padded
- z=$(eval $lcbbd -u +%Z) # time zone abbreviation
- y=$(eval $lcbbd +%Y) # year
- res=OK
- case $wd in
- Sun)
- ;;
- Mon)
- ;;
- Tue)
- ;;
- Wed)
- ;;
- Thu)
- ;;
- Fri)
- ;;
- Sat)
- ;;
- *)
- res=BAD
- ;;
- esac
- case $mn in
- Jan)
- ;;
- Feb)
- ;;
- Mar)
- ;;
- Apr)
- ;;
- May)
- ;;
- Jun)
- ;;
- Jul)
- ;;
- Aug)
- ;;
- Sep)
- ;;
- Oct)
- ;;
- Nov)
- ;;
- Dec)
- ;;
- *)
- res=BAD
- ;;
- esac
- dm=${dm# *}
- [ $dm -ge 1 ] && [ $dm -le 31 ] || res=BAD
- h=${h#0}
- [ $h -ge 0 ] && [ $h -le 23 ] || res=BAD
- m=${m#0}
- [ $m -ge 0 ] && [ $m -le 59 ] || res=BAD
- s=${s#0}
- [ $s -ge 0 ] && [ $s -le 59 ] || res=BAD
- [ $z = UTC ] || res=BAD
- [ $y -ge 1970 ] || res=BAD
- test x"$res" = xOK
- # This should error out (by showing usage text). Testing for that
- dt=`busybox date -d 012311332000.30 %+c 2>&1 | head -n 1`
- test x"${dt##BusyBox * multi-call binary*}" = x""
|