Heavily adapted from Anders' patch:
"diff: Add diff.orderfile configuration variable"

Signed-off-by: Anders Waldenborg <and...@0x63.nu>
Signed-off-by: Samuel Bronson <naes...@gmail.com>
---
 t/t4056-diff-order.sh | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 70 insertions(+)
 create mode 100755 t/t4056-diff-order.sh

diff --git a/t/t4056-diff-order.sh b/t/t4056-diff-order.sh
new file mode 100755
index 0000000..218f171
--- /dev/null
+++ b/t/t4056-diff-order.sh
@@ -0,0 +1,70 @@
+#!/bin/sh
+
+test_description='diff order'
+
+. ./test-lib.sh
+
+create_files () {
+       echo "$1" >a.h &&
+       echo "$1" >b.c &&
+       echo "$1" >c/Makefile &&
+       echo "$1" >d.txt &&
+       git add a.h b.c c/Makefile d.txt &&
+       git commit -m"$1"
+}
+
+test_expect_success 'setup' '
+       mkdir c &&
+       create_files 1 &&
+       create_files 2 &&
+
+       cat >order_file_1 <<-\EOF &&
+       *Makefile
+       *.txt
+       *.h
+       EOF
+
+       cat >order_file_2 <<-\EOF &&
+       *Makefile
+       *.h
+       *.c
+       EOF
+
+       cat >expect_none <<-\EOF &&
+       a.h
+       b.c
+       c/Makefile
+       d.txt
+       EOF
+
+       cat >expect_1 <<-\EOF &&
+       c/Makefile
+       d.txt
+       a.h
+       b.c
+       EOF
+
+       cat >expect_2 <<-\EOF &&
+       c/Makefile
+       a.h
+       b.c
+       d.txt
+       EOF
+
+       true    # end chain of &&
+'
+
+test_expect_success "no order (=tree object order)" '
+       git diff --name-only HEAD^..HEAD >actual &&
+       test_cmp expect_none actual
+'
+
+for i in 1 2
+do
+       test_expect_success "orderfile using option ($i)" '
+               git diff -Oorder_file_$i --name-only HEAD^..HEAD >actual &&
+               test_cmp expect_$i actual
+       '
+done
+
+test_done
-- 
1.8.4.3

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to