diff options
-rw-r--r-- | test/empty-files.test | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/test/empty-files.test b/test/empty-files.test new file mode 100644 index 0000000..c03ad3a --- /dev/null +++ b/test/empty-files.test @@ -0,0 +1,85 @@ +# Check that quilt properly deals with patches which delete vs. empty files + +# Prepare the working tree + $ mkdir patches + $ echo "will be deleted" > deleted1 + $ echo "will be emptied" > emptied1 + $ echo "will be deleted" > deleted2 + $ echo "will be emptied" > emptied2 + +# Prepate the patches and series + $ cat > patches/series + < using-filenames.patch + < using-timestamps.patch + + $ cat > patches/using-filenames.patch + < diff -ruN a/deleted1 b/deleted1 + < --- a/deleted1 + < +++ /dev/null + < @@ -1 +0,0 @@ + < -will be deleted + < diff -ruN a/emptied1 b/emptied1 + < --- a/emptied1 + < +++ b/emptied1 + < @@ -1 +0,0 @@ + < -will be emptied + + $ cat > patches/using-timestamps.patch + < diff -ruN a/deleted2 b/deleted2 + < --- a/deleted2 2014-01-15 11:19:43.000000000 +0100 + < +++ b/deleted2 1970-01-01 01:00:00.000000000 +0100 + < @@ -1 +0,0 @@ + < -will be deleted + < diff -ruN a/emptied2 b/emptied2 + < --- a/emptied2 2014-01-15 11:19:59.000000000 +0100 + < +++ b/emptied2 2014-01-15 11:20:11.000000000 +0100 + < @@ -1 +0,0 @@ + < -will be emptied + +# Test quilt push + $ quilt push + > Applying patch patches/using-filenames.patch + > patching file deleted1 + > patching file emptied1 + > + > Now at patch patches/using-filenames.patch + $ if test -e deleted1; then if test -s deleted1; then echo "File deleted1 is not empty" ; else echo "File deleted1 is empty" ; fi ; else echo "File deleted1 does not exist" ; fi + > File deleted1 does not exist + $ if test -e emptied1; then if test -s emptied1; then echo "File emptied1 is not empty" ; else echo "File emptied1 is empty" ; fi ; else echo "File emptied1 does not exist" ; fi + > File emptied1 is empty + + $ quilt push + > Applying patch patches/using-timestamps.patch + > patching file deleted2 + > patching file emptied2 + > + > Now at patch patches/using-timestamps.patch + $ if test -e deleted2; then if test -s deleted2; then echo "File deleted2 is not empty" ; else echo "File deleted2 is empty" ; fi ; else echo "File deleted2 does not exist" ; fi + > File deleted2 does not exist + $ if test -e emptied2; then if test -s emptied2; then echo "File emptied2 is not empty" ; else echo "File emptied2 is empty" ; fi ; else echo "File emptied2 does not exist" ; fi + > File emptied2 is empty + +# Test quilt fold + $ quilt pop -aq + > Removing patch patches/using-timestamps.patch + > Removing patch patches/using-filenames.patch + > No patches applied + + $ quilt new fold.patch + > Patch patches/fold.patch is now on top + + $ quilt fold < patches/using-filenames.patch + > patching file deleted1 + > patching file emptied1 + $ if test -e deleted1; then if test -s deleted1; then echo "File deleted1 is not empty" ; else echo "File deleted1 is empty" ; fi ; else echo "File deleted1 does not exist" ; fi + > File deleted1 does not exist + $ if test -e emptied1; then if test -s emptied1; then echo "File emptied1 is not empty" ; else echo "File emptied1 is empty" ; fi ; else echo "File emptied1 does not exist" ; fi + > File emptied1 is empty + + $ quilt fold < patches/using-timestamps.patch + > patching file deleted2 + > patching file emptied2 + $ if test -e deleted2; then if test -s deleted2; then echo "File deleted2 is not empty" ; else echo "File deleted2 is empty" ; fi ; else echo "File deleted2 does not exist" ; fi + > File deleted2 does not exist + $ if test -e emptied2; then if test -s emptied2; then echo "File emptied2 is not empty" ; else echo "File emptied2 is empty" ; fi ; else echo "File emptied2 does not exist" ; fi + > File emptied2 is empty |