rs: Test actual output in the tests.

Previously the tests just verified if command line arguments raised an
error or not, they did not test how command line arguments affected
the output.  This adds some sample (if simple) input and output to
each flag test as well as adding a few additional trivial tests.

Reviewed by:	brooks
Differential Revision:	https://reviews.freebsd.org/D36835
This commit is contained in:
John Baldwin 2022-11-15 21:20:18 -08:00
parent afb4998dd4
commit 7ad9aa0b93

View file

@ -34,7 +34,11 @@ c_flag_head()
c_flag_body()
{
atf_check -s exit:0 -o empty rs -c < /dev/null
atf_check -s exit:0 -o inline:"1 2 3 4
5 6 7 8
" rs -c, 2 <<EOF
1,2,3,4,5,6,7,8
EOF
}
atf_test_case s_flag
@ -45,7 +49,12 @@ s_flag_head()
s_flag_body()
{
atf_check -s exit:0 -o empty rs -s < /dev/null
atf_check -s exit:0 -o inline:"1 2 3 4
5 6 7 8
" rs -s% 2 <<EOF
1%%2%%3%4%5%%%6%%%7%8
EOF
}
atf_test_case C_flag
@ -56,7 +65,11 @@ C_flag_head()
C_flag_body()
{
atf_check -s exit:0 -o empty rs -C < /dev/null
atf_check -s exit:0 -o inline:"1,2,3,4,
5,6,7,8,
" rs -C, 2 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case S_flag
@ -67,7 +80,11 @@ S_flag_head()
S_flag_body()
{
atf_check -s exit:0 -o empty rs -S < /dev/null
atf_check -s exit:0 -o inline:"1,,2,,3,,4
5,,6,,7,,8
" rs -S, 2 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case t_flag
@ -78,7 +95,12 @@ t_flag_head()
t_flag_body()
{
atf_check -s exit:0 -o empty rs -t < /dev/null
atf_check -s exit:0 -o inline:"1 4 7
2 5 8
3 6
" rs -t 3 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case T_flag
@ -89,7 +111,12 @@ T_flag_head()
T_flag_body()
{
atf_check -s exit:0 -o empty rs -T < /dev/null
atf_check -s exit:0 -o inline:"1
2
3
" rs -T <<EOF
1 2 3
EOF
}
atf_test_case k_flag
@ -100,7 +127,13 @@ k_flag_head()
k_flag_body()
{
atf_check -s exit:0 -o empty rs -k 1 < /dev/null
atf_check -s exit:0 -o inline:"3 4 5
6 7 8
" rs -k 1 2 <<EOF
1 2
3 4 5 6
7 8
EOF
}
atf_test_case K_flag
@ -123,7 +156,11 @@ g_flag_head()
g_flag_body()
{
atf_check -s exit:0 -o empty rs -g 1 < /dev/null
atf_check -s exit:0 -o inline:"1 2 3 4
5 6 7 8
" rs -g 1 2 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case G_flag
@ -134,7 +171,11 @@ G_flag_head()
G_flag_body()
{
atf_check -s exit:0 -o empty rs -G 10 < /dev/null
atf_check -s exit:0 -o inline:"1 2 3 4
5 6 7 acbdefghij
" rs -G 50 2 <<EOF
1 2 3 4 5 6 7 acbdefghij
EOF
}
atf_test_case e_flag
@ -157,7 +198,14 @@ n_flag_head()
n_flag_body()
{
atf_check -s exit:0 -o empty rs -n < /dev/null
atf_check -s exit:0 -o inline:"1 2 3
4 5
6 7
" rs -n 0 3 <<EOF
1 2 3
4 5
6 7
EOF
}
atf_test_case y_flag
@ -168,7 +216,12 @@ y_flag_head()
y_flag_body()
{
atf_check -s exit:0 -o empty rs -y < /dev/null
atf_check -s exit:0 -o inline:"1 2 3
4 5 6
7 8 1
" rs -y 3 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case h_flag
@ -204,7 +257,11 @@ j_flag_head()
j_flag_body()
{
atf_check -s exit:0 -o empty rs -j < /dev/null
atf_check -s exit:0 -o inline:" 1 2 3
abc def ghi
" rs -j 2 <<EOF
1 2 3 abc def ghi
EOF
}
atf_test_case m_flag
@ -215,7 +272,11 @@ m_flag_head()
m_flag_body()
{
atf_check -s exit:0 -o empty rs -m < /dev/null
atf_check -s exit:0 -o inline:"1 2 3
abc def ghi
" rs -m 2 <<EOF
1 2 3 abc def ghi
EOF
}
atf_test_case z_flag
@ -226,7 +287,11 @@ z_flag_head()
z_flag_body()
{
atf_check -s exit:0 -o empty rs -z < /dev/null
atf_check -s exit:0 -o inline:"1 2 3 4
5 6 7 acbdefghij
" rs -z 2 <<EOF
1 2 3 4 5 6 7 acbdefghij
EOF
}
atf_test_case invalid_usage
@ -250,8 +315,58 @@ no_arguments_head()
no_arguments_body()
{
atf_check -s exit:0 -o inline:"
" rs < /dev/null
atf_check -s exit:0 -o inline:"1 2 3 4 5 6 7 8
" rs <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case rows_2
rows_2_head()
{
atf_set "descr" "Simple output with 2 rows"
}
rows_2_body()
{
atf_check -s exit:0 -o inline:"1 2 3 4
5 6 7 8
" rs 2 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case rows_3
rows_3_head()
{
atf_set "descr" "Simple output with 3 rows"
}
rows_3_body()
{
atf_check -s exit:0 -o inline:"1 2 3
4 5 6
7 8
" rs 3 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_test_case rows_4
rows_4_head()
{
atf_set "descr" "Simple output with 4 rows"
}
rows_4_body()
{
atf_check -s exit:0 -o inline:"1 2
3 4
5 6
7 8
" rs 4 <<EOF
1 2 3 4 5 6 7 8
EOF
}
atf_init_test_cases()
@ -276,4 +391,7 @@ atf_init_test_cases()
atf_add_test_case z_flag
atf_add_test_case invalid_usage
atf_add_test_case no_arguments
atf_add_test_case rows_2
atf_add_test_case rows_3
atf_add_test_case rows_4
}