# # Copyright (c) 2026 Dag-Erling Smørgrav # # SPDX-License-Identifier: BSD-2-Clause # atf_test_case stdin stdin_head() { atf_set "descr" "Read from stdin" } stdin_body() { local dir=$(atf_get_srcdir) atf_check -o file:"${dir}/test.out" \ ident < "${dir}/test.in" } atf_test_case file file_head() { atf_set "descr" "Read from a file" } file_body() { local dir=$(atf_get_srcdir) echo "${dir}/test.in:" >out cat "${dir}/test.out" >>out atf_check -o file:out ident "${dir}/test.in" } atf_test_case noid noid_head() { atf_set "descr" "No id keywords in input" } noid_body() { local dir=$(atf_get_srcdir) atf_check \ -s exit:1 \ -o inline:"${dir}/testnoid:\n" \ -e inline:"ident warning: no id keywords in ${dir}/testnoid\n" \ ident "${dir}/testnoid" } atf_test_case multi multi_head() { atf_set "descr" "Multiple inputs" } multi_body() { local dir=$(atf_get_srcdir) echo "${dir}/test.in:" >out cat "${dir}/test.out" >>out echo "${dir}/testnoid:" >>out atf_check \ -s exit:1 \ -o file:out \ -e inline:"ident warning: no id keywords in ${dir}/testnoid\n" \ ident "${file}" } atf_test_case stdout stdout_head() { atf_set "descr" "Failure to write to stdout" } stdout_body() { local dir=$(atf_get_srcdir) mkfifo fifo : stderr result=$? } >fifo atf_check_equal 1 "$result" atf_check -o match:"stdout" cat stderr } atf_init_test_cases() { atf_add_test_case stdin atf_add_test_case file atf_add_test_case noid atf_add_test_case stdout }