* [PATCH] Adjust t5510 to put remotes in config
@ 2006-12-17 14:46 Johannes Schindelin
[not found] ` <7v7iwox59i.fsf@assigned-by-dhcp.cox.net>
0 siblings, 1 reply; 8+ messages in thread
From: Johannes Schindelin @ 2006-12-17 14:46 UTC (permalink / raw)
To: git, junkio
Since .git/remotes/ is no longer created by default, t5510 failed.
While at it, convert the tests to use the config way of specifying
remotes instead of creating a file in .git/remotes/.
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
---
t/t5510-fetch.sh | 14 +++++---------
1 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/t/t5510-fetch.sh b/t/t5510-fetch.sh
index a11ab0a..6229433 100755
--- a/t/t5510-fetch.sh
+++ b/t/t5510-fetch.sh
@@ -23,20 +23,16 @@ test_expect_success "clone and setup child repos" '
git clone . two &&
cd two &&
git repo-config branch.master.remote one &&
- {
- echo "URL: ../one/.git/"
- echo "Pull: refs/heads/master:refs/heads/one"
- } >.git/remotes/one
+ git repo-config remote.one.url ../one/.git/ &&
+ git repo-config remote.one.fetch refs/heads/master:refs/heads/one &&
cd .. &&
git clone . three &&
cd three &&
git repo-config branch.master.remote two &&
git repo-config branch.master.merge refs/heads/one &&
- {
- echo "URL: ../two/.git/"
- echo "Pull: refs/heads/master:refs/heads/two"
- echo "Pull: refs/heads/one:refs/heads/one"
- } >.git/remotes/two
+ git repo-config remote.two.url ../two/.git/ &&
+ git repo-config remote.two.fetch refs/heads/master:refs/heads/two &&
+ git repo-config --add remote.two.fetch refs/heads/one:refs/heads/one
'
test_expect_success "fetch test" '
--
1.4.4.2.ga4be2-dirty
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] Adjust t5510 to put remotes in config
[not found] ` <7v7iwox59i.fsf@assigned-by-dhcp.cox.net>
@ 2006-12-18 22:28 ` Johannes Schindelin
2006-12-18 22:42 ` Junio C Hamano
0 siblings, 1 reply; 8+ messages in thread
From: Johannes Schindelin @ 2006-12-18 22:28 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
Hi,
On Mon, 18 Dec 2006, Junio C Hamano wrote:
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
>
> > Since .git/remotes/ is no longer created by default, t5510 failed.
>
> Does not reproduce for me.
I just checked out a fresh copy of 'next'. It still fails. The culprit is
61dde8f91672ab362f3cfd3af8d6d09d448d4ffe, which removes the line
mkdir -p "$GIT_DIR/remotes" &&
which is line 372 in the parent of that commit.
> > While at it, convert the tests to use the config way of specifying
> > remotes instead of creating a file in .git/remotes/.
>
> I think adding tests to use config is good, but I'd rather see
> the test scripts to test not _only_ config but both.
Okay. How about fixing the first hunk as proposed, and the second by
'mkdir .git/remotes'?
Ciao,
Dscho
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Adjust t5510 to put remotes in config
2006-12-18 22:28 ` Johannes Schindelin
@ 2006-12-18 22:42 ` Junio C Hamano
2006-12-18 22:47 ` Johannes Schindelin
0 siblings, 1 reply; 8+ messages in thread
From: Junio C Hamano @ 2006-12-18 22:42 UTC (permalink / raw)
To: git
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> Hi,
>
> On Mon, 18 Dec 2006, Junio C Hamano wrote:
>
>> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
>>
>> > Since .git/remotes/ is no longer created by default, t5510 failed.
>>
>> Does not reproduce for me.
>
> I just checked out a fresh copy of 'next'. It still fails. The culprit is
> 61dde8f91672ab362f3cfd3af8d6d09d448d4ffe, which removes the line
>
> mkdir -p "$GIT_DIR/remotes" &&
>
> which is line 372 in the parent of that commit.
Hmmmmm.
But git-clone runs git-init-db and we ship an empty remotes
directory still as part of the templates. Why would removal of
that line matter?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Adjust t5510 to put remotes in config
2006-12-18 22:42 ` Junio C Hamano
@ 2006-12-18 22:47 ` Johannes Schindelin
2006-12-18 22:49 ` Johannes Schindelin
0 siblings, 1 reply; 8+ messages in thread
From: Johannes Schindelin @ 2006-12-18 22:47 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
Hi,
On Mon, 18 Dec 2006, Junio C Hamano wrote:
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
>
> > Hi,
> >
> > On Mon, 18 Dec 2006, Junio C Hamano wrote:
> >
> >> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> >>
> >> > Since .git/remotes/ is no longer created by default, t5510 failed.
> >>
> >> Does not reproduce for me.
> >
> > I just checked out a fresh copy of 'next'. It still fails. The culprit is
> > 61dde8f91672ab362f3cfd3af8d6d09d448d4ffe, which removes the line
> >
> > mkdir -p "$GIT_DIR/remotes" &&
> >
> > which is line 372 in the parent of that commit.
>
> Hmmmmm.
>
> But git-clone runs git-init-db and we ship an empty remotes
> directory still as part of the templates. Why would removal of
> that line matter?
I don't install templates. Ever. I want to be sure that nothing slips in
by mistake, and so I install hooks manually.
Ciao,
Dscho
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Adjust t5510 to put remotes in config
2006-12-18 22:47 ` Johannes Schindelin
@ 2006-12-18 22:49 ` Johannes Schindelin
2006-12-18 22:58 ` Junio C Hamano
0 siblings, 1 reply; 8+ messages in thread
From: Johannes Schindelin @ 2006-12-18 22:49 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
Hi,
On Mon, 18 Dec 2006, Johannes Schindelin wrote:
> I don't install templates. Ever. I want to be sure that nothing slips in
> by mistake, and so I install hooks manually.
Side note: prior to installing the tests would fail anyway, no?
Ciao,
Dscho
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Adjust t5510 to put remotes in config
2006-12-18 22:49 ` Johannes Schindelin
@ 2006-12-18 22:58 ` Junio C Hamano
2006-12-18 23:27 ` Junio C Hamano
0 siblings, 1 reply; 8+ messages in thread
From: Junio C Hamano @ 2006-12-18 22:58 UTC (permalink / raw)
To: Johannes Schindelin; +Cc: git
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> On Mon, 18 Dec 2006, Johannes Schindelin wrote:
>
>> I don't install templates. Ever. I want to be sure that nothing slips in
>> by mistake, and so I install hooks manually.
>
> Side note: prior to installing the tests would fail anyway, no?
They shouldn't. At least the intent was to make the tests read
from $SRCDIR/templates/blt/ as the source of templates.
But maybe you spotted a bug in t/test-lib.sh; I don't know
without digging.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Adjust t5510 to put remotes in config
2006-12-18 22:58 ` Junio C Hamano
@ 2006-12-18 23:27 ` Junio C Hamano
2006-12-19 8:18 ` Johannes Schindelin
0 siblings, 1 reply; 8+ messages in thread
From: Junio C Hamano @ 2006-12-18 23:27 UTC (permalink / raw)
To: Johannes Schindelin; +Cc: git
Junio C Hamano <junkio@cox.net> writes:
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
>
>> On Mon, 18 Dec 2006, Johannes Schindelin wrote:
>>
>>> I don't install templates. Ever. I want to be sure that nothing slips in
>>> by mistake, and so I install hooks manually.
>>
>> Side note: prior to installing the tests would fail anyway, no?
>
> They shouldn't. At least the intent was to make the tests read
> from $SRCDIR/templates/blt/ as the source of templates.
>
> But maybe you spotted a bug in t/test-lib.sh; I don't know
> without digging.
Indeed it appears to be the case. I am thinking about applying
this patch to fix it.
-- >8 --
fix testsuite: make sure they use templates freshly built from the source
The initial t/trash repository for testing was created properly
but over time we gained many tests that create secondary test
repositories with init-db or clone and they were not careful
enough.
This fixes it.
Signed-off-by: Junio C Hamano <junkio@cox.net>
---
diff --git a/t/test-lib.sh b/t/test-lib.sh
index ac7be76..7e91497 100755
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -182,6 +182,16 @@ test_create_repo () {
cd "$owd"
}
+# Many tests do init-db and clone but they must be told about the freshly
+# built templates.
+git_init_db () {
+ git init-db --template="$GIT_EXEC_PATH/templates/blt/" "$@"
+}
+
+git_clone () {
+ git clone --template="$GIT_EXEC_PATH/templates/blt/" "$@"
+}
+
test_done () {
trap - exit
case "$test_failure" in
diff --git a/t/t4116-apply-reverse.sh b/t/t4116-apply-reverse.sh
index 74f5c2a..a79c77a 100755
--- a/t/t4116-apply-reverse.sh
+++ b/t/t4116-apply-reverse.sh
@@ -50,12 +50,12 @@ test_expect_success 'setup separate repository lacking postimage' '
git tar-tree initial initial | tar xf - &&
(
- cd initial && git init-db && git add .
+ cd initial && git_init_db && git add .
) &&
git tar-tree second second | tar xf - &&
(
- cd second && git init-db && git add .
+ cd second && git_init_db && git add .
)
'
diff --git a/t/t5300-pack-object.sh b/t/t5300-pack-object.sh
index de45ac4..8a8152b 100755
--- a/t/t5300-pack-object.sh
+++ b/t/t5300-pack-object.sh
@@ -44,7 +44,7 @@ test_expect_success \
'unpack without delta' \
"GIT_OBJECT_DIRECTORY=.git2/objects &&
export GIT_OBJECT_DIRECTORY &&
- git-init-db &&
+ git_init_db &&
git-unpack-objects -n <test-1-${packname_1}.pack &&
git-unpack-objects <test-1-${packname_1}.pack"
@@ -75,7 +75,7 @@ test_expect_success \
'unpack with delta' \
'GIT_OBJECT_DIRECTORY=.git2/objects &&
export GIT_OBJECT_DIRECTORY &&
- git-init-db &&
+ git_init_db &&
git-unpack-objects -n <test-2-${packname_2}.pack &&
git-unpack-objects <test-2-${packname_2}.pack'
@@ -100,7 +100,7 @@ test_expect_success \
'use packed objects' \
'GIT_OBJECT_DIRECTORY=.git2/objects &&
export GIT_OBJECT_DIRECTORY &&
- git-init-db &&
+ git_init_db &&
cp test-1-${packname_1}.pack test-1-${packname_1}.idx .git2/objects/pack && {
git-diff-tree --root -p $commit &&
while read object
diff --git a/t/t5400-send-pack.sh b/t/t5400-send-pack.sh
index 28744b3..901da8c 100755
--- a/t/t5400-send-pack.sh
+++ b/t/t5400-send-pack.sh
@@ -24,7 +24,7 @@ test_expect_success setup '
parent=$commit || return 1
done &&
git-update-ref HEAD "$commit" &&
- git-clone -l ./. victim &&
+ git_clone -l ./. victim &&
cd victim &&
git-log &&
cd .. &&
diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh
index f7625a6..61e2a55 100755
--- a/t/t5500-fetch-pack.sh
+++ b/t/t5500-fetch-pack.sh
@@ -97,7 +97,7 @@ pull_to_client () {
(
mkdir client &&
cd client &&
- git-init-db 2>> log2.txt
+ git_init_db 2>> log2.txt
)
add A1
diff --git a/t/t5510-fetch.sh b/t/t5510-fetch.sh
index a11ab0a..e2e8c89 100755
--- a/t/t5510-fetch.sh
+++ b/t/t5510-fetch.sh
@@ -15,12 +15,12 @@ test_expect_success setup '
git commit -a -m original'
test_expect_success "clone and setup child repos" '
- git clone . one &&
+ git_clone . one &&
cd one &&
echo >file updated by one &&
git commit -a -m "updated by one" &&
cd .. &&
- git clone . two &&
+ git_clone . two &&
cd two &&
git repo-config branch.master.remote one &&
{
@@ -28,7 +28,7 @@ test_expect_success "clone and setup child repos" '
echo "Pull: refs/heads/master:refs/heads/one"
} >.git/remotes/one
cd .. &&
- git clone . three &&
+ git_clone . three &&
cd three &&
git repo-config branch.master.remote two &&
git repo-config branch.master.merge refs/heads/one &&
@@ -74,7 +74,7 @@ test_expect_success 'fetch following tags' '
mkdir four &&
cd four &&
- git init-db &&
+ git_init_db &&
git fetch .. :track &&
git show-ref --verify refs/tags/anno &&
diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh
index f841574..66ef92f 100755
--- a/t/t5520-pull.sh
+++ b/t/t5520-pull.sh
@@ -17,7 +17,7 @@ test_expect_success setup '
test_expect_success 'pulling into void' '
mkdir cloned &&
cd cloned &&
- git init-db &&
+ git_init_db &&
git pull ..
'
diff --git a/t/t5600-clone-fail-cleanup.sh b/t/t5600-clone-fail-cleanup.sh
index 041be04..1913a12 100755
--- a/t/t5600-clone-fail-cleanup.sh
+++ b/t/t5600-clone-fail-cleanup.sh
@@ -13,7 +13,7 @@ remove the directory before attempting a clone again.'
test_expect_failure \
'clone of non-existent source should fail' \
- 'git-clone foo bar'
+ 'git_clone foo bar'
test_expect_failure \
'failed clone should not leave a directory' \
@@ -29,11 +29,11 @@ test_create_repo foo
# current path not to the target dir
test_expect_failure \
'clone of non-existent (relative to $PWD) source should fail' \
- 'git-clone ../foo baz'
+ 'git_clone ../foo baz'
test_expect_success \
'clone should work now that source exists' \
- 'git-clone foo bar'
+ 'git_clone foo bar'
test_expect_success \
'successfull clone must leave the directory' \
diff --git a/t/t5700-clone-reference.sh b/t/t5700-clone-reference.sh
index dd9caad..52dab2d 100755
--- a/t/t5700-clone-reference.sh
+++ b/t/t5700-clone-reference.sh
@@ -17,7 +17,7 @@ git commit -m initial'
cd "$base_dir"
test_expect_success 'preparing second repository' \
-'git clone A B && cd B &&
+'git_clone A B && cd B &&
echo second > file2 &&
git add file2 &&
git commit -m addition &&
@@ -27,7 +27,7 @@ git prune'
cd "$base_dir"
test_expect_success 'cloning with reference' \
-'git clone -l -s --reference B A C'
+'git_clone -l -s --reference B A C'
cd "$base_dir"
diff --git a/t/t5710-info-alternate.sh b/t/t5710-info-alternate.sh
index b9f6d96..3c43554 100755
--- a/t/t5710-info-alternate.sh
+++ b/t/t5710-info-alternate.sh
@@ -34,7 +34,7 @@ git prune'
cd "$base_dir"
test_expect_success 'preparing second repository' \
-'git clone -l -s A B && cd B &&
+'git_clone -l -s A B && cd B &&
echo "foo bar" > file2 &&
git add file2 &&
git commit -m "next commit" file2 &&
@@ -44,7 +44,7 @@ git prune'
cd "$base_dir"
test_expect_success 'preparing third repository' \
-'git clone -l -s B C && cd C &&
+'git_clone -l -s B C && cd C &&
echo "Goodbye, cruel world" > file3 &&
git add file3 &&
git commit -m "one more" file3 &&
@@ -54,11 +54,11 @@ git prune'
cd "$base_dir"
test_expect_failure 'creating too deep nesting' \
-'git clone -l -s C D &&
-git clone -l -s D E &&
-git clone -l -s E F &&
-git clone -l -s F G &&
-git clone -l -s G H &&
+'git_clone -l -s C D &&
+git_clone -l -s D E &&
+git_clone -l -s E F &&
+git_clone -l -s F G &&
+git_clone -l -s G H &&
cd H &&
test_valid_repo'
diff --git a/t/t7001-mv.sh b/t/t7001-mv.sh
index 2f4ff82..ae597e8 100755
--- a/t/t7001-mv.sh
+++ b/t/t7001-mv.sh
@@ -88,7 +88,7 @@ test_expect_success \
test_expect_success "Michael Cassar's test case" '
rm -fr .git papers partA &&
- git init-db &&
+ git_init_db &&
mkdir -p papers/unsorted papers/all-papers partA &&
echo a > papers/unsorted/Thesis.pdf &&
echo b > partA/outline.txt &&
@@ -109,7 +109,7 @@ rm -fr papers partA path?
test_expect_success "Sergey Vlasov's test case" '
rm -fr .git &&
- git init-db &&
+ git_init_db &&
mkdir ab &&
date >ab.c &&
date >ab/d &&
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] Adjust t5510 to put remotes in config
2006-12-18 23:27 ` Junio C Hamano
@ 2006-12-19 8:18 ` Johannes Schindelin
0 siblings, 0 replies; 8+ messages in thread
From: Johannes Schindelin @ 2006-12-19 8:18 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
Hi,
On Mon, 18 Dec 2006, Junio C Hamano wrote:
> fix testsuite: make sure they use templates freshly built from the source
Okay.
But why not introduce the environment variable GIT_TEMPLATE_DIR, to
imitate similar solutions. This would result in a smaller diff, and people
would not have to remember typing "git_init_db" in tests (I admit, I did
not spot the subtle difference right away, and thought they were
white-space fixes...).
I.e. something like this instead:
--
[PATCH] Introduce GIT_TEMPLATE_DIR
Instead of passing --template explicitely to init-db and clone, you can
just set the environment variable GIT_TEMPLATE_DIR.
Also make use of it in the tests, to make sure that the templates are
copied.
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
---
builtin-init-db.c | 7 +++++--
t/test-lib.sh | 3 ++-
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/builtin-init-db.c b/builtin-init-db.c
index fa70baa..85cd4d9 100644
--- a/builtin-init-db.c
+++ b/builtin-init-db.c
@@ -124,8 +124,11 @@ static void copy_templates(const char *git_dir, int len, const char *template_di
int template_len;
DIR *dir;
- if (!template_dir)
- template_dir = DEFAULT_GIT_TEMPLATE_DIR;
+ if (!template_dir) {
+ template_dir = getenv("GIT_TEMPLATE_DIR");
+ if (!template_dir)
+ template_dir = DEFAULT_GIT_TEMPLATE_DIR;
+ }
strcpy(template_path, template_dir);
template_len = strlen(template_path);
if (template_path[template_len-1] != '/') {
diff --git a/t/test-lib.sh b/t/test-lib.sh
index ac7be76..f0f9cd6 100755
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -208,8 +208,9 @@ test_done () {
# t/ subdirectory and are run in trash subdirectory.
PATH=$(pwd)/..:$PATH
GIT_EXEC_PATH=$(pwd)/..
+GIT_TEMPLATE_DIR=$(pwd)/../templates/blt
HOME=$(pwd)/trash
-export PATH GIT_EXEC_PATH HOME
+export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR HOME
GITPERLLIB=$(pwd)/../perl/blib/lib:$(pwd)/../perl/blib/arch/auto/Git
^ permalink raw reply related [flat|nested] 8+ messages in thread
end of thread, other threads:[~2006-12-19 8:18 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-17 14:46 [PATCH] Adjust t5510 to put remotes in config Johannes Schindelin
[not found] ` <7v7iwox59i.fsf@assigned-by-dhcp.cox.net>
2006-12-18 22:28 ` Johannes Schindelin
2006-12-18 22:42 ` Junio C Hamano
2006-12-18 22:47 ` Johannes Schindelin
2006-12-18 22:49 ` Johannes Schindelin
2006-12-18 22:58 ` Junio C Hamano
2006-12-18 23:27 ` Junio C Hamano
2006-12-19 8:18 ` Johannes Schindelin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox