linux/scripts/kconfig
Masahiro Yamada 3e4888c2e3 kconfig: tests: test randconfig for choice in choice
Commit 3b9a19e089 ("kconfig: loop as long as we changed some symbols
in randconfig") fixed randconfig where a choice contains a sub-choice.
Prior to that commit, the sub-choice values were not set.

I am not sure whether this is an intended feature or just something
people discovered works, but it is used in the real world;
drivers/usb/gadget/legacy/Kconfig is source'd in a choice context,
then creates a sub-choice in it.

For the test case in this commit, there are 3 possible results.

Case 1:
  CONFIG_A=y
  # CONFIG_B is not set

Case 2:
  # CONFIG_A is not set
  CONFIG_B=y
  CONFIG_C=y
  # CONFIG_D is not set

Case 3:
  # CONFIG_A is not set
  CONFIG_B=y
  # CONFIG_C is not set
  CONFIG_D=y
  CONFIG_E=y

So, this test iterates several times, and checks if the result is
either of the three.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Ulf Magnusson <ulfalizer@gmail.com>
2018-03-26 02:04:04 +09:00
..
lxdialog kconfig: Update ncurses package names for menuconfig 2018-03-02 09:20:57 +09:00
tests kconfig: tests: test randconfig for choice in choice 2018-03-26 02:04:04 +09:00
.gitignore kconfig: remove 'config*' pattern from .gitignnore 2018-02-09 04:10:09 +09:00
check.sh License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
conf.c kconfig: rename silentoldconfig to syncconfig 2018-03-26 02:04:00 +09:00
confdata.c kconfig: add xstrdup() helper 2018-03-02 00:26:47 +09:00
expr.c kconfig: Print reverse dependencies in groups 2018-03-26 02:03:58 +09:00
expr.h kconfig: Print reverse dependencies in groups 2018-03-26 02:03:58 +09:00
gconf.c gconfig: remove misleading parentheses around a condition 2017-03-22 02:56:33 +09:00
gconf.glade scripts/kconfig/gconf.glade Update broken web addresses. 2010-09-17 16:54:42 +02:00
images.c
kconf_id.c kconfig: drop 'boolean' keyword 2018-01-22 00:49:29 +09:00
kxgettext.c kconfig: add xstrdup() helper 2018-03-02 00:26:47 +09:00
list.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lkc_proto.h kconfig: remove const qualifier from sym_expand_string_value() 2018-02-10 11:31:49 +09:00
lkc.h kconfig: add xstrdup() helper 2018-03-02 00:26:47 +09:00
Makefile kconfig: tests: add framework for Kconfig unit testing 2018-03-26 02:04:01 +09:00
mconf.c kconfig: drop 'boolean' keyword 2018-01-22 00:49:29 +09:00
menu.c kconfig: Print reverse dependencies in groups 2018-03-26 02:03:58 +09:00
merge_config.sh kconfig/merge_config.sh: Accept a single file 2015-10-14 16:19:37 +02:00
nconf.c kconfig: fix sparse warnings in nconfig 2017-06-23 06:00:52 +09:00
nconf.gui.c kconfig: add xrealloc() helper 2018-02-10 11:26:04 +09:00
nconf.h scripts/kconfig/nconf: dynamically alloc dialog_input_result 2011-09-09 14:40:08 +02:00
POTFILES.in kconfig: gettext support for lxdialog 2008-01-28 23:14:39 +01:00
qconf.cc xconfig: fix missing suboption and help panels on first run 2016-12-11 21:40:54 +01:00
qconf.h Port xconfig to Qt5 - Source format. 2015-10-14 14:59:03 +02:00
streamline_config.pl scripts: Switch to more portable Perl shebang 2017-05-14 11:20:44 +09:00
symbol.c kconfig: only write '# CONFIG_FOO is not set' for visible symbols 2018-03-26 02:03:58 +09:00
util.c kconfig: add xstrdup() helper 2018-03-02 00:26:47 +09:00
zconf.l kconfig: fix line number in recursive inclusion error message 2018-03-03 00:44:47 +09:00
zconf.y kconfig: Don't leak choice names during parsing 2018-03-02 09:20:55 +09:00