On Mon, May 18, 2020 at 5:40 AM Laurent Arnoud <laurent@xxxxxxxxxx> wrote: > The `diff.relative` boolean option set to `true` show only changes on > the current directory and show relative pathnames to the current > directory. > > Teach --no-relative to override earlier --relative > > Signed-off-by: Laurent Arnoud <laurent@xxxxxxxxxx> > --- > diff --git a/t/t4045-diff-relative.sh b/t/t4045-diff-relative.sh > +check_diff_relative_option () { > + dir=$1 > + shift > + expect=$1 > + shift > + relative_opt=$1 > + shift > + short_blob=$(git rev-parse --short "$blob_file2") > + cat >expected <<-EOF > + diff --git a/$expect b/$expect > + new file mode 100644 > + index 0000000..$short_blob > + --- /dev/null > + +++ b/$expect > + @@ -0,0 +1 @@ > + +other content > + EOF > + test_expect_success "config diff.relative $relative_opt -p $*" " > + test_config -C $dir diff.relative $relative_opt && > + git -C '$dir' diff -p $* HEAD^ >actual && > + test_cmp expected actual > + " > +} Let's move all the setup code into the test itself so that a failure of git-rev-parse will be caught. For instance: check_diff_relative_option () { dir=$1 shift expect=$1 shift relative_opt=$1 shift test_expect_success "config diff.relative $relative_opt -p $*" " short_blob=$(git rev-parse --short $blob_file2) && cat >expected <<-EOF && diff --git a/$expect b/$expect new file mode 100644 index 0000000..$short_blob --- /dev/null +++ b/$expect @@ -0,0 +1 @@ +other content EOF test_config -C $dir diff.relative $relative_opt && git -C '$dir' diff -p $* HEAD^ >actual && test_cmp expected actual " } Same comment applies to the other new function added by this patch.