aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2007-02-07 10:42:08 -0800
committerJunio C Hamano <junkio@cox.net>2007-02-07 10:43:56 -0800
commitfa1b4d2ace9bbd7edbcbf9bd41f2cc4f7f6b616e (patch)
tree26499557434dc68897e79cd762d3d90402c2635a
parentecea1ed5fe18a00bfca546d20de8ed8759c35ff6 (diff)
downloadgit-fa1b4d2ace9bbd7edbcbf9bd41f2cc4f7f6b616e.tar.gz
git-fa1b4d2ace9bbd7edbcbf9bd41f2cc4f7f6b616e.tar.xz
t4200: skip gc-rerere test on systems with non GNU date.
Quite nonstandard "date -d @11111111 +%s" does not even fail on OpenBSD but gives the current date in "seconds since epoch" format, which is useless for the purpose of this test. We want to make sure that this returns exactly the same input before proceeding. Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-xt/t4200-rerere.sh37
1 files changed, 17 insertions, 20 deletions
diff --git a/t/t4200-rerere.sh b/t/t4200-rerere.sh
index 91be272ac..c571a1bd7 100755
--- a/t/t4200-rerere.sh
+++ b/t/t4200-rerere.sh
@@ -113,8 +113,11 @@ mkdir $rr2
echo Hello > $rr2/preimage
case "$(date -d @11111111 +%s 2>/dev/null)" in
-[1-9]*)
- # it is a recent GNU date. good.
+11111111)
+ # 'date' must be able to take arbitrary input with @11111111 notation.
+ # for this test to succeed. We should fix this part using more
+ # portable script someday.
+
now=$(date +%s)
almost_15_days_ago=$(($now+60-15*86400))
just_over_15_days_ago=$(($now-1-15*86400))
@@ -124,30 +127,24 @@ case "$(date -d @11111111 +%s 2>/dev/null)" in
predate2="$(date -d "@$almost_15_days_ago" +%Y%m%d%H%M.%S)"
postdate1="$(date -d "@$just_over_60_days_ago" +%Y%m%d%H%M.%S)"
postdate2="$(date -d "@$just_over_15_days_ago" +%Y%m%d%H%M.%S)"
- ;;
-*)
- # it is not GNU date. oh, well.
- predate1="$(date +%Y%m%d%H%M.%S)"
- predate2="$(date +%Y%m%d%H%M.%S)"
- postdate1='200610010000.00'
- postdate2='200612010000.00'
-esac
-touch -m -t "$predate1" $rr/preimage
-touch -m -t "$predate2" $rr2/preimage
+ touch -m -t "$predate1" $rr/preimage
+ touch -m -t "$predate2" $rr2/preimage
-test_expect_success 'garbage collection (part1)' 'git rerere gc'
+ test_expect_success 'garbage collection (part1)' 'git rerere gc'
-test_expect_success 'young records still live' \
- "test -f $rr/preimage -a -f $rr2/preimage"
+ test_expect_success 'young records still live' \
+ "test -f $rr/preimage -a -f $rr2/preimage"
-touch -m -t "$postdate1" $rr/preimage
-touch -m -t "$postdate2" $rr2/preimage
+ touch -m -t "$postdate1" $rr/preimage
+ touch -m -t "$postdate2" $rr2/preimage
-test_expect_success 'garbage collection (part2)' 'git rerere gc'
+ test_expect_success 'garbage collection (part2)' 'git rerere gc'
-test_expect_success 'old records rest in peace' \
- "test ! -f $rr/preimage -a ! -f $rr2/preimage"
+ test_expect_success 'old records rest in peace' \
+ "test ! -f $rr/preimage -a ! -f $rr2/preimage"
+ ;;
+esac
test_done