1#!/bin/sh 2# Test 'tty'. 3 4# Copyright 2017-2023 Free Software Foundation, Inc. 5 6# This program is free software: you can redistribute it and/or modify 7# it under the terms of the GNU General Public License as published by 8# the Free Software Foundation, either version 3 of the License, or 9# (at your option) any later version. 10 11# This program is distributed in the hope that it will be useful, 12# but WITHOUT ANY WARRANTY; without even the implied warranty of 13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14# GNU General Public License for more details. 15 16# You should have received a copy of the GNU General Public License 17# along with this program. If not, see <https://www.gnu.org/licenses/>. 18 19# Make sure there's a tty on stdin. 20. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src 21print_ver_ tty 22 23if test -t 0; then 24 tty || fail=1 25 tty -s || fail=1 26fi 27 28returns_ 1 tty </dev/null || fail=1 29returns_ 1 tty -s </dev/null || fail=1 30returns_ 1 tty <&- 2>/dev/null || fail=1 31returns_ 1 tty -s <&- || fail=1 32 33returns_ 2 tty a || fail=1 34returns_ 2 tty -s a || fail=1 35 36if test -w /dev/full && test -c /dev/full; then 37 if test -t 0; then 38 returns_ 3 tty >/dev/full || fail=1 39 fi 40 returns_ 3 tty </dev/null >/dev/full || fail=1 41fi 42 43Exit $fail 44