diff --git a/Makefile-tests.am b/Makefile-tests.am index c7d9e545..b3d5db1b 100644 --- a/Makefile-tests.am +++ b/Makefile-tests.am @@ -31,6 +31,7 @@ testfiles = test-basic \ test-admin-deploy-1 \ test-admin-deploy-2 \ test-setuid \ + test-xattrs \ $(NULL) insttest_SCRIPTS = $(addprefix tests/,$(testfiles:=.sh)) diff --git a/src/libgsystem b/src/libgsystem index d2deea19..4150e633 160000 --- a/src/libgsystem +++ b/src/libgsystem @@ -1 +1 @@ -Subproject commit d2deea193d946cba7778a726e45ede0ac56db715 +Subproject commit 4150e6336881faec1a31f557567ca89c283b38c9 diff --git a/tests/test-xattrs.sh b/tests/test-xattrs.sh new file mode 100755 index 00000000..d0173daf --- /dev/null +++ b/tests/test-xattrs.sh @@ -0,0 +1,44 @@ +#!/bin/bash +# +# Copyright (C) 2013 Colin Walters +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +set -e + +echo "1..2" + +. $(dirname $0)/libtest.sh + +setup_test_repository "archive-z2" + +cd ${test_tmpdir} +ostree --repo=repo checkout test2 test2-checkout1 +setfattr -n user.ostree-test -v testvalue test2-checkout1/firstfile +setfattr -n user.test0 -v moo test2-checkout1/firstfile +ostree --repo=repo commit -b test2 -s xattrs --tree=dir=test2-checkout1 +rm test2-checkout1 -rf +echo "ok commit with xattrs" + +ostree --repo=repo checkout test2 test2-checkout2 +getfattr -m . test2-checkout2/firstfile > attrs +assert_file_has_content attrs '^user.ostree-test' +assert_file_has_content attrs '^user.test0' +getfattr -n user.ostree-test --only-values test2-checkout2/firstfile > v0 +assert_file_has_content v0 '^testvalue$' +getfattr -n user.test0 --only-values test2-checkout2/firstfile > v1 +assert_file_has_content v1 '^moo$' +echo "ok checkout with xattrs"