mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
04a92f210c
In f32e473ff520, the "commit" function was extracted into a testutil for re-use. However, test-encoding.t was skipped over in that changeset, as I was seeing unexplained test failures. Since those test failures have now been explained (and fixed), this changeset performs the same extraction on test-encoding.t as was done on all the other tests. The version of fn_git_commit that was used in testutil redirected all output (including errors) to /dev/null, which didn't match the expectations of this test. The test utility functions for commit/tag now no longer throw away error output, instead leaving it to individual tests to decide if error output should be ignored.
58 lines
1.9 KiB
Bash
Executable File
58 lines
1.9 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# This file holds logic that is used in many tests.
|
|
# It can be called in a test like this:
|
|
# $ . "$TESTDIR/testutil"
|
|
|
|
# Activate extensions
|
|
echo "[extensions]" >> $HGRCPATH
|
|
echo "hggit=$(echo $(dirname $TESTDIR))/hggit" >> $HGRCPATH
|
|
# Not needed in Mercurial 2.3+, as graphlog was integrated into core
|
|
echo 'graphlog=' >> $HGRCPATH
|
|
echo 'mq=' >> $HGRCPATH
|
|
|
|
# Standard checks for external dependencies
|
|
# We use the git command-line client and dulwich in pretty much all the tests.
|
|
# Thus, to avoid repetitively declaring that requirement in almost every test,
|
|
# we just call the checks in all tests that include this library.
|
|
python -c 'import dulwich' || {
|
|
echo "skipped: missing feature: dulwich" && exit 80
|
|
}
|
|
"$TESTDIR/hghave" git || exit 80
|
|
|
|
GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME
|
|
GIT_AUTHOR_EMAIL='test@example.org'; export GIT_AUTHOR_EMAIL
|
|
GIT_AUTHOR_DATE="2007-01-01 00:00:00 +0000"; export GIT_AUTHOR_DATE
|
|
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; export GIT_COMMITTER_NAME
|
|
GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"; export GIT_COMMITTER_EMAIL
|
|
GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE
|
|
|
|
# Functions to commit and tag in Mercurial and Git in a predictable manner
|
|
count=10
|
|
|
|
fn_git_commit() {
|
|
GIT_AUTHOR_DATE="2007-01-01 00:00:$count +0000"
|
|
GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"
|
|
git commit "$@" >/dev/null || echo "git commit error"
|
|
count=`expr $count + 1`
|
|
}
|
|
|
|
fn_hg_commit() {
|
|
HGDATE="2007-01-01 00:00:$count +0000"
|
|
hg commit -d "$HGDATE" "$@" >/dev/null || echo "hg commit error"
|
|
count=`expr $count + 1`
|
|
}
|
|
|
|
fn_git_tag() {
|
|
GIT_AUTHOR_DATE="2007-01-01 00:00:$count +0000"
|
|
GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"
|
|
git tag "$@" >/dev/null || echo "git tag error"
|
|
count=`expr $count + 1`
|
|
}
|
|
|
|
fn_hg_tag() {
|
|
HGDATE="2007-01-01 00:00:$count +0000"
|
|
hg tag -d "$HGDATE" "$@" >/dev/null || echo "hg tag error"
|
|
count=`expr $count + 1`
|
|
}
|