xref: /freebsd/usr.bin/pr/tests/basic2_test.sh (revision 6dc025ea3a8cd79c047bd72d09af5feb6948988f)
1*6dc025eaSAlan Somers# Copyright (c) 2017 Alan Somers
2*6dc025eaSAlan Somers# All rights reserved.
3*6dc025eaSAlan Somers#
4*6dc025eaSAlan Somers# Redistribution and use in source and binary forms, with or without
5*6dc025eaSAlan Somers# modification, are permitted provided that the following conditions
6*6dc025eaSAlan Somers# are met:
7*6dc025eaSAlan Somers# 1. Redistributions of source code must retain the above copyright
8*6dc025eaSAlan Somers#    notice, this list of conditions and the following disclaimer.
9*6dc025eaSAlan Somers# 2. Redistributions in binary form must reproduce the above copyright
10*6dc025eaSAlan Somers#    notice, this list of conditions and the following disclaimer in the
11*6dc025eaSAlan Somers#    documentation and/or other materials provided with the distribution.
12*6dc025eaSAlan Somers#
13*6dc025eaSAlan Somers# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
14*6dc025eaSAlan Somers# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
15*6dc025eaSAlan Somers# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16*6dc025eaSAlan Somers# PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
17*6dc025eaSAlan Somers# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18*6dc025eaSAlan Somers# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19*6dc025eaSAlan Somers# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20*6dc025eaSAlan Somers# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21*6dc025eaSAlan Somers# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22*6dc025eaSAlan Somers# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
23*6dc025eaSAlan Somers# POSSIBILITY OF SUCH DAMAGE.
24*6dc025eaSAlan Somers#
25*6dc025eaSAlan Somers# $FreeBSD$
26*6dc025eaSAlan Somers
27*6dc025eaSAlan Somersatf_test_case across
28*6dc025eaSAlan Somersacross_head() {
29*6dc025eaSAlan Somers        atf_set "descr" "Format columns in round-robin order with pr -a"
30*6dc025eaSAlan Somers}
31*6dc025eaSAlan Somersacross_body() {
32*6dc025eaSAlan Somers	atf_check -s exit:0 -o file:$(atf_get_srcdir)/across.out \
33*6dc025eaSAlan Somers		-x "pr -t -a -2 $(atf_get_srcdir)/other.in"
34*6dc025eaSAlan Somers}
35*6dc025eaSAlan Somers
36*6dc025eaSAlan Somersatf_test_case merge
37*6dc025eaSAlan Somersmerge_head() {
38*6dc025eaSAlan Somers        atf_set "descr" "Merge two files with pr -m"
39*6dc025eaSAlan Somers}
40*6dc025eaSAlan Somersmerge_body() {
41*6dc025eaSAlan Somers	atf_check -s ignore -o file:$(atf_get_srcdir)/merge.out \
42*6dc025eaSAlan Somers		pr -t -m $(atf_get_srcdir)/d_basic.in $(atf_get_srcdir)/other.in
43*6dc025eaSAlan Somers}
44*6dc025eaSAlan Somers
45*6dc025eaSAlan Somersatf_test_case threecol
46*6dc025eaSAlan Somersthreecol_head() {
47*6dc025eaSAlan Somers        atf_set "descr" "Format a file with three columns"
48*6dc025eaSAlan Somers}
49*6dc025eaSAlan Somersthreecol_body() {
50*6dc025eaSAlan Somers	atf_check -s ignore -o file:$(atf_get_srcdir)/threecol.out \
51*6dc025eaSAlan Somers		pr -t -3 $(atf_get_srcdir)/other.in
52*6dc025eaSAlan Somers}
53*6dc025eaSAlan Somers
54*6dc025eaSAlan Somersatf_init_test_cases()
55*6dc025eaSAlan Somers{
56*6dc025eaSAlan Somers        atf_add_test_case across
57*6dc025eaSAlan Somers        atf_add_test_case merge
58*6dc025eaSAlan Somers        atf_add_test_case threecol
59*6dc025eaSAlan Somers}
60