1*57718be8SEnji Cooper# $NetBSD: quotas_common.sh,v 1.2 2011/03/06 17:08:41 bouyer Exp $ 2*57718be8SEnji Cooper 3*57718be8SEnji Coopercreate_with_quotas() 4*57718be8SEnji Cooper{ 5*57718be8SEnji Cooper local endian=$1; shift 6*57718be8SEnji Cooper local vers=$1; shift 7*57718be8SEnji Cooper local uid=$(id -u) 8*57718be8SEnji Cooper local gid=$(id -g) 9*57718be8SEnji Cooper 10*57718be8SEnji Cooper atf_check -o ignore -e ignore newfs -B ${endian} -O ${vers} \ 11*57718be8SEnji Cooper -s 4000 -F ${IMG} 12*57718be8SEnji Cooper atf_check -o ignore -e ignore tunefs -q user -q group -F ${IMG} 13*57718be8SEnji Cooper atf_check -s exit:0 -o 'match:NO USER QUOTA INODE \(CREATED\)' \ 14*57718be8SEnji Cooper -o 'match:USER QUOTA MISMATCH FOR ID '${uid}': 0/0 SHOULD BE 1/1' \ 15*57718be8SEnji Cooper -o 'match:GROUP QUOTA MISMATCH FOR ID '${gid}': 0/0 SHOULD BE 1/1' \ 16*57718be8SEnji Cooper fsck_ffs -p -F ${IMG} 17*57718be8SEnji Cooper} 18*57718be8SEnji Cooper 19*57718be8SEnji Cooper# from tests/ipf/h_common.sh via tests/sbin/resize_ffs 20*57718be8SEnji Coopertest_case() 21*57718be8SEnji Cooper{ 22*57718be8SEnji Cooper local name="${1}"; shift 23*57718be8SEnji Cooper local check_function="${1}"; shift 24*57718be8SEnji Cooper local descr="${1}"; shift 25*57718be8SEnji Cooper 26*57718be8SEnji Cooper atf_test_case "${name}" 27*57718be8SEnji Cooper 28*57718be8SEnji Cooper eval "${name}_head() { \ 29*57718be8SEnji Cooper atf_set "descr" "Checks ${descr} quotas inodes" 30*57718be8SEnji Cooper }" 31*57718be8SEnji Cooper eval "${name}_body() { \ 32*57718be8SEnji Cooper ${check_function} " "${@}" "; \ 33*57718be8SEnji Cooper }" 34*57718be8SEnji Cooper tests="${tests} ${name}" 35*57718be8SEnji Cooper} 36*57718be8SEnji Cooper 37*57718be8SEnji Cooperatf_init_test_cases() 38*57718be8SEnji Cooper{ 39*57718be8SEnji Cooper IMG=fsimage 40*57718be8SEnji Cooper DIR=target 41*57718be8SEnji Cooper for i in ${tests}; do 42*57718be8SEnji Cooper atf_add_test_case $i 43*57718be8SEnji Cooper done 44*57718be8SEnji Cooper} 45