1#!/bin/sh 2 3# 4# Regression tests for date(1) 5# 6# Submitted by Edwin Groothuis <edwin@FreeBSD.org> 7# 8# $FreeBSD$ 9# 10 11# 12# These two date/times have been chosen carefully, they 13# create both the single digit and double/multidigit version of 14# the values. 15# 16# To create a new one, make sure you are using the UTC timezone! 17# 18 19TEST1=3222243 # 1970-02-07 07:04:03 20TEST2=1005600000 # 2001-11-12 21:11:12 21 22export LC_ALL=C 23export TZ=UTC 24count=0 25 26check() 27{ 28 S=$1 29 A1=$2 30 A2=$3 31 32 count=`expr ${count} + 1` 33 34 if [ -z "${A2}" ]; then A2=${A1}; fi 35 36 R=`date -r ${TEST1} +%${S}` 37 if [ "${R}" = "${A1}" ]; then 38 echo "ok ${S}{t1}" 39 else 40 echo "no ok ${S}{t1} - (got ${R}, expected ${A1})" 41 fi 42 43 R=`date -r ${TEST2} +%${S}` 44 if [ "${R}" = "${A2}" ]; then 45 echo "ok ${S}{t2}" 46 else 47 echo "no ok ${S}{t2} - (got ${R}, expected ${A2})" 48 fi 49} 50 51echo "1..78" 52 53check A Saturday Monday 54check a Sat Mon 55check B February November 56check b Feb Nov 57check C 19 20 58check c "Sat Feb 7 07:04:03 1970" "Mon Nov 12 21:20:00 2001" 59check D 02/07/70 11/12/01 60check d 07 12 61check e " 7" 12 62check F "1970-02-07" "2001-11-12" 63check G 1970 2001 64check g 70 01 65check H 07 21 66check h Feb Nov 67check I 07 09 68check j 038 316 69check k " 7" 21 70check l " 7" " 9" 71check M 04 20 72check m 02 11 73check p AM PM 74check R 07:04 21:20 75check r "07:04:03 AM" "09:20:00 PM" 76check S 03 00 77check s ${TEST1} ${TEST2} 78check U 05 45 79check u 6 1 80check V 06 46 81check v " 7-Feb-1970" "12-Nov-2001" 82check W 05 46 83check w 6 1 84check X "07:04:03" "21:20:00" 85check x "02/07/70" "11/12/01" 86check Y 1970 2001 87check y 70 01 88check Z UTC UTC 89check z +0000 +0000 90check % % % 91check + "Sat Feb 7 07:04:03 UTC 1970" "Mon Nov 12 21:20:00 UTC 2001" 92