xfs
[Top] [All Lists]

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

To: "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Subject: [PATCH v2] xfstests: shared/051: add filter to match the golden output for large acls
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Wed, 12 Mar 2014 10:03:03 +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 current test fails
on new kernel as the output is mismatch to the goldens. In order to make
the current golden output works for both old and new kernels, this patch
filter the new error message out to match the olds.

Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
---
V2: make the filter as a local function as per Dave's comments

 tests/shared/051 | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/tests/shared/051 b/tests/shared/051
index e957f86..adbe427 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 the error message out in order
+# to make the current golden output works for both old and new kernels.
+_filter_largeacl()
+{
+       sed -e "s/Argument list too long/Invalid argument/"
+}
+
 #-------------------------------------------------------
 
 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"
-- 
1.8.3.2

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