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