[Top] [All Lists]

[PATCH v3] xfstests: shared/051: add filter to match the golden output f

To: "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Subject: [PATCH v3] xfstests: shared/051: add filter to match the golden output for large acls
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Thu, 13 Mar 2014 08:39:32 +0800
Delivered-to: xfs@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0
From: Jie Liu <jeff.liu@xxxxxxxxxx>

On old kernel we return EINVAL if hit the limits of maximum number of
ACLs but return E2BIG on new kernel, which cause the test failes on new
kernel as the output is mismatch to the goldens. This patch fix it by
updating the golden output with the new error message and replacing the
old error message with it via a filter.

Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>

V3->V2: filter out the old error message to the new and update golden output to 
match it
V2->V1: filter out the new error message to the old

 tests/shared/051     | 10 +++++++++-
 tests/shared/051.out |  2 +-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/tests/shared/051 b/tests/shared/051
index e957f86..934f353 100755
--- a/tests/shared/051
+++ b/tests/shared/051
@@ -318,6 +318,14 @@ chacl m:user1:rwx file1
 chacl a::rwx file1
 set +x
+# we return E2BIG if hit the max acl limits on new kernel, but EINVAL
+# on old kernel. So we need to filter out the error message in order
+# to make the updated golden output works for both old and new kernels.
+       sed -e "s/Invalid argument/Argument list too long/"
 echo ""
@@ -342,7 +350,7 @@ chacl $acl2 largeaclfile
 getfacl --numeric largeaclfile | _filter_aces
 echo "1 above xfs acl max"
-chacl $acl3 largeaclfile
+chacl $acl3 largeaclfile 2>&1 | _filter_largeacl
 getfacl --numeric largeaclfile | _filter_aces
 echo "use 16 aces"
diff --git a/tests/shared/051.out b/tests/shared/051.out
index a871082..354ec6a 100644
--- a/tests/shared/051.out
+++ b/tests/shared/051.out
@@ -280,7 +280,7 @@ mask::rwx
 1 above xfs acl max
-chacl: cannot set access acl on "largeaclfile": Invalid argument
+chacl: cannot set access acl on "largeaclfile": Argument list too long
 # file: largeaclfile
 # owner: 0
 # group: 0

<Prev in Thread] Current Thread [Next in Thread>