[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] tests: fix another test failure in test/du/inodes.sh
From: |
Pádraig Brady |
Subject: |
Re: [PATCH] tests: fix another test failure in test/du/inodes.sh |
Date: |
Mon, 29 Jul 2013 09:56:35 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130110 Thunderbird/17.0.2 |
On 07/29/2013 12:54 AM, Bernhard Voelker wrote:
> 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
thanks,
Pádraig.