coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] tests: fix another test failure in test/du/inodes.sh


From: Bernhard Voelker
Subject: [PATCH] tests: fix another test failure in test/du/inodes.sh
Date: Mon, 29 Jul 2013 01:54:56 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130329 Thunderbird/17.0.5

On 07/28/2013 09:05 PM, Pádraig Brady wrote:
> On 07/28/2013 07:10 PM, Hydra Build Daemon wrote:
>> Hi,
>>
>> The status of Hydra job gnu:coreutils-master:coverage (on x86_64-linux) has 
>> changed from "Success" to "Failed".  For details, see
>>
>>   http://hydra.nixos.org/build/5584121
>>
>> Go forth and fix it.
>>
>> Regards,
>>
>> The Hydra build daemon.
> 
> FAIL: tests/du/inodes.sh (exit: 1)
> ==================================
> 
> 'd/h' => 'd/f'
> --- exp       2013-07-28 18:10:19.805126842 +0000
> +++ out       2013-07-28 18:10:19.812127125 +0000
> @@ -1,3 +1,3 @@
>  1    d/d
> -1    d/h
> +1    d/f
>  3    d
>
> Did we drop a sort in the last patch?

No, that failure was due to another effect.  In the case of
'du --inodes -a', we cannot rely on 'd/f' or 'd/h' (both linked
to the same inode) being the one to be printed because du(1)
will just take the first one returned by the system.

The following adresses this.
The other cases are not afftected by this type of test failure.

Have a nice day,
Berny

>From eea81b46cd1dc06c964adfc9a2ee15de6a2ddeee Mon Sep 17 00:00:00 2001
From: Bernhard Voelker <address@hidden>
Date: Mon, 29 Jul 2013 01:51:55 +0200
Subject: [PATCH] tests: fix another test failure in test/du/inodes.sh

Prompted by the continuous integration build failure at:
http://hydra.nixos.org/build/5584121

du(1) uses the first file object of the two test files linked to the
same inode, 'd/f' and 'd/h', whatever the system returns first.
Use 'd/f' in both the expected and the actual output.

* test/du/inodes.sh: Change the expected output as described above
when returning the --all directory entries (without -l).  Also replace
the name of the hardlink 'd/h' by 'd/f' in the actual output.
---
 tests/du/inodes.sh | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/tests/du/inodes.sh b/tests/du/inodes.sh
index 692aa5f..7564c81 100755
--- a/tests/du/inodes.sh
+++ b/tests/du/inodes.sh
@@ -67,9 +67,12 @@ compare /dev/null err || fail=1

 # Count all items: 1-1-3.
 # Sort output because the directory entry order is not defined.
-printf '1\td/d\n1\td/h\n3\td\n' | sort > exp || framework_failure_
+# Also replace the hardlink with the original file name because
+# the system may either return 'd/f' or 'd/h' first, and du(1)
+# will ignore the other one.
+printf '1\td/d\n1\td/f\n3\td\n' | sort > exp || framework_failure_
 du --inodes -a d > out.tmp 2>err || fail=1
-sort <out.tmp >out || framework_failure_
+sed 's/h$/f/' out.tmp | sort >out || framework_failure_
 compare exp out || fail=1
 compare /dev/null err || fail=1

-- 
1.8.3.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]