regress.sh revision 201421
1192482Sedwin#!/bin/sh 2192482Sedwin 3192482Sedwin# 4192482Sedwin# Regression tests for date(1) 5192482Sedwin# 6192482Sedwin# Submitted by Edwin Groothuis <edwin@FreeBSD.org> 7192482Sedwin# 8192482Sedwin# $FreeBSD: head/tools/regression/bin/date/regress.sh 201421 2010-01-03 09:30:50Z obrien $ 9192482Sedwin# 10192482Sedwin 11192482Sedwin# 12192482Sedwin# These two date/times have been chosen carefully, they 13192482Sedwin# create both the single digit and double/multidigit version of 14192482Sedwin# the values. 15192482Sedwin# 16192482Sedwin# To create a new one, make sure you are using the UTC timezone! 17192482Sedwin# 18192482Sedwin 19192482SedwinTEST1=3222243 # 1970-02-07 07:04:03 20192482SedwinTEST2=1005600000 # 2001-11-12 21:11:12 21192482Sedwin 22192482Sedwinexport LANG=C 23192482Sedwinexport TZ=UTC 24192482Sedwincount=0 25192482Sedwin 26192482Sedwincheck() 27192482Sedwin{ 28192482Sedwin S=$1 29192482Sedwin A1=$2 30192482Sedwin A2=$3 31192482Sedwin 32201421Sobrien if [ -z "${A2}" ]; then A2=${A1}; fi 33201421Sobrien 34192482Sedwin count=`expr ${count} + 1` 35192482Sedwin 36192482Sedwin R=`date -r ${TEST1} +%${S}` 37192482Sedwin if [ "${R}" = "${A1}" ]; then 38201421Sobrien echo "ok ${count} - ${S}(a)" 39192482Sedwin else 40201421Sobrien echo "no ok ${count} - ${S}(a) (got ${R}, expected ${A1})" 41192482Sedwin fi 42192482Sedwin 43201421Sobrien count=`expr ${count} + 1` 44201421Sobrien 45192482Sedwin R=`date -r ${TEST2} +%${S}` 46192482Sedwin if [ "${R}" = "${A2}" ]; then 47201421Sobrien echo "ok ${count} - ${S}(b)" 48192482Sedwin else 49201421Sobrien echo "no ok ${count} - ${S}(b) (got ${R}, expected ${A2})" 50192482Sedwin fi 51192482Sedwin} 52192482Sedwin 53201421Sobrienecho "1..78" 54201421Sobrien 55192482Sedwincheck A Saturday Monday 56192482Sedwincheck a Sat Mon 57192482Sedwincheck B February November 58192482Sedwincheck b Feb Nov 59192482Sedwincheck C 19 20 60192482Sedwincheck c "Sat Feb 7 07:04:03 1970" "Mon Nov 12 21:20:00 2001" 61192482Sedwincheck D 02/07/70 11/12/01 62192482Sedwincheck d 07 12 63192482Sedwincheck e " 7" 12 64192482Sedwincheck F "1970-02-07" "2001-11-12" 65192482Sedwincheck G 1970 2001 66192482Sedwincheck g 70 01 67192482Sedwincheck H 07 21 68192482Sedwincheck h Feb Nov 69192482Sedwincheck I 07 09 70192482Sedwincheck j 038 316 71192482Sedwincheck k " 7" 21 72192482Sedwincheck l " 7" " 9" 73192482Sedwincheck M 04 20 74192482Sedwincheck m 02 11 75192482Sedwincheck p AM PM 76192482Sedwincheck R 07:04 21:20 77192482Sedwincheck r "07:04:03 AM" "09:20:00 PM" 78192482Sedwincheck S 03 00 79192482Sedwincheck s ${TEST1} ${TEST2} 80192482Sedwincheck U 05 45 81192482Sedwincheck u 6 1 82192482Sedwincheck V 06 46 83192482Sedwincheck v " 7-Feb-1970" "12-Nov-2001" 84192482Sedwincheck W 05 46 85192482Sedwincheck w 6 1 86192482Sedwincheck X "07:04:03" "21:20:00" 87192482Sedwincheck x "02/07/70" "11/12/01" 88192482Sedwincheck Y 1970 2001 89192482Sedwincheck y 70 01 90192482Sedwincheck Z UTC UTC 91192482Sedwincheck z +0000 +0000 92192482Sedwincheck % % % 93192482Sedwincheck + "Sat Feb 7 07:04:03 UTC 1970" "Mon Nov 12 21:20:00 UTC 2001" 94