# [PATCH] t9020: use configured Python to run test helper

2 messages from 2012-12-19 to 2012-12-19. Participants: Junio C Hamano, Pete Wyckoff.
Thread: https://gitlist.dev/t/32401

## Junio C Hamano, 2012-12-19 04:49

Subject: [PATCH] t9020: use configured Python to run test helper
Message-ID: <7vip7yd4u2.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vip7yd4u2.fsf%40alter.siamese.dyndns.org

```
The test helper svnrdump_sim.py is used as "svnrdump" during the
execution of this test, but the arrangement had a few undesirable
things:

 - it relied on symbolic links;
 - unportable "export VAR=VAL" was used;
 - GIT_BUILD_DIR variable was not quoted correctly;
 - it assumed that the Python interpreter is in /usr/bin/ and
   called "python" (i.e. not "python2.7" etc.)

Rework this by writing a small shell script that spawns the right
Python interpreter, using the right quoting.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---

 * The analysis above counts more bugs than the number of lines that
   are deleted in this section of the code...

 t/t9020-remote-svn.sh | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/t/t9020-remote-svn.sh b/t/t9020-remote-svn.sh
index 4f2dfe0..d7be66a 100755
--- a/t/t9020-remote-svn.sh
+++ b/t/t9020-remote-svn.sh
@@ -12,9 +12,13 @@ then
 	test_done
 fi
 
-# We override svnrdump by placing a symlink to the svnrdump-emulator in .
-export PATH="$HOME:$PATH"
-ln -sf $GIT_BUILD_DIR/contrib/svn-fe/svnrdump_sim.py "$HOME/svnrdump"
+# Override svnrdump with our simulator
+PATH="$HOME:$PATH"
+export PATH PYTHON_PATH GIT_BUILD_DIR
+
+write_script "$HOME/svnrdump" <<\EOF
+exec "$PYTHON_PATH" "$GIT_BUILD_DIR/contrib/svn-fe/svnrdump_sim.py" "$@"
+EOF
 
 init_git () {
 	rm -fr .git &&
-- 
1.8.1.rc2.196.g90926c8

```

## Pete Wyckoff, 2012-12-19 13:15

Subject: Re: [PATCH] t9020: use configured Python to run test helper
Message-ID: <20121219131540.GA14207@padd.com>
URL: https://gitlist.dev/e/20121219131540.GA14207%40padd.com
In-Reply-To: <7vip7yd4u2.fsf@alter.siamese.dyndns.org>

```
gitster@pobox.com wrote on Tue, 18 Dec 2012 20:49 -0800:
> The test helper svnrdump_sim.py is used as "svnrdump" during the
> execution of this test, but the arrangement had a few undesirable
> things:
> 
>  - it relied on symbolic links;
>  - unportable "export VAR=VAL" was used;
>  - GIT_BUILD_DIR variable was not quoted correctly;
>  - it assumed that the Python interpreter is in /usr/bin/ and
>    called "python" (i.e. not "python2.7" etc.)
> 
> Rework this by writing a small shell script that spawns the right
> Python interpreter, using the right quoting.
> 
> Signed-off-by: Junio C Hamano <gitster@pobox.com>
> ---
> 
>  * The analysis above counts more bugs than the number of lines that
>    are deleted in this section of the code...
> 
>  t/t9020-remote-svn.sh | 10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/t/t9020-remote-svn.sh b/t/t9020-remote-svn.sh
> index 4f2dfe0..d7be66a 100755
> --- a/t/t9020-remote-svn.sh
> +++ b/t/t9020-remote-svn.sh
> @@ -12,9 +12,13 @@ then
>  	test_done
>  fi
>  
> -# We override svnrdump by placing a symlink to the svnrdump-emulator in .
> -export PATH="$HOME:$PATH"
> -ln -sf $GIT_BUILD_DIR/contrib/svn-fe/svnrdump_sim.py "$HOME/svnrdump"
> +# Override svnrdump with our simulator
> +PATH="$HOME:$PATH"
> +export PATH PYTHON_PATH GIT_BUILD_DIR
> +
> +write_script "$HOME/svnrdump" <<\EOF
> +exec "$PYTHON_PATH" "$GIT_BUILD_DIR/contrib/svn-fe/svnrdump_sim.py" "$@"
> +EOF

You don't really need to export PYTHON_PATH and GIT_BUILD_DIR if
you get them expanded in the svnrdump script wrapper.  Unquote
the EOF but add \ for $@.

Either way it's a nice improvement, especially with the
bugs/lines metric being >1.

		-- Pete

```
