1458cbf0aSEnji Cooper# $FreeBSD$ 2458cbf0aSEnji Cooper 3458cbf0aSEnji Cooperatf_test_case simple 4458cbf0aSEnji Cooperatf_test_case unified 558cf4d86SJilles Tjoelkeratf_test_case header 6385a67dcSJilles Tjoelkeratf_test_case header_ns 705d06ecaSBaptiste Daroussinatf_test_case ifdef 8fddcb7b8SBaptiste Daroussinatf_test_case group_format 929d65f1cSEnji Cooperatf_test_case side_by_side 104574a545SEnji Cooperatf_test_case brief_format 119977c7b5SXin LIatf_test_case b230049 12*e68edb8cSKyle Evansatf_test_case Bflag 13458cbf0aSEnji Cooper 14458cbf0aSEnji Coopersimple_body() 15458cbf0aSEnji Cooper{ 16458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple.out -s eq:1 \ 17458cbf0aSEnji Cooper diff "$(atf_get_srcdir)/input1.in" "$(atf_get_srcdir)/input2.in" 18458cbf0aSEnji Cooper 19458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple_e.out -s eq:1 \ 20458cbf0aSEnji Cooper diff -e "$(atf_get_srcdir)/input1.in" "$(atf_get_srcdir)/input2.in" 21458cbf0aSEnji Cooper 22458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple_u.out -s eq:1 \ 23458cbf0aSEnji Cooper diff -u -L input1 -L input2 "$(atf_get_srcdir)/input1.in" "$(atf_get_srcdir)/input2.in" 24458cbf0aSEnji Cooper 25458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple_n.out -s eq:1 \ 26458cbf0aSEnji Cooper diff -n "$(atf_get_srcdir)/input1.in" "$(atf_get_srcdir)/input2.in" 27458cbf0aSEnji Cooper 28458cbf0aSEnji Cooper atf_check -o inline:"Files $(atf_get_srcdir)/input1.in and $(atf_get_srcdir)/input2.in differ\n" -s eq:1 \ 29458cbf0aSEnji Cooper diff -q "$(atf_get_srcdir)/input1.in" "$(atf_get_srcdir)/input2.in" 30458cbf0aSEnji Cooper 31458cbf0aSEnji Cooper atf_check \ 32458cbf0aSEnji Cooper diff -q "$(atf_get_srcdir)/input1.in" "$(atf_get_srcdir)/input1.in" 33458cbf0aSEnji Cooper 34458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple_i.out -s eq:1 \ 35458cbf0aSEnji Cooper diff -i "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 36458cbf0aSEnji Cooper 37458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple_w.out -s eq:1 \ 38458cbf0aSEnji Cooper diff -w "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 39458cbf0aSEnji Cooper 40458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple_b.out -s eq:1 \ 41458cbf0aSEnji Cooper diff -b "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 42458cbf0aSEnji Cooper 43458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/simple_p.out -s eq:1 \ 44458cbf0aSEnji Cooper diff --label input_c1.in --label input_c2.in -p "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 45458cbf0aSEnji Cooper} 46458cbf0aSEnji Cooper 47458cbf0aSEnji Cooperunified_body() 48458cbf0aSEnji Cooper{ 49458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/unified_p.out -s eq:1 \ 50458cbf0aSEnji Cooper diff -up -L input_c1.in -L input_c2.in "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 51458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/unified_c9999.out -s eq:1 \ 52458cbf0aSEnji Cooper diff -u -c9999 -L input_c1.in -L input_c2.in "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 53458cbf0aSEnji Cooper atf_check -o file:$(atf_get_srcdir)/unified_9999.out -s eq:1 \ 54458cbf0aSEnji Cooper diff -u9999 -L input_c1.in -L input_c2.in "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 55458cbf0aSEnji Cooper} 56458cbf0aSEnji Cooper 579977c7b5SXin LIb230049_body() 589977c7b5SXin LI{ 599977c7b5SXin LI printf 'a\nb\r\nc\n' > b230049_a.in 609977c7b5SXin LI printf 'a\r\nb\r\nc\r\n' > b230049_b.in 619977c7b5SXin LI atf_check -o empty -s eq:0 \ 629977c7b5SXin LI diff -up --strip-trailing-cr -L b230049_a.in -L b230049_b.in \ 639977c7b5SXin LI b230049_a.in b230049_b.in 649977c7b5SXin LI} 659977c7b5SXin LI 6658cf4d86SJilles Tjoelkerheader_body() 6758cf4d86SJilles Tjoelker{ 6858cf4d86SJilles Tjoelker export TZ=UTC 6958cf4d86SJilles Tjoelker : > empty 7058cf4d86SJilles Tjoelker echo hello > hello 7158cf4d86SJilles Tjoelker touch -d 2015-04-03T01:02:03 empty 7258cf4d86SJilles Tjoelker touch -d 2016-12-22T11:22:33 hello 7358cf4d86SJilles Tjoelker atf_check -o "file:$(atf_get_srcdir)/header.out" -s eq:1 \ 7458cf4d86SJilles Tjoelker diff -u empty hello 7558cf4d86SJilles Tjoelker} 7658cf4d86SJilles Tjoelker 77385a67dcSJilles Tjoelkerheader_ns_body() 78385a67dcSJilles Tjoelker{ 79385a67dcSJilles Tjoelker export TZ=UTC 80385a67dcSJilles Tjoelker : > empty 81385a67dcSJilles Tjoelker echo hello > hello 82385a67dcSJilles Tjoelker touch -d 2015-04-03T01:02:03.123456789 empty 83385a67dcSJilles Tjoelker touch -d 2016-12-22T11:22:33.987654321 hello 84385a67dcSJilles Tjoelker atf_check -o "file:$(atf_get_srcdir)/header_ns.out" -s eq:1 \ 85385a67dcSJilles Tjoelker diff -u empty hello 86385a67dcSJilles Tjoelker} 87385a67dcSJilles Tjoelker 8805d06ecaSBaptiste Daroussinifdef_body() 8905d06ecaSBaptiste Daroussin{ 9005d06ecaSBaptiste Daroussin atf_check -o file:$(atf_get_srcdir)/ifdef.out -s eq:1 \ 9105d06ecaSBaptiste Daroussin diff -D PLOP "$(atf_get_srcdir)/input_c1.in" \ 9205d06ecaSBaptiste Daroussin "$(atf_get_srcdir)/input_c2.in" 9305d06ecaSBaptiste Daroussin} 9405d06ecaSBaptiste Daroussin 95fddcb7b8SBaptiste Daroussingroup_format_body() 96fddcb7b8SBaptiste Daroussin{ 97fddcb7b8SBaptiste Daroussin atf_check -o file:$(atf_get_srcdir)/group-format.out -s eq:1 \ 98fddcb7b8SBaptiste Daroussin diff --changed-group-format='<<<<<<< (local) 99fddcb7b8SBaptiste Daroussin%<======= 100fddcb7b8SBaptiste Daroussin%>>>>>>>> (stock) 101fddcb7b8SBaptiste Daroussin' "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in" 102fddcb7b8SBaptiste Daroussin} 103fddcb7b8SBaptiste Daroussin 10429d65f1cSEnji Cooperside_by_side_body() 10529d65f1cSEnji Cooper{ 10629d65f1cSEnji Cooper atf_expect_fail "--side-by-side not currently implemented (bug # 219933)" 10729d65f1cSEnji Cooper 10829d65f1cSEnji Cooper atf_check -o save:A printf "A\nB\nC\n" 10929d65f1cSEnji Cooper atf_check -o save:B printf "D\nB\nE\n" 11029d65f1cSEnji Cooper 11129d65f1cSEnji Cooper exp_output="A[[:space:]]+|[[:space:]]+D\nB[[:space:]]+B\nC[[:space:]]+|[[:space:]]+E" 11229d65f1cSEnji Cooper exp_output_suppressed="A[[:space:]]+|[[:space:]]+D\nC[[:space:]]+|[[:space:]]+E" 11329d65f1cSEnji Cooper 11429d65f1cSEnji Cooper atf_check -o match:"$exp_output" -s exit:1 \ 11529d65f1cSEnji Cooper diff --side-by-side A B 11629d65f1cSEnji Cooper atf_check -o match:"$exp_output" -s exit:1 \ 11729d65f1cSEnji Cooper diff -y A B 11829d65f1cSEnji Cooper atf_check -o match:"$exp_output_suppressed" -s exit:1 \ 11929d65f1cSEnji Cooper diff -y --suppress-common-lines A B 12029d65f1cSEnji Cooper atf_check -o match:"$exp_output_suppressed" -s exit:1 \ 12129d65f1cSEnji Cooper diff -W 65 -y --suppress-common-lines A B 12229d65f1cSEnji Cooper} 12329d65f1cSEnji Cooper 1244574a545SEnji Cooperbrief_format_body() 1254574a545SEnji Cooper{ 1264574a545SEnji Cooper atf_check mkdir A B 1274574a545SEnji Cooper 1284574a545SEnji Cooper atf_check -x "echo 1 > A/test-file" 1294574a545SEnji Cooper atf_check -x "echo 2 > B/test-file" 1304574a545SEnji Cooper 1314574a545SEnji Cooper atf_check cp -Rf A C 1324017abe2SEnji Cooper atf_check cp -Rf A D 1334017abe2SEnji Cooper 1344017abe2SEnji Cooper atf_check -x "echo 3 > D/another-test-file" 1354574a545SEnji Cooper 1364574a545SEnji Cooper atf_check \ 1374574a545SEnji Cooper -s exit:1 \ 1384574a545SEnji Cooper -o inline:"Files A/test-file and B/test-file differ\n" \ 1394017abe2SEnji Cooper diff -rq A B 1404574a545SEnji Cooper 1414017abe2SEnji Cooper atf_check diff -rq A C 1424017abe2SEnji Cooper 1434017abe2SEnji Cooper atf_check \ 1444017abe2SEnji Cooper -s exit:1 \ 1454017abe2SEnji Cooper -o inline:"Only in D: another-test-file\n" \ 1464017abe2SEnji Cooper diff -rq A D 1474017abe2SEnji Cooper 1484017abe2SEnji Cooper atf_check \ 1494017abe2SEnji Cooper -s exit:1 \ 1504017abe2SEnji Cooper -o inline:"Files A/another-test-file and D/another-test-file differ\n" \ 1514017abe2SEnji Cooper diff -Nrq A D 1524574a545SEnji Cooper} 1534574a545SEnji Cooper 154*e68edb8cSKyle EvansBflag_body() 155*e68edb8cSKyle Evans{ 156*e68edb8cSKyle Evans atf_check -x 'printf "A\nB\n" > A' 157*e68edb8cSKyle Evans atf_check -x 'printf "A\n\nB\n" > B' 158*e68edb8cSKyle Evans atf_check -x 'printf "A\n \nB\n" > C' 159*e68edb8cSKyle Evans atf_check -x 'printf "A\nC\nB\n" > D' 160*e68edb8cSKyle Evans atf_check -x 'printf "A\nB\nC\nD\nE\nF\nG\nH" > E' 161*e68edb8cSKyle Evans atf_check -x 'printf "A\n\nB\nC\nD\nE\nF\nX\nH" > F' 162*e68edb8cSKyle Evans 163*e68edb8cSKyle Evans atf_check -s exit:0 -o inline:"" diff -B A B 164*e68edb8cSKyle Evans atf_check -s exit:1 -o file:"$(atf_get_srcdir)/Bflag_C.out" diff -B A C 165*e68edb8cSKyle Evans atf_check -s exit:1 -o file:"$(atf_get_srcdir)/Bflag_D.out" diff -B A D 166*e68edb8cSKyle Evans atf_check -s exit:1 -o file:"$(atf_get_srcdir)/Bflag_F.out" diff -B E F 167*e68edb8cSKyle Evans} 168*e68edb8cSKyle Evans 169458cbf0aSEnji Cooperatf_init_test_cases() 170458cbf0aSEnji Cooper{ 171458cbf0aSEnji Cooper atf_add_test_case simple 172458cbf0aSEnji Cooper atf_add_test_case unified 17358cf4d86SJilles Tjoelker atf_add_test_case header 174385a67dcSJilles Tjoelker atf_add_test_case header_ns 17505d06ecaSBaptiste Daroussin atf_add_test_case ifdef 176fddcb7b8SBaptiste Daroussin atf_add_test_case group_format 17729d65f1cSEnji Cooper atf_add_test_case side_by_side 1784574a545SEnji Cooper atf_add_test_case brief_format 1799977c7b5SXin LI atf_add_test_case b230049 180*e68edb8cSKyle Evans atf_add_test_case Bflag 181458cbf0aSEnji Cooper} 182