diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-07-01 23:37:55 +0100 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-07-01 23:53:10 +0100 |
commit | ae6f73de56d388b235980c765acbdb2e205c332e (patch) | |
tree | 4d092602363f564bcfe3a787172a61c102e0bcbc /tests | |
parent | 8b21e27c6d1fb3d3d7c1da290f2e6f3bc278b40a (diff) |
Set GIT_COMMITTER_DATE and GIT_AUTHOR_DATE
This avoids most date dependencies: unless other measures are taken,
the commits and tags are identical iff they are constructed
identically. This makes the test suite more deterministic.
In drs-push-rejects test, increment them explicitly, so as to make all
of mktag's tags distinct objects.
Otherwise it can generate identical tags (now, always; previously,
only sometimes on fast computers), causing spurious variations in
behaviour (eg, things not being rejected because they do not represent
any change).
Diffstat (limited to 'tests')
-rw-r--r-- | tests/lib | 8 | ||||
-rwxr-xr-x | tests/tests/drs-push-rejects | 1 |
2 files changed, 9 insertions, 0 deletions
@@ -12,6 +12,9 @@ t-set-intree : ${DGIT_TEST_DEBUG=-D} export DGIT_TEST_DEBUG +export GIT_COMMITTER_DATE='1440253867 +0100' +export GIT_AUTHOR_DATE='1440253867 +0100' + root=`pwd` troot=$root/tests testname="${DGIT_TEST_TESTNAME-${0##*/}}" @@ -45,6 +48,11 @@ incoming = $tmp/incoming run_dinstall = 0 END +t-git-next-date () { + GIT_COMMITTER_DATE="$(( ${GIT_COMMITTER_DATE%% *} + 1 )) ${GIT_COMMITTER_DATE#* }" + GIT_AUTHOR_DATE="$GIT_COMMITTER_DATE" +} + t-expect-fail () { local mpat="$1"; shift diff --git a/tests/tests/drs-push-rejects b/tests/tests/drs-push-rejects index 3782890..1a57374 100755 --- a/tests/tests/drs-push-rejects +++ b/tests/tests/drs-push-rejects @@ -37,6 +37,7 @@ prep () { push_spec="$push_spec1 $push_spec2" } mktag () { + t-git-next-date git tag -f $tag_signer -m "$tag_message" $tag_name "$@" } |