Module Name:    src
Committed By:   christos
Date:           Sun Oct 11 17:17:39 UTC 2020

Modified Files:
        src/tests/games: t_factor.sh

Log Message:
Add tests for h and x flags


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/tests/games/t_factor.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/games/t_factor.sh
diff -u src/tests/games/t_factor.sh:1.9 src/tests/games/t_factor.sh:1.10
--- src/tests/games/t_factor.sh:1.9	Mon Jun 27 01:29:32 2016
+++ src/tests/games/t_factor.sh	Sun Oct 11 13:17:39 2020
@@ -1,4 +1,4 @@
-# $NetBSD: t_factor.sh,v 1.9 2016/06/27 05:29:32 pgoyette Exp $
+# $NetBSD: t_factor.sh,v 1.10 2020/10/11 17:17:39 christos Exp $
 #
 # Copyright (c) 2007, 2008, 2009 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -26,12 +26,12 @@
 #
 
 expect() {
-	echo "${2}" >expout
+	echo "${3}" >expout
 	ncrypt=$( ldd /usr/games/factor | grep -c -- -lcrypt )
 	if [ "X$3" != "X" -a $ncrypt -eq 0 ] ; then 
 		atf_skip "crypto needed for huge non-prime factors - PR bin/23663"
 	fi
-	atf_check -s eq:0 -o file:expout -e empty /usr/games/factor ${1}
+	atf_check -s eq:0 -o file:expout -e empty /usr/games/factor ${1} ${2}
 }
 
 atf_test_case overflow1
@@ -40,7 +40,7 @@ overflow1_head() {
 	atf_set "require.progs" "/usr/games/factor"
 }
 overflow1_body() {
-	expect '8675309' '8675309: 8675309'
+	expect "" '8675309' '8675309: 8675309'
 }
 
 atf_test_case overflow2
@@ -49,7 +49,7 @@ overflow2_head() {
 	atf_set "require.progs" "/usr/games/factor"
 }
 overflow2_body() {
-	expect '6172538568' '6172538568: 2 2 2 3 7 17 2161253'
+	expect "" '6172538568' '6172538568: 2 2 2 3 7 17 2161253'
 }
 
 atf_test_case loop1
@@ -59,7 +59,7 @@ loop1_head() {
 	atf_set "require.progs" "/usr/games/factor"
 }
 loop1_body() {
-	expect '2147483647111311' '2147483647111311: 3 3 3 131 607148331103'
+	expect "" '2147483647111311' '2147483647111311: 3 3 3 131 607148331103'
 }
 
 atf_test_case loop2
@@ -69,7 +69,85 @@ loop2_head() {
 	atf_set "require.progs" "/usr/games/factor"
 }
 loop2_body() {
-	expect '99999999999991' '99999999999991: 7 13 769231 1428571' Need_Crypto
+	expect "" '99999999999991' '99999999999991: 7 13 769231 1428571' Need_Crypto
+}
+
+
+atf_test_case h_overflow1
+h_overflow1_head() {
+	atf_set "descr" "Tests for h_overflow conditions"
+	atf_set "require.progs" "/usr/games/factor"
+}
+h_overflow1_body() {
+	expect -h '8675309' '8675309: 8675309'
+}
+
+atf_test_case h_overflow2
+h_overflow2_head() {
+	atf_set "descr" "Tests for h_overflow conditions"
+	atf_set "require.progs" "/usr/games/factor"
+}
+h_overflow2_body() {
+	expect -h '6172538568' '6172538568: 2^3 3 7 17 2161253'
+}
+
+atf_test_case h_loop1
+h_loop1_head() {
+	atf_set "descr" "Tests some cases that once locked the program" \
+	                "in an infinite h_loop"
+	atf_set "require.progs" "/usr/games/factor"
+}
+h_loop1_body() {
+	expect -h '2147483647111311' '2147483647111311: 3^3 131 607148331103'
+}
+
+atf_test_case h_loop2
+h_loop2_head() {
+	atf_set "descr" "Tests some cases that once locked the program" \
+	                "in an infinite h_loop"
+	atf_set "require.progs" "/usr/games/factor"
+}
+h_loop2_body() {
+	expect -h '99999999999991' '99999999999991: 7 13 769231 1428571' Need_Crypto
+}
+
+
+atf_test_case hx_overflow1
+hx_overflow1_head() {
+	atf_set "descr" "Tests for hx_overflow conditions"
+	atf_set "require.progs" "/usr/games/factor"
+}
+hx_overflow1_body() {
+	expect -hx '8675309' '0x845FED: 0x845FED'
+}
+
+atf_test_case hx_overflow2
+hx_overflow2_head() {
+	atf_set "descr" "Tests for hx_overflow conditions"
+	atf_set "require.progs" "/usr/games/factor"
+}
+hx_overflow2_body() {
+	expect -hx '6172538568' '0x16FE976C8: 0x2^3 0x3 0x7 0x11 0x20FA65'
+}
+
+atf_test_case hx_loop1
+hx_loop1_head() {
+	atf_set "descr" "Tests some cases that once locked the program" \
+	                "in an infinite hx_loop"
+	atf_set "require.progs" "/usr/games/factor"
+}
+hx_loop1_body() {
+	expect -hx '2147483647111311' '0x7A11FFFF2708F: 0x3^3 0x83 0x8D5CDC505F'
+}
+
+atf_test_case hx_loop2
+hx_loop2_head() {
+	atf_set "descr" "Tests some cases that once locked the program" \
+	                "in an infinite hx_loop"
+	atf_set "require.progs" "/usr/games/factor"
+}
+hx_loop2_body() {
+	expect -hx '99999999999991' '0x5AF3107A3FF7: 0x7 0xd 0xBBCCF 0x15CC5B' Need_Crypto
 }
 
 atf_init_test_cases()
@@ -78,4 +156,14 @@ atf_init_test_cases()
 	atf_add_test_case overflow2
 	atf_add_test_case loop1
 	atf_add_test_case loop2
+
+	atf_add_test_case h_overflow1
+	atf_add_test_case h_overflow2
+	atf_add_test_case h_loop1
+	atf_add_test_case h_loop2
+
+	atf_add_test_case hx_overflow1
+	atf_add_test_case hx_overflow2
+	atf_add_test_case hx_loop1
+	atf_add_test_case hx_loop2
 }

Reply via email to