Module Name:    src
Committed By:   christos
Date:           Sun Mar  8 17:21:52 UTC 2020

Modified Files:
        src/tests/usr.bin/config: Makefile t_config.sh
Added Files:
        src/tests/usr.bin/config: d_ifdef

Log Message:
Add an ifdef test


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/usr.bin/config/Makefile
cvs rdiff -u -r0 -r1.1 src/tests/usr.bin/config/d_ifdef
cvs rdiff -u -r1.8 -r1.9 src/tests/usr.bin/config/t_config.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/usr.bin/config/Makefile
diff -u src/tests/usr.bin/config/Makefile:1.2 src/tests/usr.bin/config/Makefile:1.3
--- src/tests/usr.bin/config/Makefile:1.2	Wed Oct 29 12:24:32 2014
+++ src/tests/usr.bin/config/Makefile	Sun Mar  8 13:21:52 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.2 2014/10/29 16:24:32 uebayasi Exp $
+# $NetBSD: Makefile,v 1.3 2020/03/08 17:21:52 christos Exp $
 
 SUBDIR=			support
 
@@ -12,6 +12,7 @@ TESTS_SH=		t_config
 
 FILESDIR=		${TESTSDIR}
 FILES=			d_deffs_redef
+FILES+=			d_ifdef
 FILES+=			d_loop
 FILES+=			d_loop2
 FILES+=			d_min

Index: src/tests/usr.bin/config/t_config.sh
diff -u src/tests/usr.bin/config/t_config.sh:1.8 src/tests/usr.bin/config/t_config.sh:1.9
--- src/tests/usr.bin/config/t_config.sh:1.8	Sat Aug 27 08:08:14 2016
+++ src/tests/usr.bin/config/t_config.sh	Sun Mar  8 13:21:52 2020
@@ -1,4 +1,4 @@
-# $NetBSD: t_config.sh,v 1.8 2016/08/27 12:08:14 christos Exp $
+# $NetBSD: t_config.sh,v 1.9 2020/03/08 17:21:52 christos Exp $
 #
 # Copyright (c) 2008, 2010 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -260,6 +260,45 @@ min_body() {
 	test_output min
 }
 
+# Check ifdef supper
+test_case ifdef pass "ifdef config"
+check_ifdef_files()
+{
+	test -e Makefile &&
+	test -e config_file.h &&
+	test -e config_time.src &&
+	test -e ioconf.c &&
+	test -e ioconf.h &&
+	test -e locators.h &&
+	test -e swapregress.c &&
+	test -h machine &&
+	test -h regress &&
+	:
+}
+
+check_ifdef_makefile()
+{
+	local f=Makefile
+	local e='-DOK1_1  -DOK2_1  -DOK2_2  -DOK3_1  -DOK3_2  -DOK3_3  -DOK3_4  -DOK3_5  -DMAXUSERS="4"'
+	local r
+	r=$(make -f Makefile -V IDENT)
+	if [ "$r" != "$e" ]; then
+		echo "Expected: '$e'"
+		echo "Result: '$r'"
+		return 1
+	fi
+}
+
+check_ifdef()
+{
+	check_ifdef_files &&
+	check_ifdef_makefile &&
+	:
+}
+ifdef_body() {
+	test_output ifdef
+}
+
 atf_init_test_cases()
 {
 	atf_add_test_case shadow_instance
@@ -275,4 +314,5 @@ atf_init_test_cases()
 	atf_add_test_case no_select
 	atf_add_test_case devi
 	atf_add_test_case min
+	atf_add_test_case ifdef
 }

Added files:

Index: src/tests/usr.bin/config/d_ifdef
diff -u /dev/null src/tests/usr.bin/config/d_ifdef:1.1
--- /dev/null	Sun Mar  8 13:21:52 2020
+++ src/tests/usr.bin/config/d_ifdef	Sun Mar  8 13:21:52 2020
@@ -0,0 +1,52 @@
+include "arch/regress/conf/std.regress"
+maxusers 4
+
+define TRUE
+ifdef TRUE
+options OK1_1
+elifdef FALSE
+options BAD1_1
+elifdef TRUE
+options BAD1_2
+else
+options BAD1_3
+endif
+
+ifdef FALSE
+options BAD2_1
+elifdef TRUE
+ifdef FALSE
+options BAD2_2
+elifdef TRUE
+options OK2_1
+else
+options BAD2_3
+endif
+options OK2_2
+endif
+
+ifdef FALSE
+options BAD3_1
+elifdef TRUE
+ifdef FALSE
+options BAD3_2
+else
+options OK3_1
+ifdef TRUE
+ifdef FALSE
+options BAD3_3
+elifdef TRUE
+options OK3_2
+endif
+options OK3_3
+elifdef TRUE
+options BAD3_4
+else
+options BAD3_5
+endif
+options OK3_4
+endif
+options OK3_5
+endif
+
+config regress root on ?

Reply via email to