shuf.sh (708B)
- #!/bin/sh
- # SPDX-FileCopyrightText: 2017 Haelwenn (lanodan) Monnier <contact+utils@hacktivis.me>
- # SPDX-License-Identifier: MPL-2.0
- WD="$(dirname "$0")"
- target="${WD}/../cmd/shuf"
- plans=8
- . "$(dirname "$0")/tap.sh"
- t --input='' noargs '' ''
- t --input='foo' stdin '' 'foo'
- t --input='foo' stdin_dash '-' 'foo'
- # ioctl fail on BSDs
- # t devnull '/dev/null' ''
- t_seq_shuf_wc() {
- seq $seq | "$target" "$@" | wc -l | tr -d '[:space:]'
- }
- t_shuf_wc() {
- "$target" "$@" | wc -l | tr -d '[:space:]'
- }
- seq=20
- t_cmd seq20_n10 '10' t_seq_shuf_wc -n 10
- seq=7
- t_cmd seq7_n10 '7' t_seq_shuf_wc -n 10
- t_cmd e:foo '1' t_shuf_wc -e foo
- t_cmd e:foo_bar '2' t_shuf_wc -e foo bar
- t_cmd e:seq_7 '7' t_shuf_wc -e $(seq 7)