mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-06 16:40:47 +00:00
tsort: Add unit tests.
MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D40043
This commit is contained in:
parent
b55bc49e86
commit
09aee57098
|
@ -1116,6 +1116,8 @@
|
|||
..
|
||||
truncate
|
||||
..
|
||||
tsort
|
||||
..
|
||||
units
|
||||
..
|
||||
unifdef
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
# @(#)Makefile 8.1 (Berkeley) 6/9/93
|
||||
# $FreeBSD$
|
||||
|
||||
.include <src.opts.mk>
|
||||
|
||||
PROG= tsort
|
||||
|
||||
HAS_TESTS=
|
||||
SUBDIR.${MK_TESTS}= tests
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
|
6
usr.bin/tsort/tests/Makefile
Normal file
6
usr.bin/tsort/tests/Makefile
Normal file
|
@ -0,0 +1,6 @@
|
|||
PACKAGE= tests
|
||||
|
||||
ATF_TESTS_SH= tsort_test
|
||||
BINDIR= ${TESTSDIR}
|
||||
|
||||
.include <bsd.test.mk>
|
66
usr.bin/tsort/tests/tsort_test.sh
Executable file
66
usr.bin/tsort/tests/tsort_test.sh
Executable file
|
@ -0,0 +1,66 @@
|
|||
#
|
||||
# Copyright (c) 2023 Klara, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
#
|
||||
|
||||
atf_test_case basic
|
||||
basic_head()
|
||||
{
|
||||
atf_set "descr" "Sort a basic graph"
|
||||
}
|
||||
basic_body()
|
||||
{
|
||||
cat >input <<EOF
|
||||
A B
|
||||
A F
|
||||
B C
|
||||
B D
|
||||
D E
|
||||
EOF
|
||||
cat >output <<EOF
|
||||
A
|
||||
F
|
||||
B
|
||||
D
|
||||
C
|
||||
E
|
||||
EOF
|
||||
atf_check -o file:output tsort input
|
||||
atf_check -o file:output tsort <input
|
||||
}
|
||||
|
||||
atf_test_case cycle
|
||||
cycle_head()
|
||||
{
|
||||
atf_set "descr" "Sort a graph with a cycle"
|
||||
}
|
||||
cycle_body()
|
||||
{
|
||||
cat >input <<EOF
|
||||
A B
|
||||
A F
|
||||
B C
|
||||
B D
|
||||
D E
|
||||
D A
|
||||
EOF
|
||||
cat >output<<EOF
|
||||
D
|
||||
E
|
||||
A
|
||||
F
|
||||
B
|
||||
C
|
||||
EOF
|
||||
atf_check -e match:cycle -o file:output tsort input
|
||||
atf_check -e match:cycle -o file:output tsort <input
|
||||
atf_check -o file:output tsort -q input
|
||||
atf_check -o file:output tsort -q <input
|
||||
}
|
||||
|
||||
atf_init_test_cases()
|
||||
{
|
||||
atf_add_test_case basic
|
||||
atf_add_test_case cycle
|
||||
}
|
Loading…
Reference in a new issue