summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Casasnovas <quentin.casasnovas@oracle.com>2015-01-27 13:33:20 +0100
committerAndreas Gruenbacher <agruen@gnu.org>2015-01-31 22:14:01 +0100
commit68d39ff29f03cd85b5993ff17d2adf6c7ff9e496 (patch)
tree1554bc5de8c1a8b57d52cbefd84cbd72bb8931f0
parentc80b1a06a9209e6e7f1b624b9058e2b838c67797 (diff)
downloadpatch-68d39ff29f03cd85b5993ff17d2adf6c7ff9e496.tar.gz
tests: add a test case for unwanted mode changes.
Signed-off-by: Quentin Casasnovas <quentin.casasnovas@oracle.com>
-rw-r--r--tests/Makefile.am1
-rw-r--r--tests/no-mode-change-git-diff34
2 files changed, 35 insertions, 0 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 7c9efa9..4c53291 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -42,6 +42,7 @@ TESTS = \
mixed-patch-types \
munged-context-format \
need-filename \
+ no-mode-change-git-diff \
no-newline-triggers-assert \
preserve-c-function-names \
preserve-mode-and-timestamp \
diff --git a/tests/no-mode-change-git-diff b/tests/no-mode-change-git-diff
new file mode 100644
index 0000000..2f9bc36
--- /dev/null
+++ b/tests/no-mode-change-git-diff
@@ -0,0 +1,34 @@
+# Copyright (C) 2010-2012 Free Software Foundation, Inc.
+#
+# Copying and distribution of this file, with or without modification,
+# in any medium, are permitted without royalty provided the copyright
+# notice and this notice are preserved.
+
+. $srcdir/test-lib.sh
+
+require cat
+require chmod
+require stat
+use_local_patch
+use_tmpdir
+
+echo 'ksplice' > f
+chmod 755 f
+
+cat > simple.diff <<EOF
+diff --git a/f b/f
+index 422a422a..736b6c7063690a 100644
+--- a/f
++++ b/f
+@@ -1 +1 @@
+-ksplice
++ksplice rocks!
+EOF
+
+check 'patch -p1 < simple.diff || echo "Status: $?"' <<EOF
+patching file f
+EOF
+
+check 'stat -c "%a" f'<<EOF
+755
+EOF