diff options
author | Andreas Gruenbacher <agruen@suse.de> | 2010-05-03 00:13:01 +0200 |
---|---|---|
committer | Andreas Gruenbacher <agruen@suse.de> | 2010-05-03 00:15:32 +0200 |
commit | 0403787317c65d1d4f4630a10d7b0544fa643529 (patch) | |
tree | dee49177923101bca81d893c3e105fe86d84fe4e | |
parent | 0c837fd075fabf85ee6e6d6a74079f12bb171dd3 (diff) | |
download | patch-0403787317c65d1d4f4630a10d7b0544fa643529.tar.gz |
Add two test cases which are currently broken
* Removing an empty file does not work as expected.
* Deleted files are not being remembered correctly.
* Symlinks are not being remembered, either.
-rw-r--r-- | src/util.c | 1 | ||||
-rw-r--r-- | tests/Makefile.am | 6 | ||||
-rw-r--r-- | tests/empty-files | 86 | ||||
-rw-r--r-- | tests/remember-backup-files-2 | 41 |
4 files changed, 133 insertions, 1 deletions
@@ -362,6 +362,7 @@ move_file (char const *from, int *from_needs_removal, pfatal ("Can't create %s %s", "symbolic link", to); } free (buffer); + /* FIXME: insert_file (&tost); */ } else { diff --git a/tests/Makefile.am b/tests/Makefile.am index 39af751..3b25bbb 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -24,6 +24,7 @@ TESTS = \ create-delete \ crlf-handling \ dash-o-append \ + empty-files \ file-modes \ filename-choice \ git-binary-diff \ @@ -40,12 +41,15 @@ TESTS = \ read-only-files \ reject-format \ remember-backup-files \ + remember-backup-files-2 \ remember-reject-files \ symlinks \ unmodified-files XFAIL_TESTS = \ - dash-o-append + dash-o-append \ + empty-files \ + remember-backup-files-2 EXTRA_DIST = \ $(TESTS) \ diff --git a/tests/empty-files b/tests/empty-files new file mode 100644 index 0000000..6ac01be --- /dev/null +++ b/tests/empty-files @@ -0,0 +1,86 @@ +# Copyright (C) 2010 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. + +# Symlink related tests + +. $srcdir/test-lib.sh + +require_cat +use_local_patch +use_tmpdir +umask 022 + +# ============================================================== +# Create an empty file + +cat > create-empty.diff <<EOF +diff --git a/f b/f +new file mode 100644 +index 0000000..e69de29 +EOF + +check 'patch < create-empty.diff || echo "Status: $?"' <<EOF +patching file f +EOF + +ncheck 'test -e f -a ! -s f' + +# -------------------------------------------------------------- +# Empty out a file + +echo f > f + +cat > empty-out.diff <<EOF +diff --git a/f b/f +index 6a69f92..e69de29 100644 +--- a/f ++++ b/f +@@ -1 +0,0 @@ +-f +EOF + +check 'patch < empty-out.diff || echo "Status: $?"' <<EOF +patching file f +EOF + +ncheck 'test -e f -a ! -s f' + +# -------------------------------------------------------------- +# Empty out a file and delete it with -E + +echo f > f + +cat > empty-out.diff <<EOF +diff --git a/f b/f +index 6a69f92..e69de29 100644 +--- a/f ++++ b/f +@@ -1 +0,0 @@ +-f +EOF + +check 'patch -E < empty-out.diff || echo "Status: $?"' <<EOF +patching file f +EOF + +ncheck 'test ! -e f' + +# -------------------------------------------------------------- +# Delete an empty file + +: > f + +cat > delete-empty.diff <<EOF +diff --git a/f b/f +deleted file mode 100644 +index e69de29..0000000 +EOF + +check 'patch < delete-empty.diff || echo "Status: $?"' <<EOF +patching file f +EOF + +ncheck 'test ! -e f' diff --git a/tests/remember-backup-files-2 b/tests/remember-backup-files-2 new file mode 100644 index 0000000..537d970 --- /dev/null +++ b/tests/remember-backup-files-2 @@ -0,0 +1,41 @@ +# Copyright (C) 2009 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. + +# Patch must not overwrite backup files it has created itself. + +. $srcdir/test-lib.sh + +require_cat +use_local_patch +use_tmpdir + +# ============================================================== + +echo one > f + +cat > f.diff <<EOF +--- f ++++ /dev/null +@@ -1 +0,0 @@ +-one +--- /dev/null ++++ f +@@ -0,0 +1 @@ ++two +EOF + +check 'patch --backup -p0 < f.diff' <<EOF +patching file f +patching file f +EOF + +check 'cat f.orig' <<EOF +one +EOF + +check 'cat f' <<EOF +two +EOF |