Lines Matching full:ifs
58 oifs="$IFS"
59 IFS="$nl"
61 IFS="$oifs"
102 # Check that IFS is applied to text from ${x-...} unless it is inside
158 # Check that IFS is applied to text from ${x+...} unless it is inside
227 # repeat with an alphabetic in IFS
228 check 'IFS=q; set ${x-aqbqc}; echo $#' 3
229 check 'IFS=q; for i in ${x-aqbqc}; do echo "z${i}z"; done' \
231 check 'IFS=q; for i in ${x-"aqb"qc}; do echo "z${i}z"; done' \
233 check 'IFS=q; for i in ${x-"aq${x-bqc}"qd}; do echo "z${i}z"; done' \
235 check 'IFS=q; for i in ${x-"aq${x-"bqc"}"qd}; do echo "z${i}z"; done' \
237 check 'IFS=q; for i in ${x-aq${x-"bqc"}qd}; do echo "z${i}z"; done' \
304 atf_test_case ifs
306 atf_set "descr" "Checks that IFS correctly configures field" \
313 # Some IFS tests
314 check 't="-- "; IFS=" "; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '0'
315 check 't=" x"; IFS=" x"; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '1'
316 check 't=" x "; IFS=" x"; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '1'
317 check 't=axb; IFS="x"; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '2 a:b'
318 check 't="a x b"; IFS="x"; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '2 a : b'
319 check 't="a xx b"; IFS="x"; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '3 a :: b'
320 check 't="a xx b"; IFS="x "; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '3 a::b'
321 # A recent 'clarification' means that a single trailing IFS non-whitespace
323 check 't="xax"; IFS="x"; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '2 :a'
324 check 't="xax "; IFS="x "; set $t; IFS=":"; r="$*"; IFS=; echo $# $r' '2 :a'
325 # Verify that IFS isn't being applied where it shouldn't be.
326 check 'IFS="x"; set axb; IFS=":"; r="$*"; IFS=; echo $# $r' '1 axb'
344 # Check that we apply IFS to ${#var}
345 check 'echo ${#long}; IFS=2; echo ${#long}; set 1 ${#long};echo $#' \
347 check 'IFS=2; set ${x-${#long}}; IFS=" "; echo $* $#' '1 8 2'
348 check 'IFS=2; set ${x-"${#long}"}; IFS=" "; echo $* $#' '128 1'
358 atf_add_test_case ifs